name: CD Build Assets on: push: branches: main workflow_dispatch: inputs: cdn_branch: type: string required: false default: main description: What CDN branch to write to zip_url: type: string required: false description: ZIP URL to download instead of Steam client zip_root: type: string required: false description: Root dir of ZIP which houses the executable and Data dir schedule: - cron: '0 2 * * *' concurrency: group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event.inputs.cdn_branch }} cancel-in-progress: true jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: submodules: recursive token: ${{ secrets.GH_TOKEN }} - uses: oven-sh/setup-bun@v1 - name: Install dependencies run: bun install - name: Setup DepotDownloader if: github.event.inputs.zip_url == '' run: bun scripts/setupDepotDownloader.ts - name: Download Steam client if: github.event.inputs.zip_url == '' run: | chmod +x ./temp/depotDownloader/DepotDownloader ./temp/depotDownloader/DepotDownloader -os windows -app 444200 -username ${{ secrets.DEPOT_DOWNLOADER_USERNAME }} -password "${{ secrets.DEPOT_DOWNLOADER_PASSWORD }}" - name: Apply patches if: github.event.inputs.zip_url == '' env: DISCORD_CLIENT_ID: ${{ secrets.DISCORD_CLIENT_ID }} GH_TOKEN: ${{ secrets.GH_TOKEN }} DISCORD_TOKEN: ${{ secrets.DISCORD_TOKEN }} DATABASE_URL: ${{ secrets.DATABASE_URL }} WOTB_DLC_CDN: ${{ secrets.WOTB_DLC_CDN }} run: bun scripts/applyPatches.ts --depot - name: Download ZIP client if: github.event.inputs.zip_url != '' env: ZIP_URL: ${{ github.event.inputs.zip_url }} ZIP_ROOT: ${{ github.event.inputs.zip_root }} run: | wget -O client.zip $ZIP_URL unzip client.zip rm client.zip mv $ZIP_ROOT depots/444202/0 - name: Build assets env: DISCORD_CLIENT_ID: ${{ secrets.DISCORD_CLIENT_ID }} GH_TOKEN: ${{ secrets.GH_TOKEN }} DISCORD_TOKEN: ${{ secrets.DISCORD_TOKEN }} DATABASE_URL: ${{ secrets.DATABASE_URL }} VIDEOS_SHEET: ${{ secrets.VIDEOS_SHEET }} GOOGLE_APPLICATION_CREDENTIALS: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }} NEXT_PUBLIC_ASSET_BRANCH: ${{ github.event.inputs.cdn_branch }} run: bun build:assets --all-targets --depot --production