chore(dashmate): add images migrations for v25 #6904
Workflow file for this run
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
name: All Packages | |
on: | |
workflow_dispatch: | |
pull_request: | |
branches: | |
- master | |
- 'v[0-9]+\.[0-9]+-dev' | |
- 'v[0-9]+\.[0-9]+-dev-nightly' | |
push: | |
branches: | |
- master | |
- 'v[0-9]+\.[0-9]+-dev' | |
- 'v[0-9]+\.[0-9]+-dev-nightly' | |
schedule: | |
- cron: "30 4 * * *" | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
deps-versions: | |
name: JS dependency versions check | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
- name: Setup Node.JS | |
uses: actions/setup-node@v3 | |
with: | |
node-version: "18" | |
- name: Enable corepack | |
run: corepack enable | |
- name: Validate workspaces | |
run: yarn constraints | |
crates-security: | |
name: Crates security audit | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
- name: Audit crates | |
uses: actions-rs/audit-check@v1 | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
npm-security: | |
name: NPM security audit | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
- name: Enable corepack | |
run: corepack enable | |
- name: Audit NPM | |
run: yarn npm audit --environment production --all --recursive | |
test-suite: | |
name: Run Platform Test Suite | |
runs-on: [ "self-hosted", "linux", "x64", "ubuntu-platform" ] | |
timeout-minutes: 120 | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Restore timestamps | |
uses: chetan/git-restore-mtime-action@v2 | |
- name: Login to DockerHub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Setup Node.JS | |
uses: ./.github/actions/nodejs | |
- name: Setup Rust | |
uses: ./.github/actions/rust | |
with: | |
toolchain: stable | |
target: wasm32-unknown-unknown | |
- name: Build SDK | |
run: yarn build --filter "+dash" | |
- name: Set up Docker BuildX | |
uses: docker/setup-buildx-action@v2 | |
with: | |
install: true | |
driver-opts: env.BUILDKIT_STEP_LOG_MAX_SIZE=10485760 | |
config-inline: | | |
[worker.oci] | |
gc = true | |
gckeepstorage = 40000 # 40 GB | |
[[worker.oci.gcpolicy]] | |
all = true | |
keepBytes = 30000000000 # 30 GB | |
keepDuration = 864000 # 10 days | |
- name: Load Docker mount cache | |
uses: dcginfra/buildkit-cache-dance/inject@main | |
with: | |
bucket: multi-runner-linux-x64-platform-cache-gy9micic | |
mounts: | | |
cargo_registry_index | |
cargo_registry_cache | |
cargo_git | |
target_amd64 | |
target_wasm | |
unplugged_amd64 | |
- name: Setup local network | |
run: yarn configure | |
- name: Configure Drive ABCI layer cache | |
uses: ./.github/actions/s3-layer-cache-settings | |
id: drive_abci_layer_cache_settings | |
with: | |
name: dashpay/drive | |
- name: Configure DAPI layer cache | |
uses: ./.github/actions/s3-layer-cache-settings | |
id: dapi_layer_cache_settings | |
with: | |
name: dashpay/dapi | |
- name: Configure Dashmate Helper layer cache | |
uses: ./.github/actions/s3-layer-cache-settings | |
id: dashmate_helper_layer_cache_settings | |
with: | |
name: dashpay/dashmate-helper | |
- name: Configure base image layer cache | |
uses: ./.github/actions/s3-layer-cache-settings | |
id: base_layer_cache_settings | |
with: | |
name: dashpay/base | |
- name: Start local network | |
run: yarn start | |
env: | |
CACHE_DRIVE_ABCI_FROM: ${{ steps.drive_abci_layer_cache_settings.outputs.cache_from }} | |
CACHE_DRIVE_ABCI_TO: ${{ steps.drive_abci_layer_cache_settings.outputs.cache_to }} | |
CACHE_DAPI_API_FROM: ${{ steps.dapi_layer_cache_settings.outputs.cache_from }} | |
CACHE_DAPI_API_TO: ${{ steps.dapi_layer_cache_settings.outputs.cache_to }} | |
CACHE_DASHMATE_HELPER_FROM: ${{ steps.dashmate_helper_layer_cache_settings.outputs.cache_from }} | |
CACHE_DASHMATE_HELPER_TO: ${{ steps.dashmate_helper_layer_cache_settings.outputs.cache_to }} | |
CACHE_BASE_FROM: ${{ steps.base_layer_cache_settings.outputs.cache_from }} | |
CACHE_BASE_TO: ${{ steps.base_layer_cache_settings.outputs.cache_to }} | |
- name: Store Docker mount cache | |
uses: dcginfra/buildkit-cache-dance/extract@main | |
with: | |
bucket: multi-runner-linux-x64-platform-cache-gy9micic | |
mounts: | | |
cargo_registry_index | |
cargo_registry_cache | |
cargo_git | |
target_amd64 | |
target_wasm | |
unplugged_amd64 | |
- name: Run test suite | |
run: yarn test:suite | |
- name: Show Docker logs | |
if: ${{ failure() }} | |
uses: jwalton/gh-docker-logs@v2 | |
test-suite-browsers: | |
name: Run Platform Test Suite in Browsers | |
runs-on: [ "self-hosted", "linux", "x64", "ubuntu-platform" ] | |
timeout-minutes: 120 | |
steps: | |
- name: Login to DockerHub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Restore timestamps | |
uses: chetan/git-restore-mtime-action@v2 | |
- name: Setup Node.JS | |
uses: ./.github/actions/nodejs | |
- name: Setup Rust | |
uses: ./.github/actions/rust | |
with: | |
toolchain: stable | |
target: wasm32-unknown-unknown | |
- name: Build SDK | |
run: yarn build --filter "+dash" | |
- name: Set up Docker BuildX | |
uses: docker/setup-buildx-action@v2 | |
with: | |
install: true | |
driver-opts: env.BUILDKIT_STEP_LOG_MAX_SIZE=10485760 | |
config-inline: | | |
[worker.oci] | |
gc = true | |
gckeepstorage = 40000 # 40 GB | |
[[worker.oci.gcpolicy]] | |
all = true | |
keepBytes = 30000000000 # 30 GB | |
keepDuration = 864000 # 10 days | |
- name: Load Docker mount cache | |
uses: dcginfra/buildkit-cache-dance/inject@main | |
with: | |
bucket: multi-runner-linux-x64-platform-cache-gy9micic | |
mounts: | | |
cargo_registry_index | |
cargo_registry_cache | |
cargo_git | |
target_amd64 | |
target_wasm | |
unplugged_amd64 | |
- name: Setup local network | |
run: yarn configure | |
- name: Configure Drive ABCI layer cache | |
uses: ./.github/actions/s3-layer-cache-settings | |
id: drive_abci_layer_cache_settings | |
with: | |
name: dashpay/drive | |
- name: Configure DAPI layer cache | |
uses: ./.github/actions/s3-layer-cache-settings | |
id: dapi_layer_cache_settings | |
with: | |
name: dashpay/dapi | |
- name: Configure Dashmate Helper layer cache | |
uses: ./.github/actions/s3-layer-cache-settings | |
id: dashmate_helper_layer_cache_settings | |
with: | |
name: dashpay/dashmate-helper | |
- name: Configure Base image layer cache | |
uses: ./.github/actions/s3-layer-cache-settings | |
id: base_layer_cache_settings | |
with: | |
name: dashpay/base | |
- name: Start local network | |
run: yarn start | |
env: | |
CACHE_DRIVE_ABCI_FROM: ${{ steps.drive_abci_layer_cache_settings.outputs.cache_from }} | |
CACHE_DRIVE_ABCI_TO: ${{ steps.drive_abci_layer_cache_settings.outputs.cache_to }} | |
CACHE_DAPI_API_FROM: ${{ steps.dapi_layer_cache_settings.outputs.cache_from }} | |
CACHE_DAPI_API_TO: ${{ steps.dapi_layer_cache_settings.outputs.cache_to }} | |
CACHE_DASHMATE_HELPER_FROM: ${{ steps.dashmate_helper_layer_cache_settings.outputs.cache_from }} | |
CACHE_DASHMATE_HELPER_TO: ${{ steps.dashmate_helper_layer_cache_settings.outputs.cache_to }} | |
CACHE_BASE_FROM: ${{ steps.deps_layer_cache_settings.outputs.cache_from }} | |
CACHE_BASE_TO: ${{ steps.deps_layer_cache_settings.outputs.cache_to }} | |
- name: Store Docker mount cache | |
uses: dcginfra/buildkit-cache-dance/extract@main | |
with: | |
bucket: multi-runner-linux-x64-platform-cache-gy9micic | |
mounts: | | |
cargo_registry_index | |
cargo_registry_cache | |
cargo_git | |
target_amd64 | |
target_wasm | |
unplugged_amd64 | |
- name: Run test suite in browsers | |
run: yarn test:suite:browsers | |
- name: Show Docker logs | |
if: ${{ failure() }} | |
uses: jwalton/gh-docker-logs@v2 | |
codeql: | |
name: Code security audit | |
runs-on: [ "self-hosted", "linux", "x64", "ubuntu-platform" ] | |
permissions: | |
actions: read | |
contents: read | |
security-events: write | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
- name: Login to DockerHub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Setup Node.JS | |
uses: ./.github/actions/nodejs | |
- name: Initialize CodeQL | |
uses: github/codeql-action/init@v2 | |
with: | |
languages: javascript | |
config-file: ./.github/codeql/codeql-config.yml | |
- name: Setup Rust | |
uses: ./.github/actions/rust | |
with: | |
toolchain: stable | |
target: wasm32-unknown-unknown | |
- name: Build package and dependencies | |
run: yarn build --filter "+dash" | |
- name: Perform CodeQL Analysis | |
uses: github/codeql-action/analyze@v2 |