Art by Kresimir Jelusic
🔑 Vault
Vault performs Sign in
and Sign up
operations in a distributed services architecture.
Development
Clone this repo at ~/krakenlab/
path.
gvm:
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
go1.13.1
gvm install go1.13.1
docker & docker-compose:
sudo pacman -Sy
sudo pacman -S docker docker-compose
I suggest you use vscode for this project!
We use the go module system.
That way, you can get all packages when building or running the test suite.
To add new packages, just include it directly in the source code and perform these steps that this system will automatically get the new packages.
To add to vendor a new package added in go.mod
, run go mod vendor
.
Running tests in docker-compose:
docker-compose up --build -d
docker-compose exec vault bash
go test ./...
Running tests out docker-compose:
docker-compose up --build -d
go test ./...
Building the source code:
go build -o vault main.go
Deploy
Over docker-compose:
make migrate
docker-compose up --build
Over heroku:
heroku stack:set container -a $APP_NAME
Heroku and Lets Encrypt
Please read it!
Database
sqlite3
: /tmp/gorm.db
postgres
: host=myhost port=myport user=gorm dbname=gorm password=mypassword sslmode=disable
mysql
: user:password@/dbname?charset=utf8&parseTime=True&loc=Local
mssql
: sqlserver://username:password@localhost:1433?database=dbname