--- a/.github/workflows/forkless-update-data.yml +++ b/.github/workflows/forkless-update-data.yml @@ -38,14 +38,14 @@ network {quartz}, wasm_name {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, replica_from_address {${{ env.QUARTZ_REPLICA_FROM }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}} network {unique}, wasm_name {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, replica_from_address {${{ env.UNIQUE_REPLICA_FROM }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}} network {opal}, wasm_name {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, replica_from_address {${{ env.OPAL_REPLICA_FROM }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}} - network {sapphire}, wasm_name {opal}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, replica_from_address {${{ env.SAPPHIRE_REPLICA_FROM }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}} + network {sapphire}, wasm_name {quartz}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, replica_from_address {${{ env.SAPPHIRE_REPLICA_FROM }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}} forkless-update-data: needs: execution-marix # The type of runner that the job will run on runs-on: [self-hosted-ci,large] timeout-minutes: 1380 - + name: ${{ matrix.network }}-data strategy: matrix: @@ -74,7 +74,7 @@ REPO_URL=${{ github.server_url }}/${{ github.repository }}.git RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }} POLKADOT_BUILD_BRANCH=${{ matrix.relay_branch }} - POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }} + POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }} # POLKADOT_MAINNET_BRANCH=${{ env.POLKADOT_MAINNET_BRANCH }} # MAINNET_TAG=${{ matrix.mainnet_tag }} MAINNET_BRANCH=${{ matrix.mainnet_branch }} @@ -163,7 +163,7 @@ - name: Stop running containers if: always() # run this step always run: docker-compose -f ".docker/docker-compose-forkless-data.${{ matrix.network }}.yml" down --volumes - + - name: Remove builder cache if: always() # run this step always run: | --- a/.github/workflows/forkless-update-nodata.yml +++ b/.github/workflows/forkless-update-nodata.yml @@ -37,7 +37,7 @@ network {quartz}, wasm_name {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}} network {unique}, wasm_name {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}} network {opal}, wasm_name {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}} - network {sapphire}, wasm_name {opal}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}} + network {sapphire}, wasm_name {quartz}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}} forkless-update-nodata: @@ -53,7 +53,7 @@ strategy: matrix: - include: ${{fromJson(needs.execution-marix.outputs.matrix)}} + include: ${{fromJson(needs.execution-marix.outputs.matrix)}} steps: - name: Clean Workspace @@ -76,7 +76,7 @@ REPO_URL=${{ github.server_url }}/${{ github.repository }}.git RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }} POLKADOT_BUILD_BRANCH=${{ matrix.relay_branch }} - POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }} + POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }} # POLKADOT_MAINNET_BRANCH=${{ env.POLKADOT_MAINNET_BRANCH }} # MAINNET_TAG=${{ matrix.mainnet_tag }} MAINNET_BRANCH=${{ matrix.mainnet_branch }} @@ -163,8 +163,8 @@ - name: Show docker logs if: success() || failure() run: cat './forkless-parachain-upgrade-nodata-logs.${{ matrix.features }}/node-parachain.log' - - - name: Run Parallel tests + + - name: Run Parallel tests working-directory: tests run: | yarn install @@ -175,7 +175,7 @@ NOW=$(date +%s) && yarn testParallel --reporter mochawesome --reporter-options reportFilename=test-parallel-${NOW} env: RPC_URL: http://127.0.0.1:9933/ - + - name: Test Report Parallel uses: phoenix-actions/test-reporting@v8 id: test-report-parallel @@ -185,10 +185,10 @@ path: tests/mochawesome-report/test-parallel-*.json # Path to test results reporter: mochawesome-json fail-on-error: 'false' - - - name: Run Sequential tests + + - name: Run Sequential tests working-directory: tests - if: success() || failure() + if: success() || failure() run: | yarn install yarn add mochawesome @@ -198,7 +198,7 @@ NOW=$(date +%s) && yarn testSequential --reporter mochawesome --reporter-options reportFilename=test-sequential-${NOW} env: RPC_URL: http://127.0.0.1:9933/ - + - name: Test Report Sequential uses: phoenix-actions/test-reporting@v8 id: test-report-sequential @@ -212,7 +212,7 @@ - name: Stop running containers if: always() # run this step always run: docker-compose -f ".docker/docker-compose.${{ matrix.network }}.yml" down - + - name: Remove builder cache if: always() # run this step always run: | --- a/.github/workflows/integration-tests.yml +++ b/.github/workflows/integration-tests.yml @@ -36,10 +36,10 @@ with: matrix: | network {opal}, wasm_name {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}} - network {sapphire}, wasm_name {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}} + network {sapphire}, wasm_name {quartz}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}} network {quartz}, wasm_name {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}} network {unique}, wasm_name {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}} - + parallel-test: needs: nodes-execution-matrix # The type of runner that the job will run on @@ -77,14 +77,14 @@ REPO_URL=${{ github.server_url }}/${{ github.repository }}.git RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }} POLKADOT_BUILD_BRANCH=${{ env.POLKADOT_BUILD_BRANCH }} - POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }} + POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }} POLKADOT_MAINNET_BRANCH=${{ env.POLKADOT_MAINNET_BRANCH }} MAINNET_TAG=${{ matrix.mainnet_tag }} MAINNET_BRANCH=${{ matrix.mainnet_branch }} NETWORK=${{ matrix.network }} BRANCH=${{ github.head_ref }} WASM_NAME=${{ matrix.wasm_name }} - + - name: Show build configuration run: cat .docker/docker-compose.node.${{ matrix.network }}.yml @@ -95,7 +95,7 @@ output_file: .docker/launch-config-forkless-nodata.json variables: | NETWORK=${{ matrix.network }} - + - name: Show launch-config-forkless configuration run: cat .docker/launch-config-forkless-nodata.json @@ -172,8 +172,8 @@ path: tests/mochawesome-report/test-parallel-*.json # Path to test results reporter: mochawesome-json fail-on-error: 'false' - - + + - name: Stop running containers if: always() # run this step always run: docker-compose -f ".docker/docker-compose.node.${{ matrix.network }}.yml" down --volumes @@ -184,7 +184,7 @@ docker builder prune -f -a docker system prune -f docker image prune -f -a - + - name: List files in Workspace if: always() run: ls -la ./ @@ -226,14 +226,14 @@ REPO_URL=${{ github.server_url }}/${{ github.repository }}.git RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }} POLKADOT_BUILD_BRANCH=${{ env.POLKADOT_BUILD_BRANCH }} - POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }} + POLKADOT_LAUNCH_BRANCH=${{ env.POLKADOT_LAUNCH_BRANCH }} POLKADOT_MAINNET_BRANCH=${{ env.POLKADOT_MAINNET_BRANCH }} MAINNET_TAG=${{ matrix.mainnet_tag }} MAINNET_BRANCH=${{ matrix.mainnet_branch }} NETWORK=${{ matrix.network }} BRANCH=${{ github.head_ref }} WASM_NAME=${{ matrix.wasm_name }} - + - name: Show build configuration run: cat .docker/docker-compose.node.${{ matrix.network }}.yml @@ -244,7 +244,7 @@ output_file: .docker/launch-config-forkless-nodata.json variables: | NETWORK=${{ matrix.network }} - + - name: Show launch-config-forkless configuration run: cat .docker/launch-config-forkless-nodata.json @@ -321,7 +321,7 @@ path: tests/mochawesome-report/test-sequential-*.json # Path to test results reporter: mochawesome-json fail-on-error: 'false' - + - name: Stop running containers if: always() # run this step always run: docker-compose -f ".docker/docker-compose.node.${{ matrix.network }}.yml" down --volumes @@ -332,7 +332,7 @@ docker builder prune -f -a docker system prune -f docker image prune -f -a - + - name: List files in Workspace if: always() run: ls -la ./ --- a/.github/workflows/node-only-update.yml +++ b/.github/workflows/node-only-update.yml @@ -38,7 +38,7 @@ with: matrix: | network {opal}, wasm_name {opal}, mainnet_branch {${{ env.OPAL_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEWEST_MAINNET_BRANCH }}} - network {sapphire}, wasm_name {opal}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}} + network {sapphire}, wasm_name {quartz}, mainnet_branch {${{ env.SAPPHIRE_MAINNET_BRANCH }}}, relay_branch {${{ env.UNIQUEEAST_MAINNET_BRANCH }}} network {quartz}, wasm_name {quartz}, mainnet_branch {${{ env.QUARTZ_MAINNET_BRANCH }}}, relay_branch {${{ env.KUSAMA_MAINNET_BRANCH }}} network {unique}, wasm_name {unique}, mainnet_branch {${{ env.UNIQUE_MAINNET_BRANCH }}}, relay_branch {${{ env.POLKADOT_MAINNET_BRANCH }}} @@ -214,7 +214,7 @@ docker exec node-parachain kill -SIGUSR1 ${PID} echo "SIGUSR1 sent to Polkadot-launch PID: $PID" sleep 60s - echo -e "Show logs of node-parachain container.\n" + echo -e "Show logs of node-parachain container.\n" docker logs ${ContainerID} - name: Get chain logs in case of docker image crashed after Polkadot Launch restart --- a/.github/workflows/try-runtime.yml +++ b/.github/workflows/try-runtime.yml @@ -34,7 +34,7 @@ with: matrix: | network {opal}, wasm_name {opal}, replica_from_address {${{ env.OPAL_REPLICA_FROM }}} - network {sapphire}, wasm_name {opal}, replica_from_address {${{ env.SAPPHIRE_REPLICA_FROM }}} + network {sapphire}, wasm_name {quartz}, replica_from_address {${{ env.SAPPHIRE_REPLICA_FROM }}} network {quartz}, wasm_name {quartz}, replica_from_address {${{ env.QUARTZ_REPLICA_FROM }}} network {unique}, wasm_name {unique}, replica_from_address {${{ env.UNIQUE_REPLICA_FROM }}} @@ -49,7 +49,7 @@ strategy: matrix: include: ${{fromJson(needs.prepare-execution-marix.outputs.matrix)}} - + steps: - name: Clean Workspace @@ -79,13 +79,13 @@ - name: Build the stack run: docker-compose -f ".docker/docker-compose.try-runtime.${{ matrix.network }}.yml" up --build --force-recreate --timeout 300 --remove-orphans --exit-code-from try-runtime - + - name: Collect Docker Logs if: success() || failure() uses: jwalton/gh-docker-logs@v2.2.0 with: dest: './try-runtime-logs.${{ matrix.network }}' - images: 'try-runtime' + images: 'try-runtime' - name: Show docker logs run: cat './try-runtime-logs.${{ matrix.network }}/try-runtime.log' @@ -93,7 +93,7 @@ - name: Stop running containers if: always() # run this step always run: docker-compose -f ".docker/docker-compose.try-runtime.${{ matrix.network }}.yml" down - + - name: Remove builder cache if: always() # run this step always run: | --- a/node/cli/Cargo.toml +++ b/node/cli/Cargo.toml @@ -340,7 +340,7 @@ 'opal-runtime?/try-runtime', 'try-runtime-cli/try-runtime', ] -sapphire-runtime = ['opal-runtime', 'opal-runtime/become-sapphire'] +sapphire-runtime = ['quartz-runtime', 'quartz-runtime/become-sapphire'] pov-estimate = [ 'unique-runtime?/pov-estimate', 'quartz-runtime?/pov-estimate', --- a/runtime/opal/Cargo.toml +++ b/runtime/opal/Cargo.toml @@ -47,7 +47,7 @@ 'sp-runtime/runtime-benchmarks', 'xcm-builder/runtime-benchmarks', 'pallet-maintenance/runtime-benchmarks', - 'cumulus-pallet-parachain-system/runtime-benchmarks' + 'cumulus-pallet-parachain-system/runtime-benchmarks', ] try-runtime = [ 'frame-try-runtime', @@ -196,7 +196,6 @@ 'foreign-assets', 'pallet-test-utils', ] -become-sapphire = [] pov-estimate = [] refungible = [] --- a/runtime/opal/src/lib.rs +++ b/runtime/opal/src/lib.rs @@ -44,14 +44,7 @@ pub use runtime_common::*; -#[cfg(feature = "become-sapphire")] -pub const RUNTIME_NAME: &str = "sapphire"; -#[cfg(feature = "become-sapphire")] -pub const TOKEN_SYMBOL: &str = "QTZ"; - -#[cfg(not(feature = "become-sapphire"))] pub const RUNTIME_NAME: &str = "opal"; -#[cfg(not(feature = "become-sapphire"))] pub const TOKEN_SYMBOL: &str = "OPL"; /// This runtime version. @@ -68,15 +61,6 @@ parameter_types! { pub const Version: RuntimeVersion = VERSION; -} -#[cfg(feature = "become-sapphire")] -parameter_types! { - pub const SS58Prefix: u16 = 8883; - pub const ChainId: u64 = 8883; -} - -#[cfg(not(feature = "become-sapphire"))] -parameter_types! { pub const SS58Prefix: u16 = 42; pub const ChainId: u64 = 8882; } --- a/runtime/quartz/Cargo.toml +++ b/runtime/quartz/Cargo.toml @@ -182,6 +182,7 @@ ] limit-testing = ['pallet-unique/limit-testing', 'up-data-structs/limit-testing'] quartz-runtime = ['refungible', 'app-promotion', 'collator-selection', 'foreign-assets'] +become-sapphire = [] pov-estimate = [] refungible = [] --- a/runtime/quartz/src/lib.rs +++ b/runtime/quartz/src/lib.rs @@ -44,6 +44,9 @@ pub use runtime_common::*; +#[cfg(feature = "become-sapphire")] +pub const RUNTIME_NAME: &str = "sapphire"; +#[cfg(not(feature = "become-sapphire"))] pub const RUNTIME_NAME: &str = "quartz"; pub const TOKEN_SYMBOL: &str = "QTZ"; @@ -61,6 +64,15 @@ parameter_types! { pub const Version: RuntimeVersion = VERSION; +} +#[cfg(feature = "become-sapphire")] +parameter_types! { + pub const SS58Prefix: u16 = 8883; + pub const ChainId: u64 = 8883; +} + +#[cfg(not(feature = "become-sapphire"))] +parameter_types! { pub const SS58Prefix: u8 = 255; pub const ChainId: u64 = 8881; } --- a/tests/src/pallet-presence.test.ts +++ b/tests/src/pallet-presence.test.ts @@ -69,7 +69,7 @@ const collatorSelection = ['authorship', 'session', 'collatorselection', 'identity']; const testUtils = 'testutils'; - if (chain.eq('OPAL by UNIQUE') || chain.eq('SAPPHIRE by UNIQUE')) { + if (chain.eq('OPAL by UNIQUE')) { requiredPallets.push( refungible, foreignAssets, @@ -77,7 +77,7 @@ testUtils, ...rmrkPallets, ); - } else if (chain.eq('QUARTZ by UNIQUE')) { + } else if (chain.eq('QUARTZ by UNIQUE') || chain.eq('SAPPHIRE by UNIQUE')) { requiredPallets.push( refungible, appPromotion,