102 lines
2.6 KiB
YAML
102 lines
2.6 KiB
YAML
name: CI Docker
|
|
|
|
on:
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
paths-ignore:
|
|
# code and tests
|
|
- '**/*.rs'
|
|
# hard-coded checkpoints and proptest regressions
|
|
- '**/*.txt'
|
|
# test data snapshots
|
|
- '**/*.snap'
|
|
# dependencies
|
|
- '**/Cargo.toml'
|
|
- '**/Cargo.lock'
|
|
# workflow definitions
|
|
- 'docker/**'
|
|
- '.github/workflows/continous-integration-docker.yml'
|
|
- '.github/workflows/deploy-gcp-tests.yml'
|
|
- '.github/workflows/build-docker-image.yml'
|
|
|
|
push:
|
|
branches:
|
|
- main
|
|
paths-ignore:
|
|
# code and tests
|
|
- '**/*.rs'
|
|
# hard-coded checkpoints and proptest regressions
|
|
- '**/*.txt'
|
|
# test data snapshots
|
|
- '**/*.snap'
|
|
# dependencies
|
|
- '**/Cargo.toml'
|
|
- '**/Cargo.lock'
|
|
# workflow definitions
|
|
- 'docker/**'
|
|
- '.github/workflows/continous-integration-docker.yml'
|
|
- '.github/workflows/deploy-gcp-tests.yml'
|
|
- '.github/workflows/build-docker-image.yml'
|
|
|
|
jobs:
|
|
get-available-disks:
|
|
name: Find available cached state disks
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- run: 'echo "No build required"'
|
|
|
|
build:
|
|
name: Build images
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- run: 'echo "No build required"'
|
|
|
|
test-all:
|
|
name: Test all
|
|
runs-on: ubuntu-latest
|
|
needs: build
|
|
steps:
|
|
- run: 'echo "No build required"'
|
|
|
|
test-fake-activation-heights:
|
|
name: Test with fake activation heights
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- run: 'echo "No build required"'
|
|
|
|
test-empty-sync:
|
|
name: Test checkpoint sync from empty state
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- run: 'echo "No build required"'
|
|
|
|
test-lightwalletd-integration:
|
|
name: Test integration with lightwalletd
|
|
runs-on: ubuntu-latest
|
|
needs: build
|
|
steps:
|
|
- run: 'echo "No build required"'
|
|
|
|
# Create a patch job for each call to deploy-gcp-tests.yml
|
|
#
|
|
# GitHub's branch protection rules only match on the name (they ignore the job ID)
|
|
deploy-gcp-tests-patch:
|
|
name: Run ${{ matrix.test_id }} test
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
# Keep this list in sync with the test_id inputs to each deploy-gcp-tests.yml call
|
|
# in continous-integration-docker.yml
|
|
test_id:
|
|
- 'sync-to-checkpoint'
|
|
- 'sync-past-checkpoint'
|
|
- 'full-sync-to-tip'
|
|
- 'fully-synced-rpc'
|
|
- 'lwd-full-sync'
|
|
- 'lwd-update-sync'
|
|
- 'lwd-send-transactions'
|
|
- 'lwd-grpc-wallet'
|
|
steps:
|
|
- run: 'echo "No build required"'
|