try fix log spam (#74) #478
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: CI for Mod | |
| on: | |
| workflow_dispatch: | |
| push: | |
| branches: | |
| - dev/** | |
| paths: | |
| - .github/modules.json | |
| - .github/workflows/build_and_test.yml | |
| - .github/workflows/publish_maven_central.yml | |
| - .github/workflows/ci.yml | |
| - .github/workflows/generate-matrix.js | |
| - gradle/** | |
| - module.*/src/** | |
| - module.sync/processor/src/** | |
| - module.*/build.gradle | |
| - module.sync/processor/build.gradle | |
| - module.*/gradle.properties | |
| - module.sync/processor/gradle.properties | |
| - build.gradle | |
| - module.gradle | |
| - gradle.properties | |
| - settings.gradle | |
| jobs: | |
| prepare: | |
| runs-on: ubuntu-latest | |
| outputs: | |
| level_0: ${{ steps.matrix.outputs.level_0 }} | |
| level_1: ${{ steps.matrix.outputs.level_1 }} | |
| level_2: ${{ steps.matrix.outputs.level_2 }} | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - id: matrix | |
| run: node .github/workflows/generate-matrix.js | |
| # ── Build (topological levels) ────────────────────────────────── | |
| processor-build: | |
| needs: [prepare] | |
| uses: ./.github/workflows/build_and_test.yml | |
| with: | |
| module: sync | |
| module_id: anvillib-sync-processor | |
| mod_id: anvillib_sync_processor | |
| ci_build: true | |
| pr_build: false | |
| gradle_project: anvillib-sync-neoforge-26.1:anvillib-sync-processor-neoforge-26.1 | |
| module_dir: module.sync/processor | |
| secrets: | |
| maven_url: ${{ secrets.MAVEN_URL }} | |
| maven_user: ${{ secrets.MAVEN_USER }} | |
| maven_pass: ${{ secrets.MAVEN_PASS }} | |
| build-l0: | |
| needs: [prepare] | |
| strategy: | |
| matrix: ${{ fromJSON(needs.prepare.outputs.level_0) }} | |
| uses: ./.github/workflows/build_and_test.yml | |
| with: | |
| module: ${{ matrix.module }} | |
| module_id: ${{ matrix.module_id }} | |
| mod_id: ${{ matrix.mod_id }} | |
| ci_build: true | |
| pr_build: false | |
| secrets: | |
| maven_url: ${{ secrets.MAVEN_URL }} | |
| maven_user: ${{ secrets.MAVEN_USER }} | |
| maven_pass: ${{ secrets.MAVEN_PASS }} | |
| build-l1: | |
| needs: [prepare, build-l0] | |
| strategy: | |
| matrix: ${{ fromJSON(needs.prepare.outputs.level_1) }} | |
| uses: ./.github/workflows/build_and_test.yml | |
| with: | |
| module: ${{ matrix.module }} | |
| module_id: ${{ matrix.module_id }} | |
| mod_id: ${{ matrix.mod_id }} | |
| ci_build: true | |
| pr_build: false | |
| secrets: | |
| maven_url: ${{ secrets.MAVEN_URL }} | |
| maven_user: ${{ secrets.MAVEN_USER }} | |
| maven_pass: ${{ secrets.MAVEN_PASS }} | |
| build-l2: | |
| needs: [prepare, build-l1, processor-build] | |
| strategy: | |
| matrix: ${{ fromJSON(needs.prepare.outputs.level_2) }} | |
| uses: ./.github/workflows/build_and_test.yml | |
| with: | |
| module: ${{ matrix.module }} | |
| module_id: ${{ matrix.module_id }} | |
| mod_id: ${{ matrix.mod_id }} | |
| ci_build: true | |
| pr_build: false | |
| secrets: | |
| maven_url: ${{ secrets.MAVEN_URL }} | |
| maven_user: ${{ secrets.MAVEN_USER }} | |
| maven_pass: ${{ secrets.MAVEN_PASS }} | |
| # ── Maven Central deploy ──────────────────────────────────────── | |
| processor-deploy: | |
| needs: [processor-build] | |
| uses: ./.github/workflows/publish_maven_central.yml | |
| with: | |
| module: sync | |
| module_id: anvillib-sync-processor | |
| gradle_project: anvillib-sync-neoforge-26.1:anvillib-sync-processor-neoforge-26.1 | |
| module_dir: module.sync/processor | |
| secrets: | |
| maven_central_username: ${{ secrets.MAVEN_CENTRAL_USERNAME }} | |
| maven_central_password: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} | |
| signing_key: ${{ secrets.SIGNING_KEY }} | |
| signing_public_key: ${{ secrets.SIGNING_PUBLIC_KEY }} | |
| signing_password: ${{ secrets.SIGNING_PASSWORD }} | |
| deploy-l0: | |
| needs: [prepare, build-l0] | |
| strategy: | |
| matrix: ${{ fromJSON(needs.prepare.outputs.level_0) }} | |
| uses: ./.github/workflows/publish_maven_central.yml | |
| with: | |
| module: ${{ matrix.module }} | |
| module_id: ${{ matrix.module_id }} | |
| secrets: | |
| maven_central_username: ${{ secrets.MAVEN_CENTRAL_USERNAME }} | |
| maven_central_password: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} | |
| signing_key: ${{ secrets.SIGNING_KEY }} | |
| signing_public_key: ${{ secrets.SIGNING_PUBLIC_KEY }} | |
| signing_password: ${{ secrets.SIGNING_PASSWORD }} | |
| deploy-l1: | |
| needs: [prepare, build-l1] | |
| strategy: | |
| matrix: ${{ fromJSON(needs.prepare.outputs.level_1) }} | |
| uses: ./.github/workflows/publish_maven_central.yml | |
| with: | |
| module: ${{ matrix.module }} | |
| module_id: ${{ matrix.module_id }} | |
| secrets: | |
| maven_central_username: ${{ secrets.MAVEN_CENTRAL_USERNAME }} | |
| maven_central_password: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} | |
| signing_key: ${{ secrets.SIGNING_KEY }} | |
| signing_public_key: ${{ secrets.SIGNING_PUBLIC_KEY }} | |
| signing_password: ${{ secrets.SIGNING_PASSWORD }} | |
| deploy-l2: | |
| needs: [prepare, build-l2] | |
| strategy: | |
| matrix: ${{ fromJSON(needs.prepare.outputs.level_2) }} | |
| uses: ./.github/workflows/publish_maven_central.yml | |
| with: | |
| module: ${{ matrix.module }} | |
| module_id: ${{ matrix.module_id }} | |
| secrets: | |
| maven_central_username: ${{ secrets.MAVEN_CENTRAL_USERNAME }} | |
| maven_central_password: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} | |
| signing_key: ${{ secrets.SIGNING_KEY }} | |
| signing_public_key: ${{ secrets.SIGNING_PUBLIC_KEY }} | |
| signing_password: ${{ secrets.SIGNING_PASSWORD }} | |
| # ── Main (aggregator) ─────────────────────────────────────────── | |
| main: | |
| needs: [build-l2] | |
| uses: ./.github/workflows/build_and_test.yml | |
| with: | |
| module: main | |
| module_id: anvillib | |
| mod_id: anvillib | |
| ci_build: true | |
| pr_build: false | |
| gametest: true | |
| secrets: | |
| maven_url: ${{ secrets.MAVEN_URL }} | |
| maven_user: ${{ secrets.MAVEN_USER }} | |
| maven_pass: ${{ secrets.MAVEN_PASS }} | |
| curseforge_token: ${{ secrets.CURSEFORGE_TOKEN }} | |
| modrinth_token: ${{ secrets.MODRINTH_TOKEN }} | |
| main-maven-central-deploy: | |
| needs: [main] | |
| uses: ./.github/workflows/publish_maven_central.yml | |
| with: | |
| module: main | |
| module_id: anvillib | |
| secrets: | |
| maven_central_username: ${{ secrets.MAVEN_CENTRAL_USERNAME }} | |
| maven_central_password: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} | |
| signing_key: ${{ secrets.SIGNING_KEY }} | |
| signing_public_key: ${{ secrets.SIGNING_PUBLIC_KEY }} | |
| signing_password: ${{ secrets.SIGNING_PASSWORD }} |