Semaphore/CONTRIBUTING.md
Matej Kramny 80538908a8 update contributing.md
- fix ./make.sh watch
- rename .jade -> .pug
2017-02-22 03:51:23 -08:00

1.6 KiB

Pull Requests

When creating a pull-request you should:

  • Open an issue first: Confirm that the change or feature will be accepted
  • gofmt and vet the code: Use gofmt, golint, govet and goimports to clean up your code.
  • Update api documentation: If your pull-request adding/modifying an API request, make sure you update the swagger documentation (api-docs.yml)

Installation in a development environment

  • Install Go
  • Install MySQL / MariaDB
  • Install node.js
  1. Set up the gopath
mkdir -p $GOPATH/src/github.com/ansible-semaphore && cd $GOPATH/src/github.com/ansible-semaphore
  1. Clone semaphore (with submodules)
git clone --recursive git@github.com:ansible-semaphore/semaphore.git && cd semaphore
  1. Install dev dependencies
go get ./... github.com/cespare/reflex github.com/jteeuwen/go-bindata/...
npm install async
npm install -g nodemon pug-cli less
  1. Set up config, database & run migrations
cat <<EOT >> config.json
{
    "mysql": {
        "host": "127.0.0.1:3306",
        "user": "root",
        "pass": "",
        "name": "semaphore"
    },
    "port": ":3000"
}
EOT

echo "create database semaphore;" | mysql -uroot -p
go run cli/main.go -config ./config.json -migrate

Now it's ready to start.. Run ./make.sh watch

  • Watches js files in public/js/* and compiles into a bundle
  • Watches css files in public/css/* and compiles into css code
  • Watches pug files in public/html/* and compiles them into html
  • Watches go files and recompiles the binary
  • Open localhost:3000