diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ac930d21b7..77232e0be3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -122,39 +122,7 @@ jobs: uses: ./.github/workflows/muzzle.yml examples: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - name: Set up JDK 11 for running Gradle - uses: actions/setup-java@v2 - with: - distribution: adopt - java-version: 11 - - - name: Set up gradle cache - uses: gradle/gradle-build-action@v2 - - - name: Local publish of artifacts - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - - - name: Local publish of gradle plugins - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - working-directory: gradle-plugins - - - name: Build distro - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/distro - - - name: Build extension - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension - - - name: Run muzzle check against extension - run: ./gradlew muzzle --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension + uses: ./.github/workflows/examples.yml markdown-link-check: runs-on: ubuntu-latest diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml new file mode 100644 index 0000000000..ce65846ddc --- /dev/null +++ b/.github/workflows/examples.yml @@ -0,0 +1,49 @@ +name: Examples + +on: + workflow_call: + inputs: + cache-read-only: + type: boolean + required: false + no-build-cache: + type: boolean + required: false + +jobs: + examples: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Set up JDK 11 for running Gradle + uses: actions/setup-java@v2 + with: + distribution: adopt + java-version: 11 + + - name: Set up gradle cache + uses: gradle/gradle-build-action@v2 + with: + cache-read-only: ${{ inputs.cache-read-only }} + + - name: Local publish of artifacts + # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ + run: ./gradlew publishToMavenLocal -x javadoc + + - name: Local publish of gradle plugins + # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ + run: ./gradlew publishToMavenLocal -x javadoc + working-directory: gradle-plugins + + - name: Build distro + run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts${{ inputs.no-build-cache && ' --no-build-cache' || '' }} + working-directory: examples/distro + + - name: Build extension + run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts${{ inputs.no-build-cache && ' --no-build-cache' || '' }} + working-directory: examples/extension + + - name: Run muzzle check against extension + run: ./gradlew muzzle --init-script ../../.github/scripts/local.init.gradle.kts + working-directory: examples/extension diff --git a/.github/workflows/nightly-no-cache.yml b/.github/workflows/nightly-no-cache.yml index d7fb48cd1d..fbdb351e83 100644 --- a/.github/workflows/nightly-no-cache.yml +++ b/.github/workflows/nightly-no-cache.yml @@ -107,39 +107,9 @@ jobs: # it doesn't use gradle cache anyways and so is already covered by the normal nightly build examples: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - name: Set up JDK 11 for running Gradle - uses: actions/setup-java@v2 - with: - distribution: adopt - java-version: 11 - - - name: Set up gradle cache - uses: gradle/gradle-build-action@v2 - - - name: Local publish of artifacts - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - - - name: Local publish of gradle plugins - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - working-directory: gradle-plugins - - - name: Build distro - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts --no-build-cache - working-directory: examples/distro - - - name: Build extension - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts --no-build-cache - working-directory: examples/extension - - - name: Run muzzle check against extension - run: ./gradlew muzzle --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension + uses: ./.github/workflows/examples.yml + with: + no-build-cache: true # markdown-link-check is intentionally not included in the nightly-no-cache build because # it doesn't use gradle cache anyways and so is already covered by the normal nightly build diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 3e6ac8ad1b..72ad821f5f 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -113,39 +113,7 @@ jobs: uses: ./.github/workflows/muzzle.yml examples: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - name: Set up JDK 11 for running Gradle - uses: actions/setup-java@v2 - with: - distribution: adopt - java-version: 11 - - - name: Set up gradle cache - uses: gradle/gradle-build-action@v2 - - - name: Local publish of artifacts - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - - - name: Local publish of gradle plugins - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - working-directory: gradle-plugins - - - name: Build distro - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/distro - - - name: Build extension - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension - - - name: Run muzzle check against extension - run: ./gradlew muzzle --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension + uses: ./.github/workflows/examples.yml markdown-link-check: runs-on: ubuntu-latest diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index b7b8cfbce4..53f7f2ec2f 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -173,41 +173,9 @@ jobs: uses: ./.github/workflows/muzzle.yml examples: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - name: Set up JDK 11 for running Gradle - uses: actions/setup-java@v2 - with: - distribution: adopt - java-version: 11 - - - name: Set up gradle cache - uses: gradle/gradle-build-action@v2 - with: - cache-read-only: true - - - name: Local publish of artifacts - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - - - name: Local publish of gradle plugins - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - working-directory: gradle-plugins - - - name: Build distro - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/distro - - - name: Build extension - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension - - - name: Run muzzle check against extension - run: ./gradlew muzzle --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension + uses: ./.github/workflows/examples.yml + with: + cache-read-only: true # markdown-link-check is not included in the PR build because links to external urls can break at # any time, which can be confusing for contributors diff --git a/.github/workflows/release-gradle-plugins.yml b/.github/workflows/release-gradle-plugins.yml index e935c35bf5..1331b87124 100644 --- a/.github/workflows/release-gradle-plugins.yml +++ b/.github/workflows/release-gradle-plugins.yml @@ -56,41 +56,7 @@ jobs: # and this is not a reason to hold up the release examples: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - with: - ref: ${{ github.event.inputs.release-branch-name }} - - - name: Set up JDK 11 for running Gradle - uses: actions/setup-java@v2 - with: - distribution: adopt - java-version: 11 - - - name: Set up gradle cache - uses: gradle/gradle-build-action@v2 - - - name: Local publish of artifacts - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - - - name: Local publish of gradle plugins - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - working-directory: gradle-plugins - - - name: Build distro - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/distro - - - name: Build extension - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension - - - name: Run muzzle check against extension - run: ./gradlew muzzle --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension + uses: ./.github/workflows/examples.yml release: needs: [ test, smoke-test, examples ] diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3f7552dba7..069042ebfe 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -48,41 +48,7 @@ jobs: # and this is not a reason to hold up the release examples: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - with: - ref: ${{ github.ref_name }} - - - name: Set up JDK 11 for running Gradle - uses: actions/setup-java@v2 - with: - distribution: adopt - java-version: 11 - - - name: Set up gradle cache - uses: gradle/gradle-build-action@v2 - - - name: Local publish of artifacts - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - - - name: Local publish of gradle plugins - # javadoc task fails sporadically fetching https://docs.oracle.com/javase/8/docs/api/ - run: ./gradlew publishToMavenLocal -x javadoc - working-directory: gradle-plugins - - - name: Build distro - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/distro - - - name: Build extension - run: ./gradlew build --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension - - - name: Run muzzle check against extension - run: ./gradlew muzzle --init-script ../../.github/scripts/local.init.gradle.kts - working-directory: examples/extension + uses: ./.github/workflows/examples.yml release: needs: [ test, smoke-test, examples ]