difftreelog
Merge pull request #660 from UniqueNetwork/fix/merge-929030
in: master
Fix/merge 929030
15 files changed
.docker/Dockerfile-try-runtimediffbeforeafterboth--- a/.docker/Dockerfile-try-runtime
+++ b/.docker/Dockerfile-try-runtime
@@ -46,5 +46,4 @@
echo "Fork from: $REPLICA_FROM\n" && \
cargo build --features=$FEATURE --release
-
-CMD cargo run --features=try-runtime,$FEATURE --release -- try-runtime on-runtime-upgrade live --uri $REPLICA_FROM
+CMD cargo run --features=try-runtime,$FEATURE --release -- try-runtime --no-spec-name-check on-runtime-upgrade live --uri $REPLICA_FROM
.envdiffbeforeafterboth--- a/.env
+++ b/.env
@@ -5,7 +5,7 @@
UNIQUE_MAINNET_TAG=v924010
KUSAMA_MAINNET_BRANCH=release-v0.9.26
-QUARTZ_MAINNET_TAG=quartz-v924012-2
+QUARTZ_MAINNET_TAG=quartz-v924012-2-opal-runtime-feature
UNQWND_MAINNET_BRANCH=release-v0.9.24
.github/workflows/market-test_v2.ymldiffbeforeafterboth--- a/.github/workflows/market-test_v2.yml
+++ b/.github/workflows/market-test_v2.yml
@@ -10,8 +10,8 @@
market_test:
# The type of runner that the job will run on
- runs-on: [self-hosted-ci,large]
- timeout-minutes: 1380
+ runs-on: [self-hosted-ci,medium]
+ timeout-minutes: 180
name: ${{ matrix.network }}
@@ -91,12 +91,20 @@
rm -rf .env
cp .env.docker .env
+# Temporary disable node readyness check. Have to dig into the script logic.
+# - name: Wait for chain up and running
+# working-directory: tests
+# run: |
+# yarn install
+# node scripts/readyness.js
+# echo "Ready to start tests"
+# env:
+# RPC_URL: http://127.0.0.1:9933/
+
- name: Wait for chain up and running
- working-directory: tests
run: |
- yarn install
- node scripts/readyness.js
- echo "Ready to start tests"
+ sleep 1200s
+ echo "Ready to start Market e2e tests"
- name: Show content of .env file and Generate accounts
working-directory: qa-tests
@@ -184,7 +192,6 @@
- name: Clean Workspace
if: always()
uses: AutoModality/action-clean@v1.1.0
-
.github/workflows/node-only-update_v2.ymldiffbeforeafterboth--- a/.github/workflows/node-only-update_v2.yml
+++ b/.github/workflows/node-only-update_v2.yml
@@ -49,7 +49,7 @@
- timeout-minutes: 1380
+ timeout-minutes: 2880
name: ${{ matrix.network }}
@@ -170,7 +170,7 @@
yarn add mochawesome
echo "Ready to start tests"
yarn polkadot-types
- NOW=$(date +%s) && yarn test --reporter mochawesome --reporter-options reportFilename=test-${NOW}
+ NOW=$(date +%s) && yarn test --reporter mochawesome --reporter-options reportFilename=test-before-${NOW}
env:
RPC_URL: http://127.0.0.1:9933/
@@ -180,20 +180,35 @@
if: success() || failure() # run this step even if previous step failed
with:
name: Tests before node upgrade ${{ matrix.network }} # Name of the check run which will be created
- path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-*.json # Path to test results
+ path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-before-*.json # Path to test results
reporter: mochawesome-json
fail-on-error: 'false'
- - name: Send SIGUSR1 to polkadotlaunch process
+ - name: Send SIGUSR1 to polkadot-launch process
if: success() || failure()
run: |
- #Get PID of polkadot-launch
+ ContainerID=$(docker ps -aqf "name=node-parachain")
PID=$(docker exec node-parachain pidof 'polkadot-launch')
- echo "Polkadot-launch PID: $PID"
- #Send SIGUSR1 signal to $PID
+ sleep 30s
+ echo -e "Show logs of node-parachain container.\n"
+ docker logs ${ContainerID}
+ echo -e "\n"
+ echo -e "Restart polkadot-launch process: $PID\n"
docker exec node-parachain kill -SIGUSR1 ${PID}
+ echo -e "SIGUSR1 sent to Polkadot-launch PID: $PID\n"
+ echo -e "Get node-parachain logs:\n"
+ docker logs -t -n 5 ${ContainerID}
+
+ - name: Get chain logs
+ if: failure() # run this step only at failure
+ run: |
+ docker exec node-parachain cat /polkadot-launch/9944.log
+ docker exec node-parachain cat /polkadot-launch/9945.log
+ docker exec node-parachain cat /polkadot-launch/alice.log
+ docker exec node-parachain cat /polkadot-launch/eve.log
+ docker exec node-parachain cat /polkadot-launch/dave.log
+ docker exec node-parachain cat /polkadot-launch/charlie.log
- # 🌗 All parachain collators restarted with the new binaries.
- name: Check if docker logs consist messages related to testing of Node Parachain Upgrade.
if: success()
run: |
@@ -240,14 +255,14 @@
shell: bash
- name: Run tests after Node Parachain upgrade
- working-directory: tests
+ if: success()
+ working-directory: ${{ matrix.mainnet_branch }}/tests
run: |
yarn install
yarn add mochawesome
- node scripts/readyness.js
echo "Ready to start tests"
yarn polkadot-types
- NOW=$(date +%s) && yarn test --reporter mochawesome --reporter-options reportFilename=test-${NOW}
+ NOW=$(date +%s) && yarn test --reporter mochawesome --reporter-options reportFilename=test-after-${NOW}
env:
RPC_URL: http://127.0.0.1:9933/
@@ -257,7 +272,7 @@
if: success() || failure() # run this step even if previous step failed
with:
name: Tests after node upgrade ${{ matrix.network }} # Name of the check run which will be created
- path: tests/mochawesome-report/test-*.json # Path to test results
+ path: ${{ matrix.mainnet_branch }}/tests/mochawesome-report/test-after-*.json # Path to test results
reporter: mochawesome-json
fail-on-error: 'false'
Cargo.lockdiffbeforeafterboth--- a/Cargo.lock
+++ b/Cargo.lock
@@ -6711,6 +6711,24 @@
]
[[package]]
+name = "pallet-unique-scheduler-v2"
+version = "0.1.0"
+dependencies = [
+ "frame-benchmarking",
+ "frame-support",
+ "frame-system",
+ "log",
+ "pallet-preimage",
+ "parity-scale-codec 3.2.1",
+ "scale-info",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
+ "substrate-test-utils",
+]
+
+[[package]]
name = "pallet-utility"
version = "4.0.0-dev"
source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#cc370aa61e15c18d23a2f686b812fd576a630afe"
@@ -8576,7 +8594,7 @@
[[package]]
name = "quartz-runtime"
-version = "0.9.27"
+version = "0.9.29"
dependencies = [
"app-promotion-rpc",
"cumulus-pallet-aura-ext",
@@ -12568,7 +12586,7 @@
[[package]]
name = "unique-runtime"
-version = "0.9.27"
+version = "0.9.29"
dependencies = [
"app-promotion-rpc",
"cumulus-pallet-aura-ext",
README.mddiffbeforeafterboth--- a/README.md
+++ b/README.md
@@ -92,7 +92,7 @@
```
git clone https://github.com/paritytech/polkadot.git
cd polkadot
-git checkout release-v0.9.27
+git checkout release-v0.9.29
cargo build --release
```
runtime/common/construct_runtime/mod.rsdiffbeforeafterboth--- a/runtime/common/construct_runtime/mod.rs
+++ b/runtime/common/construct_runtime/mod.rs
@@ -57,8 +57,8 @@
Inflation: pallet_inflation::{Pallet, Call, Storage} = 60,
Unique: pallet_unique::{Pallet, Call, Storage, Event<T>} = 61,
- #[runtimes(opal)]
- Scheduler: pallet_unique_scheduler::{Pallet, Call, Storage, Event<T>} = 62,
+ // #[runtimes(opal)]
+ // Scheduler: pallet_unique_scheduler::{Pallet, Call, Storage, Event<T>} = 62,
Configuration: pallet_configuration::{Pallet, Call, Storage} = 63,
runtime/common/mod.rsdiffbeforeafterboth1// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.2// This file is part of Unique Network.34// Unique Network is free software: you can redistribute it and/or modify5// it under the terms of the GNU General Public License as published by6// the Free Software Foundation, either version 3 of the License, or7// (at your option) any later version.89// Unique Network is distributed in the hope that it will be useful,10// but WITHOUT ANY WARRANTY; without even the implied warranty of11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the12// GNU General Public License for more details.1314// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.1617pub mod config;18pub mod construct_runtime;19pub mod dispatch;20pub mod ethereum;21pub mod instance;22pub mod runtime_apis;23pub mod scheduler;24pub mod sponsoring;25pub mod weights;2627#[cfg(test)]28pub mod tests;2930use sp_core::H160;31use frame_support::traits::{Currency, OnUnbalanced, Imbalance};32use sp_runtime::{33 generic,34 traits::{BlakeTwo256, BlockNumberProvider},35 impl_opaque_keys,36};37use sp_std::vec::Vec;3839#[cfg(feature = "std")]40use sp_version::NativeVersion;4142use crate::{Runtime, Call, Balances, Treasury, Aura, Signature, AllPalletsWithSystem, InherentDataExt};43use up_common::types::{AccountId, BlockNumber};4445#[macro_export]46macro_rules! unsupported {47 () => {48 pallet_common::unsupported!($crate::Runtime)49 };50}5152/// The address format for describing accounts.53pub type Address = sp_runtime::MultiAddress<AccountId, ()>;54/// Block header type as expected by this runtime.55pub type Header = generic::Header<BlockNumber, BlakeTwo256>;56/// Block type as expected by this runtime.57pub type Block = generic::Block<Header, UncheckedExtrinsic>;58/// A Block signed with a Justification59pub type SignedBlock = generic::SignedBlock<Block>;60/// BlockId type as expected by this runtime.61pub type BlockId = generic::BlockId<Block>;6263impl_opaque_keys! {64 pub struct SessionKeys {65 pub aura: Aura,66 }67}6869/// The version information used to identify this runtime when compiled natively.70#[cfg(feature = "std")]71pub fn native_version() -> NativeVersion {72 NativeVersion {73 runtime_version: crate::VERSION,74 can_author_with: Default::default(),75 }76}7778pub type ChargeTransactionPayment = pallet_charge_transaction::ChargeTransactionPayment<Runtime>;7980pub type SignedExtra = (81 frame_system::CheckSpecVersion<Runtime>,82 frame_system::CheckTxVersion<Runtime>,83 frame_system::CheckGenesis<Runtime>,84 frame_system::CheckEra<Runtime>,85 frame_system::CheckNonce<Runtime>,86 frame_system::CheckWeight<Runtime>,87 ChargeTransactionPayment,88 //pallet_contract_helpers::ContractHelpersExtension<Runtime>,89 pallet_ethereum::FakeTransactionFinalizer<Runtime>,90);9192/// Unchecked extrinsic type as expected by this runtime.93pub type UncheckedExtrinsic =94 fp_self_contained::UncheckedExtrinsic<Address, Call, Signature, SignedExtra>;9596/// Extrinsic type that has already been checked.97pub type CheckedExtrinsic = fp_self_contained::CheckedExtrinsic<AccountId, Call, SignedExtra, H160>;9899/// Executive: handles dispatch to the various modules.100pub type Executive = frame_executive::Executive<101 Runtime,102 Block,103 frame_system::ChainContext<Runtime>,104 Runtime,105 AllPalletsWithSystem,106>;107108type NegativeImbalance = <Balances as Currency<AccountId>>::NegativeImbalance;109110pub struct DealWithFees;111impl OnUnbalanced<NegativeImbalance> for DealWithFees {112 fn on_unbalanceds<B>(mut fees_then_tips: impl Iterator<Item = NegativeImbalance>) {113 if let Some(fees) = fees_then_tips.next() {114 // for fees, 100% to treasury115 let mut split = fees.ration(100, 0);116 if let Some(tips) = fees_then_tips.next() {117 // for tips, if any, 100% to treasury118 tips.ration_merge_into(100, 0, &mut split);119 }120 Treasury::on_unbalanced(split.0);121 // Author::on_unbalanced(split.1);122 }123 }124}125126pub struct RelayChainBlockNumberProvider<T>(sp_std::marker::PhantomData<T>);127128impl<T: cumulus_pallet_parachain_system::Config> BlockNumberProvider129 for RelayChainBlockNumberProvider<T>130{131 type BlockNumber = BlockNumber;132133 fn current_block_number() -> Self::BlockNumber {134 cumulus_pallet_parachain_system::Pallet::<T>::validation_data()135 .map(|d| d.relay_parent_number)136 .unwrap_or_default()137 }138}139140pub(crate) struct CheckInherents;141142impl cumulus_pallet_parachain_system::CheckInherents<Block> for CheckInherents {143 fn check_inherents(144 block: &Block,145 relay_state_proof: &cumulus_pallet_parachain_system::RelayChainStateProof,146 ) -> sp_inherents::CheckInherentsResult {147 let relay_chain_slot = relay_state_proof148 .read_slot()149 .expect("Could not read the relay chain slot from the proof");150151 let inherent_data =152 cumulus_primitives_timestamp::InherentDataProvider::from_relay_chain_slot_and_duration(153 relay_chain_slot,154 sp_std::time::Duration::from_secs(6),155 )156 .create_inherent_data()157 .expect("Could not create the timestamp inherent data");158159 inherent_data.check_extrinsics(block)160 }161}162163#[derive(codec::Encode, codec::Decode)]164pub enum XCMPMessage<XAccountId, XBalance> {165 /// Transfer tokens to the given account from the Parachain account.166 TransferToken(XAccountId, XBalance),167}runtime/opal/Cargo.tomldiffbeforeafterboth--- a/runtime/opal/Cargo.toml
+++ b/runtime/opal/Cargo.toml
@@ -168,7 +168,7 @@
"pallet-foreign-assets/std"
]
limit-testing = ['pallet-unique/limit-testing', 'up-data-structs/limit-testing']
-opal-runtime = ['refungible', 'scheduler', 'rmrk', 'app-promotion', 'foreign-assets']
+opal-runtime = ['refungible', 'rmrk', 'app-promotion', 'foreign-assets']
refungible = []
scheduler = []
runtime/opal/src/lib.rsdiffbeforeafterboth--- a/runtime/opal/src/lib.rs
+++ b/runtime/opal/src/lib.rs
@@ -50,7 +50,7 @@
spec_name: create_runtime_str!(RUNTIME_NAME),
impl_name: create_runtime_str!(RUNTIME_NAME),
authoring_version: 1,
- spec_version: 927030,
+ spec_version: 929030,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 2,
runtime/quartz/Cargo.tomldiffbeforeafterboth--- a/runtime/quartz/Cargo.toml
+++ b/runtime/quartz/Cargo.toml
@@ -10,7 +10,7 @@
license = 'GPLv3'
name = 'quartz-runtime'
repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.27'
+version = '0.9.29'
[package.metadata.docs.rs]
targets = ['x86_64-unknown-linux-gnu']
runtime/quartz/src/lib.rsdiffbeforeafterboth--- a/runtime/quartz/src/lib.rs
+++ b/runtime/quartz/src/lib.rs
@@ -50,7 +50,7 @@
spec_name: create_runtime_str!(RUNTIME_NAME),
impl_name: create_runtime_str!(RUNTIME_NAME),
authoring_version: 1,
- spec_version: 927030,
+ spec_version: 929030,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 2,
runtime/unique/Cargo.tomldiffbeforeafterboth--- a/runtime/unique/Cargo.toml
+++ b/runtime/unique/Cargo.toml
@@ -10,7 +10,7 @@
license = 'GPLv3'
name = 'unique-runtime'
repository = 'https://github.com/UniqueNetwork/unique-chain'
-version = '0.9.27'
+version = '0.9.29'
[package.metadata.docs.rs]
targets = ['x86_64-unknown-linux-gnu']
runtime/unique/src/lib.rsdiffbeforeafterboth--- a/runtime/unique/src/lib.rs
+++ b/runtime/unique/src/lib.rs
@@ -50,7 +50,7 @@
spec_name: create_runtime_str!(RUNTIME_NAME),
impl_name: create_runtime_str!(RUNTIME_NAME),
authoring_version: 1,
- spec_version: 927030,
+ spec_version: 929030,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 2,
tests/scripts/readyness.jsdiffbeforeafterboth--- a/tests/scripts/readyness.js
+++ b/tests/scripts/readyness.js
@@ -25,6 +25,7 @@
}
catch(e) {
await sleep(10000);
+ console.log(e);
}
}
}