Skip to content

Latest commit

 

History

History
40 lines (30 loc) · 2.15 KB

options.md

File metadata and controls

40 lines (30 loc) · 2.15 KB

Options

The following sections describe all options that are currently available for go/template for templating. The options are divided into base options and extension options. Base options are needed for the minimal base template and are mandatory in any case. The extension options on the other hand enable optional features in the template such as gRPC support or open source lincenses.

Base

Name Description
projectName Name of the project
projectSlug Technical name of the project for folders and names. This will also be used as output directory.
projectDescription Description of the project used in the README.
appName The name of the binary that you want to create.
Could be the same as your "projectSlug" but since Go supports multiple apps in one repo it could also be sth. else.
For example if your project is for some API there could be one app for the server and one CLI client.
moduleName The name of the Go module defined in the "go.mod" file.
This is used if you want to "go get" the module.
Please be aware that this depends on your version control system.
The default points to "github.com" but for devops for example it would look sth. like this "dev.azure.com/org/project/repo.git"

Extensions

openSource

Name Description
license Set an OpenSource license.
Unsure which to pick? Checkout Github's https://choosealicense.com/
Options:
0: Add no license
1: MIT License
2: Apache License 2.0
3: GNU AGPLv3
4: GNU GPLv3
5: GNU LGPLv3
6: Mozilla Public License 2.0
7: Boost Software License 1.0
8: The Unlicense
author License author
codeowner Set the codeowner of the project

ci

Name Description
provider Set an CI pipeline provider integration
Options:
0: No CI
1: Github
2: Gitlab
3: Azure DevOps

grpc

Name Description
base Base configuration for gRPC
grpcGateway Extend gRPC configuration with grpc-gateway