name: Build Binaries on: pull_request: branches: - '*' env: GO_VERSION: 1.16 CGO_ENABLED: 0 PRE_TARGET: "" jobs: build-webui: runs-on: ubuntu-20.04 steps: - name: Check out code uses: actions/checkout@v2 with: fetch-depth: 0 - name: Build webui env: DOCKER_RUN_TRAEFIK: "" run: | make generate-webui tar czvf webui.tar.gz ./static/ - name: Artifact webui uses: actions/upload-artifact@v2 with: name: webui.tar.gz path: webui.tar.gz build: runs-on: ubuntu-20.04 needs: - build-webui defaults: run: working-directory: ${{ github.workspace }}/go/src/github.com/traefik/traefik steps: - name: Set up Go ${{ env.GO_VERSION }} uses: actions/setup-go@v2 with: go-version: ${{ env.GO_VERSION }} - name: Check out code uses: actions/checkout@v2 with: path: go/src/github.com/traefik/traefik fetch-depth: 0 - name: Cache Go modules uses: actions/cache@v2 with: path: | ~/go/pkg/mod ~/.cache/go-build ~/Library/Caches/go-build '%LocalAppData%\go-build' key: ${{ runner.os }}-build-go-${{ hashFiles('**/go.sum') }} restore-keys: ${{ runner.os }}-build-go- - name: Install gobindata run: | curl -fsSL -o $(go env GOPATH)/bin/go-bindata https://github.com/containous/go-bindata/releases/download/v1.0.0/go-bindata chmod +x $(go env GOPATH)/bin/go-bindata - name: Artifact webui uses: actions/download-artifact@v2 with: name: webui.tar.gz path: ${{ github.workspace }}/go/src/github.com/traefik/traefik - name: Untar webui run: tar xvf webui.tar.gz - name: Build for darwin env: DOCKER_RUN_TRAEFIK: "" run: GOOS=darwin GOARCH=amd64 make binary - name: Build for linux env: DOCKER_RUN_TRAEFIK: "" run: GOOS=linux GOARCH=amd64 make binary - name: Build for windows env: DOCKER_RUN_TRAEFIK: "" run: GOOS=windows GOARCH=amd64 make binary