name: Build run-name: ${{gitea.actor}} is deploying 🚀 on: release: types: [published] jobs: BuildUI: runs-on: osx steps: - name: Check out repository code uses: actions/checkout@v4 - name: Restoring Node Packages run: | cd source cd ticketUI yarn install --frozen-lockfile - name: Build run: | cd source cd ticketUI yarn run build - name: Saving build artifact uses: actions/upload-artifact@v3 with: name: ticketUI path: source/ticketUI/dist/ticket-ui BuildAPI: runs-on: osx steps: - name: Check out repository code uses: actions/checkout@v4 - name: Setting up .Net CLI uses: actions/setup-dotnet@v4 with: dotnet-version: '9.0.x' - name: Build API run: dotnet publish -c release -o artifacts/api /p:DebugType=None /p:DebugSymbols=false ./source/ticketAPI/ticketAPI.sln - name: Saving build artifact uses: actions/upload-artifact@v3 with: name: ticketAPI path: artifacts/api PublishUI: runs-on: osx needs: [BuildUI, BuildAPI] name: Publish UI Docker Image steps: - name: Check out repository code uses: actions/checkout@v4 - name: Getting Artifact uses: actions/download-artifact@v3 with: name: ticketUI path: source/ticketUI/dist/ticket-ui - name: Log in to Docker Hub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_PASSWORD }} - name: Set up QEMU uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Build and push image uses: docker/build-push-action@v6 with: context: . file: source/ticketUI/Dockerfile push: false tags: ${{ secrets.DOCKERHUB_USERNAME }}/ticket-ui:${{ github.ref_name }} PublishAPI: runs-on: osx needs: [BuildAPI, PublishUI] name: Publish API Docker Image steps: - name: Check out repository code uses: actions/checkout@v4 - name: Getting Artifact uses: actions/download-artifact@v3 with: name: ticketAPI path: artifacts/api - name: Log in to Docker Hub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_PASSWORD }} - name: Set up QEMU uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Build and push image uses: docker/build-push-action@v6 with: context: . file: source/ticketAPI/Dockerfile push: false tags: ${{ secrets.DOCKERHUB_USERNAME }}/ticket-api:${{ github.ref_name }}