Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

debug(IDX): nns nightly test #1547

Closed
wants to merge 9 commits into from
263 changes: 132 additions & 131 deletions .github/workflows-source/release-testing.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
name: Release Testing

on:
push:
branches:
- "hotfix-*"
- "rc--*"
workflow_dispatch:
# push:
# branches:
# - "hotfix-*"
# - "rc--*"
# workflow_dispatch:
pull_request:

# new commits interrupt any running workflow on the same branch
concurrency:
Expand Down Expand Up @@ -59,10 +60,10 @@ anchors:
DOCKER_HUB_PASSWORD_RO: ${{ secrets.DOCKER_HUB_PASSWORD_RO }}

jobs:
ci-main:
name: CI Main
uses: ./.github/workflows/ci-main.yml
secrets: inherit
# ci-main:
# name: CI Main
# uses: ./.github/workflows/ci-main.yml
# secrets: inherit

bazel-system-test-nightly:
name: Bazel System Test Nightly
Expand All @@ -76,7 +77,7 @@ jobs:
uses: ./.github/actions/bazel-test-all/
with:
BAZEL_COMMAND: "test"
BAZEL_TARGETS: "//rs/tests/..."
BAZEL_TARGETS: //rs/tests/cross_chain:ic_xc_ledger_suite_orchestrator_test_head_nns
BAZEL_CI_CONFIG: "--config=ci --repository_cache=/cache/bazel"
BAZEL_EXTRA_ARGS: "--keep_going --test_tag_filters=system_test_nightly"
HONEYCOMB_API_TOKEN: ${{ secrets.HONEYCOMB_API_TOKEN }}
Expand All @@ -92,128 +93,128 @@ jobs:
bazel-bep.pb
profile.json

bazel-system-test-staging:
name: Bazel System Test Staging
continue-on-error: True
<<: *dind-large-setup
steps:
- <<: *checkout
- <<: *before-script
- <<: *docker-login
- name: Run Bazel System Test Staging
id: bazel-test-all
uses: ./.github/actions/bazel-test-all/
with:
BAZEL_COMMAND: "test"
BAZEL_TARGETS: "//rs/tests/..."
BAZEL_CI_CONFIG: "--config=ci --repository_cache=/cache/bazel"
BAZEL_EXTRA_ARGS: "--keep_going --test_tag_filters=system_test_staging"
HONEYCOMB_API_TOKEN: ${{ secrets.HONEYCOMB_API_TOKEN }}
- name: Upload bazel-bep
uses: actions/upload-artifact@v4
if: always()
with:
name: ${{ github.job }}-bep
retention-days: 14
if-no-files-found: ignore
compression-level: 9
path: |
bazel-bep.pb
profile.json
# bazel-system-test-staging:
# name: Bazel System Test Staging
# continue-on-error: True
# <<: *dind-large-setup
# steps:
# - <<: *checkout
# - <<: *before-script
# - <<: *docker-login
# - name: Run Bazel System Test Staging
# id: bazel-test-all
# uses: ./.github/actions/bazel-test-all/
# with:
# BAZEL_COMMAND: "test"
# BAZEL_TARGETS: "//rs/tests/..."
# BAZEL_CI_CONFIG: "--config=ci --repository_cache=/cache/bazel"
# BAZEL_EXTRA_ARGS: "--keep_going --test_tag_filters=system_test_staging"
# HONEYCOMB_API_TOKEN: ${{ secrets.HONEYCOMB_API_TOKEN }}
# - name: Upload bazel-bep
# uses: actions/upload-artifact@v4
# if: always()
# with:
# name: ${{ github.job }}-bep
# retention-days: 14
# if-no-files-found: ignore
# compression-level: 9
# path: |
# bazel-bep.pb
# profile.json

bazel-system-test-hotfix:
name: Bazel System Test Hotfix
<<: *dind-large-setup
timeout-minutes: 90
steps:
- <<: *checkout
- <<: *before-script
- <<: *docker-login
- name: Run Bazel Test All
id: bazel-test-all
uses: ./.github/actions/bazel-test-all/
with:
BAZEL_COMMAND: "test"
BAZEL_TARGETS: "//rs/tests/..."
BAZEL_CI_CONFIG: "--config=ci --repository_cache=/cache/bazel"
BAZEL_EXTRA_ARGS_RULES: "--test_tag_filters=system_test_hotfix"
HONEYCOMB_API_TOKEN: ${{ secrets.HONEYCOMB_API_TOKEN }}
- name: Upload bazel-bep
uses: actions/upload-artifact@v4
if: always()
with:
name: ${{ github.job }}-bep
retention-days: 14
if-no-files-found: ignore
compression-level: 9
path: |
bazel-bep.pb
profile.json
# bazel-system-test-hotfix:
# name: Bazel System Test Hotfix
# <<: *dind-large-setup
# timeout-minutes: 90
# steps:
# - <<: *checkout
# - <<: *before-script
# - <<: *docker-login
# - name: Run Bazel Test All
# id: bazel-test-all
# uses: ./.github/actions/bazel-test-all/
# with:
# BAZEL_COMMAND: "test"
# BAZEL_TARGETS: "//rs/tests/..."
# BAZEL_CI_CONFIG: "--config=ci --repository_cache=/cache/bazel"
# BAZEL_EXTRA_ARGS_RULES: "--test_tag_filters=system_test_hotfix"
# HONEYCOMB_API_TOKEN: ${{ secrets.HONEYCOMB_API_TOKEN }}
# - name: Upload bazel-bep
# uses: actions/upload-artifact@v4
# if: always()
# with:
# name: ${{ github.job }}-bep
# retention-days: 14
# if-no-files-found: ignore
# compression-level: 9
# path: |
# bazel-bep.pb
# profile.json

dependency-scan-release-cut:
name: Dependency Scan for Release
<<: *dind-large-setup
timeout-minutes: 60
env:
SHELL_WRAPPER: "/usr/bin/time"
CI_PROJECT_PATH: ${{ github.repository }}
CI_PIPELINE_ID: ${{ github.run_id }}
CI_COMMIT_SHA: ${{ github.sha }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
JIRA_API_TOKEN: ${{ secrets.JIRA_API_TOKEN }}
SLACK_PSEC_BOT_OAUTH_TOKEN: ${{ secrets.SLACK_PSEC_BOT_OAUTH_TOKEN }}
steps:
- <<: *checkout
- <<: *before-script
- <<: *docker-login
- name: Setup python deps
id: setup-python-deps
shell: bash
run: |
pip3 install --ignore-installed -r requirements.txt
- name: Dependency Scan for Release
id: dependency-scan-release-cut
shell: bash
run: |
set -euo pipefail
export PYTHONPATH=$PWD/ci/src:$PWD/ci/src/dependencies
cd ci/src/dependencies/
$SHELL_WRAPPER python3 job/bazel_rust_ic_scanner_release_job.py
# dependency-scan-release-cut:
# name: Dependency Scan for Release
# <<: *dind-large-setup
# timeout-minutes: 60
# env:
# SHELL_WRAPPER: "/usr/bin/time"
# CI_PROJECT_PATH: ${{ github.repository }}
# CI_PIPELINE_ID: ${{ github.run_id }}
# CI_COMMIT_SHA: ${{ github.sha }}
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# JIRA_API_TOKEN: ${{ secrets.JIRA_API_TOKEN }}
# SLACK_PSEC_BOT_OAUTH_TOKEN: ${{ secrets.SLACK_PSEC_BOT_OAUTH_TOKEN }}
# steps:
# - <<: *checkout
# - <<: *before-script
# - <<: *docker-login
# - name: Setup python deps
# id: setup-python-deps
# shell: bash
# run: |
# pip3 install --ignore-installed -r requirements.txt
# - name: Dependency Scan for Release
# id: dependency-scan-release-cut
# shell: bash
# run: |
# set -euo pipefail
# export PYTHONPATH=$PWD/ci/src:$PWD/ci/src/dependencies
# cd ci/src/dependencies/
# $SHELL_WRAPPER python3 job/bazel_rust_ic_scanner_release_job.py

setup-guest-os-qualification:
name: Setting up guest os qualification pipeline
<<: *dind-large-setup
outputs:
matrix: ${{ steps.generate.outputs.output }}
steps:
- name: Sparse checkout
uses: actions/checkout@v4
with:
ref: ${{ github.event.workflow_run.head_branch }}
sparse-checkout: ".github/scripts/determine-initial-guest-os-versions.py"
- id: generate
name: Fetch beginning versions for qualification
shell: bash
run: |
set -euo pipefail
OUTPUT=$(python .github/scripts/determine-initial-guest-os-versions.py)
echo "output=$OUTPUT" >> $GITHUB_OUTPUT
# setup-guest-os-qualification:
# name: Setting up guest os qualification pipeline
# <<: *dind-large-setup
# outputs:
# matrix: ${{ steps.generate.outputs.output }}
# steps:
# - name: Sparse checkout
# uses: actions/checkout@v4
# with:
# ref: ${{ github.event.workflow_run.head_branch }}
# sparse-checkout: ".github/scripts/determine-initial-guest-os-versions.py"
# - id: generate
# name: Fetch beginning versions for qualification
# shell: bash
# run: |
# set -euo pipefail
# OUTPUT=$(python .github/scripts/determine-initial-guest-os-versions.py)
# echo "output=$OUTPUT" >> $GITHUB_OUTPUT

guest-os-qualification:
name: Qualifying ${{ matrix.version }} -> ${{ github.sha }}
needs: setup-guest-os-qualification
strategy:
matrix: ${{ fromJson(needs.setup-guest-os-qualification.outputs.matrix) }}
<<: *dind-large-setup
steps:
- <<: *checkout
- <<: *before-script
- <<: *docker-login
- name: Run qualification for version ${{ matrix.version }} from the tip of the branch
uses: ./.github/actions/bazel-test-all/
with:
BAZEL_COMMAND: "test"
BAZEL_TARGETS: "//rs/tests/dre:guest_os_qualification"
BAZEL_CI_CONFIG: "--config=systest --repository_cache=/cache/bazel"
BAZEL_EXTRA_ARGS_RULES: "--test_timeout=7200 --test_env=OLD_VERSION=${{ matrix.version }}"
HONEYCOMB_API_TOKEN: ${{ secrets.HONEYCOMB_API_TOKEN }}
# guest-os-qualification:
# name: Qualifying ${{ matrix.version }} -> ${{ github.sha }}
# needs: setup-guest-os-qualification
# strategy:
# matrix: ${{ fromJson(needs.setup-guest-os-qualification.outputs.matrix) }}
# <<: *dind-large-setup
# steps:
# - <<: *checkout
# - <<: *before-script
# - <<: *docker-login
# - name: Run qualification for version ${{ matrix.version }} from the tip of the branch
# uses: ./.github/actions/bazel-test-all/
# with:
# BAZEL_COMMAND: "test"
# BAZEL_TARGETS: "//rs/tests/dre:guest_os_qualification"
# BAZEL_CI_CONFIG: "--config=systest --repository_cache=/cache/bazel"
# BAZEL_EXTRA_ARGS_RULES: "--test_timeout=7200 --test_env=OLD_VERSION=${{ matrix.version }}"
# HONEYCOMB_API_TOKEN: ${{ secrets.HONEYCOMB_API_TOKEN }}
Loading
Loading