diff --git a/.github/workflows/website-ue.yml b/.github/workflows/website-ue.yml deleted file mode 100644 index fd53161fc..000000000 --- a/.github/workflows/website-ue.yml +++ /dev/null @@ -1,66 +0,0 @@ -name: Website - -on: - push: - workflow_dispatch: - - schedule: - - cron: "0 4 * * *" - -permissions: - contents: read - pages: write - id-token: write - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: ${{ github.ref == 'refs/heads/main' }} - -env: - WOTB_SERVER: ${{ secrets.WOTB_SERVER }} - -jobs: - build: - name: Build - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v6 - with: - submodules: recursive - token: ${{ secrets.GH_TOKEN }} - - - uses: oven-sh/setup-bun@v2 - - - uses: actions/setup-node@v6 - with: - node-version: latest - - - uses: arduino/setup-protoc@v3 - with: - repo-token: ${{ secrets.GH_TOKEN }} - - - uses: actions/configure-pages@v5 - - - run: bun run setup - - - name: Build website - run: bun run build:website - - - name: Upload artifact - uses: actions/upload-pages-artifact@v4 - with: - path: dist/website - - deploy-github-pages: - if: ${{ github.ref == 'refs/heads/ue' && github.repository == 'blitzkit/host-beta' }} - name: Deploy to GitHub Pages - runs-on: ubuntu-latest - needs: build - environment: - name: Production - url: ${{ steps.deployment.outputs.page_url }} - - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 diff --git a/.github/workflows/website.yaml b/.github/workflows/website.yaml new file mode 100644 index 000000000..f4eee3cae --- /dev/null +++ b/.github/workflows/website.yaml @@ -0,0 +1,71 @@ +name: Website + +on: + push: + workflow_dispatch: + + schedule: + - cron: "0 4 * * *" + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.ref == 'refs/heads/main' }} + +env: + # blitz + WOTB_SERVER: ${{ secrets.WOTB_SERVER }} + WOTB_VERSION: ${{ secrets.WOTB_VERSION }} + + # google + GOOGLE_APPLICATION_CREDENTIALS: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }} + PUBLIC_GOOGLE_ANALYTICS_PROPERTY_ID: ${{ secrets.PUBLIC_GOOGLE_ANALYTICS_PROPERTY_ID }} + +jobs: + build: + name: Build chunk ${{ matrix.chunk }} + runs-on: ubuntu-latest + strategy: + matrix: + chunk: [pages, api] + + steps: + - name: Checkout + uses: actions/checkout@v6 + with: + submodules: recursive + token: ${{ secrets.GH_TOKEN }} + + - name: Set up Bun + uses: oven-sh/setup-bun@v2 + + - name: Set up Protoc + uses: arduino/setup-protoc@v3 + with: + repo-token: ${{ secrets.GH_TOKEN }} + + - name: Set up project + run: bun run setup + + - name: Build + run: bun run build:website + env: + BUILD_CHUNK: ${{ matrix.chunk }} + + - name: Upload artifact + id: upload + uses: actions/upload-pages-artifact@v4 + with: + path: dist/website + + - name: Trigger target repository + run: | + curl -X POST \ + -H "Authorization: token ${{ secrets.GH_TOKEN }}" \ + -H "Accept: application/vnd.github.v3+json" \ + https://github.com \ + -d '{ "event_type": "deploy-pages", "client_payload": { "artifact_url": "${{ steps.upload.outputs.artifact_url }}" } }'