name: Build bot on: [push, pull_request] jobs: build-linux: runs-on: ubuntu-latest steps: - name: Check out the repo uses: actions/checkout@v2 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 - name: Login to DockerHub if: github.repository == 'erebe/wstunnel' uses: docker/login-action@v1 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.CR_PAT }} # - name: wstunnel-builder-cache # id: docker_build_wstunnel-cache # uses: docker/build-push-action@v2 # with: # push: true # tags: ghcr.io/erebe/wstunnel:builder-cache # target: builder-cache - name: wstunnel id: docker_build_wstunnel uses: docker/build-push-action@v2 with: push: ${{ github.repository == 'erebe/wstunnel' && github.ref == 'refs/heads/master' }} tags: ghcr.io/erebe/wstunnel:latest - name: extract Artifact run: | docker cp $(docker create ghcr.io/erebe/wstunnel:latest /bin/sh -c 'sleep 5000'):/ . ./wstunnel - uses: actions/upload-artifact@v1 with: name: wstunnel-linux-x64 path: wstunnel build-windows: runs-on: windows-latest steps: - uses: actions/checkout@v2 # - name: Install stack # run: | # curl -sSL https://get.haskellstack.org/ | sh - name: Setup GHC run: | stack setup - name: Build run: | stack install - uses: actions/upload-artifact@v1 with: name: wstunnel-windows-x64.exe path: C:\Users\runneradmin\AppData\Roaming\local\bin\wstunnel.exe build-macos: runs-on: macos-latest steps: - uses: actions/checkout@v2 # - name: Install stack # run: | # curl -sSL https://get.haskellstack.org/ | sh - name: Setup GHC run: | stack setup - name: Build run: | stack install - uses: actions/upload-artifact@v1 with: name: wstunnel-macos path: /Users/runner/.local/bin/wstunnel