Index Jar Metadata #297
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Index Jar Metadata | |
| on: | |
| schedule: | |
| # Run every 30 minutes for metadata indexers | |
| - cron: "0 6 * * *" | |
| workflow_dispatch: | |
| inputs: | |
| project: | |
| description: "Specific project to index (leave empty for all)" | |
| required: false | |
| type: string | |
| env: | |
| SUPABASE_URL: ${{ secrets.SUPABASE_URL }} | |
| SUPABASE_SERVICE_ROLE_KEY: ${{ secrets.SUPABASE_SERVICE_ROLE_KEY }} | |
| jobs: | |
| index-paper: | |
| name: Index Paper Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'paper' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Paper | |
| run: bun run index-paper.ts | |
| working-directory: ./indexers | |
| index-folia: | |
| name: Index Folia Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'folia' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Folia | |
| run: bun run index-folia.ts | |
| working-directory: ./indexers | |
| index-vanilla: | |
| name: Index Vanilla Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'vanilla' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Vanilla | |
| run: bun run index-vanilla.ts | |
| working-directory: ./indexers | |
| index-purpur: | |
| name: Index Purpur Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'purpur' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Purpur | |
| run: bun run index-purpur.ts | |
| working-directory: ./indexers | |
| index-fabric: | |
| name: Index Fabric Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'fabric' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Fabric | |
| run: bun run index-fabric.ts | |
| working-directory: ./indexers | |
| index-velocity: | |
| name: Index Velocity Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'velocity' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Velocity | |
| run: bun run index-velocity.ts | |
| working-directory: ./indexers | |
| index-waterfall: | |
| name: Index Waterfall Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'waterfall' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Waterfall | |
| run: bun run index-waterfall.ts | |
| working-directory: ./indexers | |
| index-bungeecord: | |
| name: Index BungeeCord Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'bungeecord' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index BungeeCord | |
| run: bun run index-bungeecord.ts | |
| working-directory: ./indexers | |
| index-pufferfish: | |
| name: Index Pufferfish Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'pufferfish' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Pufferfish | |
| run: bun run index-pufferfish.ts | |
| working-directory: ./indexers | |
| index-forge: | |
| name: Index Forge Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'forge' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Forge | |
| run: bun run index-forge.ts | |
| working-directory: ./indexers | |
| index-neoforge: | |
| name: Index NeoForge Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'neoforge' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index NeoForge | |
| run: bun run index-neoforge.ts | |
| working-directory: ./indexers | |
| index-sponge: | |
| name: Index Sponge Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'sponge' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Sponge | |
| run: bun run index-sponge.ts | |
| working-directory: ./indexers | |
| index-mohist: | |
| name: Index Mohist Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'mohist' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Mohist | |
| run: bun run index-mohist.ts | |
| working-directory: ./indexers | |
| index-arclight: | |
| name: Index Arclight Builds | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'arclight' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index Arclight | |
| run: bun run index-arclight.ts | |
| working-directory: ./indexers | |
| index-nms-mappings: | |
| name: Index NMS Version Mappings | |
| runs-on: ubuntu-latest | |
| if: ${{ github.event.inputs.project == '' || github.event.inputs.project == 'nms' }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| working-directory: ./indexers | |
| - name: Index NMS Mappings | |
| run: bun run index-nms-mappings.ts | |
| working-directory: ./indexers | |
| revalidate-pages: | |
| name: Trigger Revalidation | |
| runs-on: ubuntu-latest | |
| needs: | |
| - index-paper | |
| - index-folia | |
| - index-vanilla | |
| - index-purpur | |
| - index-fabric | |
| - index-velocity | |
| - index-waterfall | |
| - index-bungeecord | |
| - index-pufferfish | |
| - index-forge | |
| - index-neoforge | |
| - index-sponge | |
| - index-mohist | |
| - index-arclight | |
| if: always() | |
| steps: | |
| - name: Trigger revalidation | |
| run: | | |
| curl -X POST "${{ secrets.REVALIDATION_URL }}" \ | |
| -H "Authorization: Bearer ${{ secrets.REVALIDATION_SECRET }}" \ | |
| -H "Content-Type: application/json" \ | |
| -d '{"paths": ["/", "/paper", "/folia", "/vanilla", "/fabric", "/purpur", "/velocity", "/waterfall", "/bungeecord", "/pufferfish", "/forge", "/neoforge", "/sponge", "/mohist", "/arclight"]}' | |
| continue-on-error: true |