Warm Heavy Baseline Caches on Arm64 #139
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: Warm Heavy Baseline Caches on Arm64 | |
| on: | |
| workflow_dispatch: | |
| schedule: | |
| - cron: '30 1 * * *' | |
| jobs: | |
| warm-heavy-baselines: | |
| name: Warm Heavy Baseline Caches | |
| runs-on: ubuntu-24.04-arm | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Prefetch heavy baseline artifacts | |
| run: | | |
| set -euo pipefail | |
| mkdir -p "${RUNNER_TEMP}/heavy-baselines" | |
| bash .github/scripts/prefetch-heavy-baselines.sh "${RUNNER_TEMP}/heavy-baselines" | |
| - name: Detect prefetched artifacts | |
| id: detect | |
| run: | | |
| set -euo pipefail | |
| root="${RUNNER_TEMP}/heavy-baselines" | |
| has_file() { | |
| local path="$1" | |
| if [ -f "$path" ]; then | |
| echo true | |
| else | |
| echo false | |
| fi | |
| } | |
| echo "spark=$(has_file "$root/spark/spark-3.5.3-bin-hadoop3.tgz")" >> "$GITHUB_OUTPUT" | |
| echo "nifi=$(has_file "$root/nifi/nifi-2.7.2-bin.zip")" >> "$GITHUB_OUTPUT" | |
| echo "pinot=$(has_file "$root/pinot/apache-pinot-1.2.0-bin.tar.gz")" >> "$GITHUB_OUTPUT" | |
| echo "druid=$(has_file "$root/druid/apache-druid-31.0.0-bin.tar.gz")" >> "$GITHUB_OUTPUT" | |
| echo "hive=$(has_file "$root/hive/apache-hive-4.0.0-bin.tar.gz")" >> "$GITHUB_OUTPUT" | |
| echo "hadoop_runtime=$(has_file "$root/hadoop/hadoop-3.3.6.tar.gz")" >> "$GITHUB_OUTPUT" | |
| echo "hadoop_aarch64=$(has_file "$root/hadoop/hadoop-3.3.6-aarch64.tar.gz")" >> "$GITHUB_OUTPUT" | |
| echo "storm=$(has_file "$root/storm/apache-storm-2.8.2.tar.gz")" >> "$GITHUB_OUTPUT" | |
| echo "dolphinscheduler=$(has_file "$root/dolphinscheduler/apache-dolphinscheduler-3.2.1-bin.tar.gz")" >> "$GITHUB_OUTPUT" | |
| - name: Save Spark baseline cache | |
| if: ${{ steps.detect.outputs.spark == 'true' }} | |
| continue-on-error: true | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: ${{ runner.temp }}/heavy-baselines/spark | |
| key: heavy-baseline-spark-3.5.3-hadoop3-arm64-v1 | |
| - name: Save NiFi baseline cache | |
| if: ${{ steps.detect.outputs.nifi == 'true' }} | |
| continue-on-error: true | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: ${{ runner.temp }}/heavy-baselines/nifi | |
| key: heavy-baseline-nifi-2.7.2-arm64-v1 | |
| - name: Save Pinot baseline cache | |
| if: ${{ steps.detect.outputs.pinot == 'true' }} | |
| continue-on-error: true | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: ${{ runner.temp }}/heavy-baselines/pinot | |
| key: heavy-baseline-pinot-1.2.0-arm64-v1 | |
| - name: Save Druid baseline cache | |
| if: ${{ steps.detect.outputs.druid == 'true' }} | |
| continue-on-error: true | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: ${{ runner.temp }}/heavy-baselines/druid | |
| key: heavy-baseline-druid-31.0.0-arm64-v1 | |
| - name: Save Hive baseline cache | |
| if: ${{ steps.detect.outputs.hive == 'true' }} | |
| continue-on-error: true | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: ${{ runner.temp }}/heavy-baselines/hive | |
| key: heavy-baseline-hive-4.0.0-arm64-v1 | |
| - name: Save Hadoop baseline cache | |
| if: ${{ steps.detect.outputs.hadoop_runtime == 'true' }} | |
| continue-on-error: true | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: ${{ runner.temp }}/heavy-baselines/hadoop/hadoop-3.3.6.tar.gz | |
| key: heavy-baseline-hadoop-3.3.6-runtime-arm64-v1 | |
| - name: Save Hadoop aarch64 dependency cache | |
| if: ${{ steps.detect.outputs.hadoop_aarch64 == 'true' }} | |
| continue-on-error: true | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: ${{ runner.temp }}/heavy-baselines/hadoop/hadoop-3.3.6-aarch64.tar.gz | |
| key: heavy-baseline-hadoop-3.3.6-aarch64-arm64-v1 | |
| - name: Save Storm baseline cache | |
| if: ${{ steps.detect.outputs.storm == 'true' }} | |
| continue-on-error: true | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: ${{ runner.temp }}/heavy-baselines/storm | |
| key: heavy-baseline-storm-2.8.2-arm64-v1 | |
| - name: Save DolphinScheduler baseline cache | |
| if: ${{ steps.detect.outputs.dolphinscheduler == 'true' }} | |
| continue-on-error: true | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: ${{ runner.temp }}/heavy-baselines/dolphinscheduler | |
| key: heavy-baseline-dolphinscheduler-3.2.1-arm64-v1 |