You can find more information about this project/repository and how to use it in few blog post:
- Ultimate Setup for Your Next Golang Project
- Setting up GitHub Package Registry with Docker and Golang
- Replace All Occurrences of
webnator/capo-music-apiwith your username repository name - Replace All Occurrences of
capo-musicwith your desired image name
go mod vendorCreate and Push:
docker login docker.pkg.github.com -u <USERNAME> -p <GITHUB_TOKEN>
docker build -t docker.pkg.github.com/webnator/capo-music-api/capo-music:latest .
# make container
docker push docker.pkg.github.com/webnator/capo-music-api/capo-music:latest
# make pushPull and Run:
docker pull docker.pkg.github.com/webnator/capo-music-api/capo-music:latest
docker run -p 1234:1234 \
-e capo-music_DSN="postgres://<USER>:<PASSWORD>@<DOCKER_SERVICE/URL>:<PORT>/<DB>?sslmode=disable" \
docker.pkg.github.com/webnator/capo-music-api/capo-music:latest- On SonarCloud:
- Click Plus Sign in Upper Right Corner
- Analyze New Project
- Click GitHub app configuration link
- Configure SonarCloud
- Select Repository and Save
- Go Back to Analyze Project
- Tick Newly Added Repository
- Click Set Up
- Click Configure with Travis
- Copy the Command to Encrypt the Travis Token
- Run
travis encrypt --com <TOKEN_YOU_COPPIED> - Populate the
secureField in.travis.ymlwith outputted string - Follow steps to populate your
sonar-project.properties - Push
- On Travis CI:
- Set
DOCKER_USERNAME - Set
DOCKER_PASSWORDto Your GitHub Registry Token
- Set
- Go to https://codeclimate.com/github/repos/new
- Add Repository
- Go to Test Coverage Tab
- Copy Test Reporter ID
- Go to Travis and Open Settings for Your Repository
- Add Environment Variable: name:
CC_TEST_REPORTER_ID, value: Copied from CodeClimate
- Application uses gin-swagger.
- To generate/update docs use
swag init(frombackend/cmd/backend) - You can find generated docs in
docspackage
To view docs, navigate to http://localhost:1234/swagger/index.html or to http://localhost:1234/swagger/doc.json for raw JSON