Skip to content

feat: deploy web app to staging environment #2193

feat: deploy web app to staging environment

feat: deploy web app to staging environment #2193

Workflow file for this run

name: End to end
on:
push:
branches: [ master ]
paths-ignore:
- '**.md'
- '**.py'
- 'Dockerfile'
- '.gitignore'
- 'LICENSE'
- 'docker.yml'
- 'formatting.yml'
- 'test_pack_dock.yml'
- 'triage.yml'
- 'acceptance_test.yml'
- 'web/**'
pull_request:
branches: [ master ]
paths-ignore:
- '**.md'
- '**.py'
- 'Dockerfile'
- '.gitignore'
- 'LICENSE'
- 'docker.yml'
- 'formatting.yml'
- 'test_pack_dock.yml'
- 'triage.yml'
- 'acceptance_test.yml'
- 'web/**'
jobs:
validate_gradle_wrapper:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: gradle/wrapper-validation-action@v1
pack-snapshot:
needs: validate_gradle_wrapper
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: '11'
distribution: 'temurin'
- name: Cache Gradle packages
uses: actions/cache@v3
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
restore-keys: ${{ runner.os }}-gradle
- name: Package cli app jar with Gradle
uses: gradle/gradle-build-action@v2
with:
arguments: shadowJar
- name: Persist gtfs-validator snapshot jar
uses: actions/upload-artifact@v3
with:
name: gtfs-validator-snapshot
path: cli/build/libs/gtfs-validator-*-cli.jar
fetch-urls:
runs-on: gitrunners-ubuntu-2204-x64-4vcpu
## ubuntu-latest-4-cores
steps:
- name: Checkout repository code
uses: actions/checkout@v3
- name: Install dependencies
run: |
pip install -r scripts/mobility-database-harvester/requirements.txt
- name: Set URL matrix
id: set-matrix
run: |
DATASETS=$(python3 scripts/mobility-database-harvester/harvest_latest_versions.py -d scripts/mobility-database-harvester/datasets_metadata -l gtfs_latest_versions.json -s)
echo $DATASETS
echo "::set-output name=matrix::$DATASETS"
- name: Persist metadata
if: always()
uses: actions/upload-artifact@v3
with:
name: datasets_metadata
path: scripts/mobility-database-harvester/datasets_metadata
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
run-on-data:
needs: [ fetch-urls, pack-snapshot ]
# We use machines with more memory to run validation, as large feeds
# can consume too much heap for default machine instances (see #1304).
runs-on: gitrunners-ubuntu-2204-x64-4vcpu
strategy:
matrix: ${{ fromJson(needs.fetch-urls.outputs.matrix) }}
steps:
- uses: actions/checkout@v3
- name: Download latest changes .jar file from previous job
uses: actions/download-artifact@v3
with:
name: gtfs-validator-snapshot
path: gtfs-validator-snapshot
- name: Run snapshot validator on queued URLs
run: |
queue="${{ matrix.data }}"
bash ./scripts/queue_runner.sh --exclude-master $queue
env:
OUTPUT_BASE: ${{ github.sha }}
- name: Persist reports
uses: actions/upload-artifact@v3
with:
name: reports_snapshot
path: ${{ github.sha }}/output