GeometryPipeline #1906
This file contains 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
# This workflow builds a map using the base and branch commit of a PR and uploads | |
# the logs as an artifact that update-pr.yml uses to add back as a comment. | |
name: Performance | |
on: | |
pull_request: | |
branches: [ main ] | |
env: | |
# For performance tests, run this branch against main with: | |
AREA: rhode island | |
RAM: 4g | |
# Also pick up a good chunk of the atlantic ocean to catch any regressions in repeated tile performance | |
# Omit to infer from .osm.pbf bounds | |
BOUNDS_ARG: "--bounds=-74.07,21.34,-17.84,43.55" | |
jobs: | |
performance: | |
name: Performance Test | |
runs-on: ubuntu-latest | |
timeout-minutes: 20 | |
continue-on-error: true | |
steps: | |
- name: 'Cancel previous runs' | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- name: 'Checkout branch' | |
uses: actions/checkout@v4 | |
with: | |
path: branch | |
submodules: true | |
- name: 'Checkout base' | |
uses: actions/checkout@v4 | |
with: | |
path: base | |
ref: ${{ github.event.pull_request.base.sha }} | |
submodules: true | |
- name: Cache data/sources | |
uses: ./branch/.github/cache-sources-action | |
with: | |
basedir: branch | |
- name: Set up JDK | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 21 | |
distribution: 'temurin' | |
cache: 'maven' | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: '14' | |
- run: npm install -g [email protected] | |
- name: 'Build branch' | |
run: ./scripts/build.sh | |
working-directory: branch | |
- name: 'Build base' | |
run: ./scripts/build.sh | |
working-directory: base | |
- name: 'Download data' | |
run: | | |
set -eo pipefail | |
cp base/planetiler-dist/target/*with-deps.jar run.jar && java -jar run.jar --only-download --area="${{ env.AREA }}" | |
cp branch/planetiler-dist/target/*with-deps.jar run.jar && java -jar run.jar --only-download --area="${{ env.AREA }}" | |
- name: 'Store build info' | |
run: | | |
mkdir build-info | |
echo "${{ github.event.pull_request.base.sha }}" > build-info/base_sha | |
echo "${{ github.sha }}" > build-info/branch_sha | |
echo "${{ github.event.number }}" > build-info/pull_request_number | |
- name: 'Run branch' | |
run: | | |
rm -rf data/out.mbtiles data/tmp | |
cp branch/planetiler-dist/target/*with-deps.jar run.jar | |
java -Xms${{ env.RAM }} -Xmx${{ env.RAM }} -jar run.jar --area="${{ env.AREA }}" "${{ env.BOUNDS_ARG }}" --output=data/out.mbtiles --keep-unzipped 2>&1 | tee log | |
ls -alh run.jar | tee -a log | |
cat log | strip-ansi > build-info/branchlogs.txt | |
- name: 'Run base' | |
run: | | |
rm -rf data/out.mbtiles data/tmp | |
cp base/planetiler-dist/target/*with-deps.jar run.jar | |
java -Xms${{ env.RAM }} -Xmx${{ env.RAM }} -jar run.jar --area="${{ env.AREA }}" "${{ env.BOUNDS_ARG }}" --output=data/out.mbtiles --keep-unzipped 2>&1 | tee log | |
ls -alh run.jar | tee -a log | |
cat log | strip-ansi > build-info/baselogs.txt | |
- name: 'Upload build-info' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: build-info | |
path: ./build-info |