diff --git a/.github/workflows/pull_request.yaml b/.github/workflows/pull_request.yaml index ff42092..f6688b8 100644 --- a/.github/workflows/pull_request.yaml +++ b/.github/workflows/pull_request.yaml @@ -1,5 +1,5 @@ -name: Go -on: +name: Review & Build +on: push: branches-ignore: master pull_request: @@ -11,55 +11,68 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@master + - name: Use Node.js uses: actions/setup-node@v1 with: node-version: '12.x' - - name: npm install dependencies - run: npm install --prefix ui - - name: npm run build - run: npm run --prefix ui build - - name: bindfs - uses: "cedrickring/golang-action@1.4.1" + + - name: npm install and build + run: | + npm install --prefix ui + npm run --prefix ui build + + - name: Get and install bindfs + uses: "cedrickring/golang-action@1.5.2" with: args: go get -u github.com/go-bindata/go-bindata/... && go get -u github.com/elazarl/go-bindata-assetfs/... && go-bindata-assetfs -prefix ui/dist ui/dist + - name: Check styling error - uses: "cedrickring/golang-action@1.4.1" + uses: "cedrickring/golang-action@1.5.2" with: args: go get -u golang.org/x/lint/golint; golint -set_exit_status main.go server.go config.go + - name: Check missing error check - uses: "cedrickring/golang-action@1.4.1" + uses: "cedrickring/golang-action@1.5.2" with: args: go get -u github.com/kisielk/errcheck; errcheck ./... + - name: Check suspicious constructs (1) - uses: "cedrickring/golang-action@1.4.1" + uses: "cedrickring/golang-action@1.5.2" with: args: go get honnef.co/go/tools/cmd/staticcheck; staticcheck -checks all,-ST1003,-U1000,-ST1005 ./... # have to disable ST1003,U1000,ST1005 due to the generated code + - name: Check suspicious constructs (2) - uses: "cedrickring/golang-action@1.4.1" + uses: "cedrickring/golang-action@1.5.2" with: args: go vet ./... + - name: Check security issues with gosec - uses: "cedrickring/golang-action@1.4.1" + uses: "cedrickring/golang-action@1.5.2" with: # TODO: remove `-exclude=G110` once https://github.com/go-bindata/go-bindata/pull/50 is merged and released args: go get github.com/securego/gosec/cmd/gosec; gosec -exclude=G110 ./... # https://github.com/securego/gosec + build: + name: Build code runs-on: ubuntu-latest steps: - uses: actions/checkout@master - - name: free disk space + + - name: Clean out old builds from disk run: | sudo swapoff -a sudo rm -f /swapfile sudo apt clean docker rmi $(docker image ls -aq) df -h + - name: Install buildah run: | sudo apt-get install -qq -y software-properties-common sudo add-apt-repository -y ppa:projectatomic/ppa sudo apt-get update -qq sudo apt-get -qq -y install buildah + - name: Build the Docker image run: buildah bud --format=docker --layers -f Dockerfile .