user-service

command module
v0.0.0-...-bfa56d4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 12, 2015 License: Apache-2.0 Imports: 10 Imported by: 0

README

User Microservice

Use this service to do the following.

  • Create a user with GitHub data.
  • Manage user data, including GitHub data.

Hacking

To get started with this service, you'll need to have some things set up beforehand.

Have these installed.

  • Make
  • Go
  • Docker

If you're on Mac, you can get these by running brew install go boot2docker; boot2docker will also require VirtualBox (brew cask install virtualbox). You'll also need to be able to cross-compile for 64-bit Linux: http://stackoverflow.com/questions/12168873/cross-compile-go-on-osx.

In order to make calls to GitHub, you'll need to obtain a GitHub client ID and secret (https://github.com/settings/applications). With those in hand, make a Dockerfile in ./dist.

FROM scratch
ENV GITHUB_CLIENT_ID someid
ENV GITHUB_CLIENT_SECRET somesecret
ADD user-service user-service
EXPOSE 8080
ENTRYPOINT ["/user-service"]

Ensure your $GOPATH is set up and $GOPATH/bin is on your $PATH. Then, you can run

make install

to get all the Go packages you'll need to build and execute the service. Use

make watch

to watch all Go source files and rebuild whenever one of those files changes. Test it by running curl.

curl <docker_host>:8080/users/ 2> /dev/null | python -m json.tool

Rationale

This build process might seem cumbersome, but surprisingly, the entire process is very quick. Additionally, your development image can be the exact same image that is used for production. Since the built Docker image is based on "scratch", the image is essentially the size of your service's binary.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL