├── .editorconfig ├── .gitattributes ├── .githooks ├── pre-commit └── pre-push ├── .github ├── ISSUE_TEMPLATE │ ├── bug.yaml │ ├── config.yml │ └── feature.yaml ├── dependabot.yml ├── release.yml ├── semantic.yml └── workflows │ ├── generate.yml │ ├── main.yml │ ├── release.yaml │ └── tag_release.yaml ├── .gitignore ├── .golangci.yml ├── .goreleaser.yaml ├── CODEOWNERS ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── README.md ├── _template ├── .azure-pipelines.yml ├── .dockerignore ├── .editorconfig ├── .githooks │ └── pre-push ├── .github │ └── workflows │ │ ├── main.yml │ │ └── semgrep.yml ├── .gitignore ├── .gitlab-ci.yml ├── .golangci.yml ├── CODEOWNERS ├── Dockerfile ├── LICENSE ├── Makefile ├── README.md ├── api │ ├── openapi.v1.yml │ └── proto │ │ ├── buf.yaml │ │ └── {{.Base.appName}} │ │ └── v1 │ │ └── {{.Base.appName}}.proto ├── buf.gen.yaml ├── buf.work.yaml ├── cmd │ └── {{.Base.appName}} │ │ └── main.go ├── internal │ ├── README.md │ └── log │ │ ├── access_log.go │ │ ├── access_log_test.go │ │ ├── context.go │ │ ├── context_test.go │ │ ├── logger.go │ │ ├── logger_option.go │ │ └── logger_test.go ├── pkg │ └── README.md └── tools.go ├── cmd ├── gt │ ├── main.go │ ├── new.go │ └── version.go └── options2md │ └── main.go ├── config ├── version.go └── version.txt ├── docs ├── architecture │ ├── 0001-record-architecture-decisions.md │ ├── 0002-build-own-cli.md │ └── 0003-go-to-define-options.md ├── gotemplate.png ├── options.md └── release.md ├── embed.go ├── go.mod ├── go.sum ├── hack └── release.sh ├── pkg ├── colors │ └── colors.go ├── exec │ ├── command_group.go │ ├── command_group_test.go │ ├── runner.go │ └── runner_test.go ├── gocli │ ├── version.go │ └── version_test.go ├── gotemplate │ ├── gt.go │ ├── new.go │ ├── new_test.go │ ├── options.go │ ├── options_test.go │ ├── print.go │ ├── testdata │ │ └── values.yml │ ├── valuer.go │ ├── version.go │ └── version_test.go └── repos │ ├── releasetag.go │ └── releasetag_test.go ├── test_project_values ├── ci_case_0.yml ├── ci_case_1.yml ├── ci_case_2.yml ├── ci_case_3.yml ├── grpc_with_gateway.yml ├── grpc_without_gateway.yml ├── no_extentions.yml └── open_source.yml └── tools.go /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.gitattributes -------------------------------------------------------------------------------- /.githooks/pre-commit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.githooks/pre-commit -------------------------------------------------------------------------------- /.githooks/pre-push: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.githooks/pre-push -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.github/ISSUE_TEMPLATE/bug.yaml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: true 2 | 3 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.github/ISSUE_TEMPLATE/feature.yaml -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.github/release.yml -------------------------------------------------------------------------------- /.github/semantic.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.github/semantic.yml -------------------------------------------------------------------------------- /.github/workflows/generate.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.github/workflows/generate.yml -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.github/workflows/main.yml -------------------------------------------------------------------------------- /.github/workflows/release.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.github/workflows/release.yaml -------------------------------------------------------------------------------- /.github/workflows/tag_release.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.github/workflows/tag_release.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.gitignore -------------------------------------------------------------------------------- /.golangci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.golangci.yml -------------------------------------------------------------------------------- /.goreleaser.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/.goreleaser.yaml -------------------------------------------------------------------------------- /CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @SchwarzIT/go-template 2 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/README.md -------------------------------------------------------------------------------- /_template/.azure-pipelines.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/.azure-pipelines.yml -------------------------------------------------------------------------------- /_template/.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/.dockerignore -------------------------------------------------------------------------------- /_template/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/.editorconfig -------------------------------------------------------------------------------- /_template/.githooks/pre-push: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/.githooks/pre-push -------------------------------------------------------------------------------- /_template/.github/workflows/main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/.github/workflows/main.yml -------------------------------------------------------------------------------- /_template/.github/workflows/semgrep.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/.github/workflows/semgrep.yml -------------------------------------------------------------------------------- /_template/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/.gitignore -------------------------------------------------------------------------------- /_template/.gitlab-ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/.gitlab-ci.yml -------------------------------------------------------------------------------- /_template/.golangci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/.golangci.yml -------------------------------------------------------------------------------- /_template/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * {{ .Extensions.openSource.codeowner }} 2 | -------------------------------------------------------------------------------- /_template/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/Dockerfile -------------------------------------------------------------------------------- /_template/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/LICENSE -------------------------------------------------------------------------------- /_template/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/Makefile -------------------------------------------------------------------------------- /_template/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/README.md -------------------------------------------------------------------------------- /_template/api/openapi.v1.yml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /_template/api/proto/buf.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/api/proto/buf.yaml -------------------------------------------------------------------------------- /_template/api/proto/{{.Base.appName}}/v1/{{.Base.appName}}.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/api/proto/{{.Base.appName}}/v1/{{.Base.appName}}.proto -------------------------------------------------------------------------------- /_template/buf.gen.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/buf.gen.yaml -------------------------------------------------------------------------------- /_template/buf.work.yaml: -------------------------------------------------------------------------------- 1 | version: v1 2 | directories: 3 | - api/proto 4 | -------------------------------------------------------------------------------- /_template/cmd/{{.Base.appName}}/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/cmd/{{.Base.appName}}/main.go -------------------------------------------------------------------------------- /_template/internal/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/internal/README.md -------------------------------------------------------------------------------- /_template/internal/log/access_log.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/internal/log/access_log.go -------------------------------------------------------------------------------- /_template/internal/log/access_log_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/internal/log/access_log_test.go -------------------------------------------------------------------------------- /_template/internal/log/context.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/internal/log/context.go -------------------------------------------------------------------------------- /_template/internal/log/context_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/internal/log/context_test.go -------------------------------------------------------------------------------- /_template/internal/log/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/internal/log/logger.go -------------------------------------------------------------------------------- /_template/internal/log/logger_option.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/internal/log/logger_option.go -------------------------------------------------------------------------------- /_template/internal/log/logger_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/internal/log/logger_test.go -------------------------------------------------------------------------------- /_template/pkg/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/pkg/README.md -------------------------------------------------------------------------------- /_template/tools.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/_template/tools.go -------------------------------------------------------------------------------- /cmd/gt/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/cmd/gt/main.go -------------------------------------------------------------------------------- /cmd/gt/new.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/cmd/gt/new.go -------------------------------------------------------------------------------- /cmd/gt/version.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/cmd/gt/version.go -------------------------------------------------------------------------------- /cmd/options2md/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/cmd/options2md/main.go -------------------------------------------------------------------------------- /config/version.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/config/version.go -------------------------------------------------------------------------------- /config/version.txt: -------------------------------------------------------------------------------- 1 | 0.5.0 2 | -------------------------------------------------------------------------------- /docs/architecture/0001-record-architecture-decisions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/docs/architecture/0001-record-architecture-decisions.md -------------------------------------------------------------------------------- /docs/architecture/0002-build-own-cli.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/docs/architecture/0002-build-own-cli.md -------------------------------------------------------------------------------- /docs/architecture/0003-go-to-define-options.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/docs/architecture/0003-go-to-define-options.md -------------------------------------------------------------------------------- /docs/gotemplate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/docs/gotemplate.png -------------------------------------------------------------------------------- /docs/options.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/docs/options.md -------------------------------------------------------------------------------- /docs/release.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/docs/release.md -------------------------------------------------------------------------------- /embed.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/embed.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/go.sum -------------------------------------------------------------------------------- /hack/release.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/hack/release.sh -------------------------------------------------------------------------------- /pkg/colors/colors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/colors/colors.go -------------------------------------------------------------------------------- /pkg/exec/command_group.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/exec/command_group.go -------------------------------------------------------------------------------- /pkg/exec/command_group_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/exec/command_group_test.go -------------------------------------------------------------------------------- /pkg/exec/runner.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/exec/runner.go -------------------------------------------------------------------------------- /pkg/exec/runner_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/exec/runner_test.go -------------------------------------------------------------------------------- /pkg/gocli/version.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gocli/version.go -------------------------------------------------------------------------------- /pkg/gocli/version_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gocli/version_test.go -------------------------------------------------------------------------------- /pkg/gotemplate/gt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gotemplate/gt.go -------------------------------------------------------------------------------- /pkg/gotemplate/new.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gotemplate/new.go -------------------------------------------------------------------------------- /pkg/gotemplate/new_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gotemplate/new_test.go -------------------------------------------------------------------------------- /pkg/gotemplate/options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gotemplate/options.go -------------------------------------------------------------------------------- /pkg/gotemplate/options_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gotemplate/options_test.go -------------------------------------------------------------------------------- /pkg/gotemplate/print.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gotemplate/print.go -------------------------------------------------------------------------------- /pkg/gotemplate/testdata/values.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gotemplate/testdata/values.yml -------------------------------------------------------------------------------- /pkg/gotemplate/valuer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gotemplate/valuer.go -------------------------------------------------------------------------------- /pkg/gotemplate/version.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gotemplate/version.go -------------------------------------------------------------------------------- /pkg/gotemplate/version_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/gotemplate/version_test.go -------------------------------------------------------------------------------- /pkg/repos/releasetag.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/repos/releasetag.go -------------------------------------------------------------------------------- /pkg/repos/releasetag_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/pkg/repos/releasetag_test.go -------------------------------------------------------------------------------- /test_project_values/ci_case_0.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/test_project_values/ci_case_0.yml -------------------------------------------------------------------------------- /test_project_values/ci_case_1.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/test_project_values/ci_case_1.yml -------------------------------------------------------------------------------- /test_project_values/ci_case_2.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/test_project_values/ci_case_2.yml -------------------------------------------------------------------------------- /test_project_values/ci_case_3.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/test_project_values/ci_case_3.yml -------------------------------------------------------------------------------- /test_project_values/grpc_with_gateway.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/test_project_values/grpc_with_gateway.yml -------------------------------------------------------------------------------- /test_project_values/grpc_without_gateway.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/test_project_values/grpc_without_gateway.yml -------------------------------------------------------------------------------- /test_project_values/no_extentions.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/test_project_values/no_extentions.yml -------------------------------------------------------------------------------- /test_project_values/open_source.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/test_project_values/open_source.yml -------------------------------------------------------------------------------- /tools.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SchwarzIT/go-template/HEAD/tools.go --------------------------------------------------------------------------------