
# build
 > docker build --build-arg GITHUB_TOKEN=$GITHUB_TOKEN --target build -f build/Dockerfile -t billing-build .  
 docker build --build-arg GITHUB_TOKEN=$GITHUB_TOKEN --target test -f build/Dockerfile -t billing-test .  
 docker build --build-arg GITHUB_TOKEN=$GITHUB_TOKEN --target server -f build/Dockerfile -t billing-server .  
 
# Naming Rules

## Directories
1. lower case with underscore separating multiple words.

## Files

1. Go follows a convention where source files are all lower case with underscore separating multiple words.
2. Compound file names are separated with _
3. File names that begin with “.” or “_” are ignored by the go tool
4. Files with the suffix _test.go are only compiled and run by the go test tool.

## Functions and Methods
1. Use camel case, exported functions should start with uppercase:
> writeToDB // unexported, only visible within the package \
> WriteToDB // exported, visible within the package

## Constants
1. Constant should use all capital letters and use underscore _ to separate words.

## Variables
1. Generally, use relatively simple (short) name.
2. Consistent naming style should be used the entire source code

