name: Deploy Budibase Single Container Image to DockerHub on: workflow_dispatch: env: BASE_BRANCH: ${{ github.event.pull_request.base.ref}} BRANCH: ${{ github.event.pull_request.head.ref }} CI: true PERSONAL_ACCESS_TOKEN : ${{ secrets.PERSONAL_ACCESS_TOKEN }} REGISTRY_URL: registry.hub.docker.com jobs: build: name: "build" runs-on: ubuntu-latest strategy: matrix: node-version: [14.x] steps: - name: "Checkout" uses: actions/checkout@v2 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: node-version: ${{ matrix.node-version }} - name: Setup QEMU uses: docker/setup-qemu-action@v1 - name: Setup Docker Buildx id: buildx uses: docker/setup-buildx-action@v1 - name: Install Pro run: yarn install:pro $BRANCH $BASE_BRANCH - name: Run Yarn run: yarn - name: Run Yarn Bootstrap run: yarn bootstrap - name: Runt Yarn Lint run: yarn lint - name: Run Yarn Build run: yarn build:docker:pre - name: Login to Docker Hub uses: docker/login-action@v2 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_API_KEY }} - name: Get the latest release version id: version run: | release_version=$(cat lerna.json | jq -r '.version') echo $release_version echo "RELEASE_VERSION=$release_version" >> $GITHUB_ENV - name: Tag and release Budibase service docker image uses: docker/build-push-action@v2 with: context: . push: true platforms: linux/amd64,linux/arm64 tags: budibase/budibase,budibase/budibase:v${{ env.RELEASE_VERSION }} file: ./hosting/single/Dockerfile - name: Tag and release Budibase Azure App Service docker image uses: docker/build-push-action@v2 with: context: . push: true platforms: linux/amd64 build-args: TARGETBUILD=aas tags: budibase/budibase-aas,budibase/budibase-aas:v${{ env.RELEASE_VERSION }} file: ./hosting/single/Dockerfile