| name: Seed build cache |
| |
| on: |
| push: |
| branches: |
| - main |
| |
| concurrency: |
| # On main/release, we don't want any jobs cancelled so the sha is used to name the group |
| # On PR branches, we cancel the job if new commits are pushed |
| # More info: https://stackoverflow.com/a/68422069/253468 |
| group: ${{ (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/release' ) && format('ci-buildcache-{0}', github.sha) || format('ci-buildcache-{0}', github.ref) }} |
| cancel-in-progress: true |
| |
| jobs: |
| seed-build-cache: |
| strategy: |
| # CI resources are shared, so reduce concurrent builds |
| max-parallel: 3 |
| fail-fast: false |
| matrix: |
| os: [ubuntu, macos, windows] |
| jdk: [8, 11, 17] |
| |
| name: '${{ matrix.os }}, ${{ matrix.jdk }} seed build cache' |
| runs-on: ${{ matrix.os }}-latest |
| steps: |
| - uses: actions/checkout@v3 |
| with: |
| fetch-depth: 50 |
| - name: 'Set up JDK ${{ matrix.jdk }}' |
| uses: actions/setup-java@v1 |
| with: |
| java-version: ${{ matrix.jdk }} |
| distribution: 'zulu' |
| - uses: burrunan/gradle-cache-action@v1 |
| name: Build Calcite |
| env: |
| S3_BUILD_CACHE_ACCESS_KEY_ID: ${{ secrets.S3_BUILD_CACHE_ACCESS_KEY_ID }} |
| S3_BUILD_CACHE_SECRET_KEY: ${{ secrets.S3_BUILD_CACHE_SECRET_KEY }} |
| GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GE_ACCESS_TOKEN }} |
| with: |
| job-id: jdk${{ matrix.jdk }} |
| remote-build-cache-proxy-enabled: false |
| arguments: --scan --no-parallel --no-daemon build -x test |