Skip to content

MartinHeinz/go-project-blueprint

Folders and files

NameName
Last commit message
Last commit date

Latest commit

9b0b8ca · Jan 6, 2023

History

19 Commits
Sep 15, 2019
Sep 15, 2019
Sep 13, 2019
Sep 8, 2019
Sep 8, 2019
Sep 14, 2019
Sep 8, 2019
Oct 17, 2019
Jan 6, 2023
Sep 11, 2019
Sep 13, 2019
Sep 13, 2019
Sep 11, 2019
Sep 13, 2019

Repository files navigation

Blueprint/Boilerplate For Golang Projects

Build Status Maintainability Rating Test Coverage Go Report Card


If you find this useful, you can support me on Ko-Fi (Donations are always appreciated, but never required):

ko-fi

Blog Posts - More Information About This Repo

You can find more information about this project/repository and how to use it in following blog posts:

Setting Up

  • Replace All Occurrences of martinheinz/go-project-blueprint with your username repository name
  • Replace All Occurrences of blueprint with your desired image name

Adding New Libraries/Dependencies

go mod vendor

Using GitHub Registry

Create and Push:

docker login docker.pkg.github.com -u <USERNAME> -p <GITHUB_TOKEN>
docker build -t  docker.pkg.github.com/martinheinz/go-project-blueprint/blueprint:latest .
# make container
docker push docker.pkg.github.com/martinheinz/go-project-blueprint/blueprint:latest
# make push

Pull and Run:

docker pull docker.pkg.github.com/martinheinz/go-project-blueprint/blueprint:latest
docker run docker.pkg.github.com/martinheinz/go-project-blueprint/blueprint:latest

Setup new SonarCloud Project

  • 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 secure Field in .travis.yml with outputted string
    • Follow steps to populate your sonar-project.properties
    • Push
  • On Travis CI:
    • Set DOCKER_USERNAME
    • Set DOCKER_PASSWORD to Your GitHub Registry Token

Setup CodeClimate

  • 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