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

misc: Clean-up and minors pre 1025 #1742

Merged
merged 8 commits into from
Feb 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build-wasm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
run: >
docker run --rm --user root --platform=linux/amd64
-e PACKAGE=${{ matrix.package }} -v /home/runner/.cargo:/cargo-home
-v ${{ github.workspace }}:/build paritytech/srtool:1.73.0-0.12.0
-v ${{ github.workspace }}:/build paritytech/srtool:1.75.0-0.14.0
/srtool/build --app

# Alternative way of running SRTool that allows for "script-like" execution,
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 4 additions & 1 deletion libs/types/src/tokens.rs
Original file line number Diff line number Diff line change
Expand Up @@ -452,7 +452,10 @@ pub mod usdc {
pub const CURRENCY_ID_LP_ETH_GOERLI: CurrencyId = CurrencyId::ForeignAsset(100_001);
pub const CURRENCY_ID_LP_BASE: CurrencyId = CurrencyId::ForeignAsset(100_002);
pub const CURRENCY_ID_LP_ARB: CurrencyId = CurrencyId::ForeignAsset(100_003);
pub const CURRENCY_ID_LP_CELO: CurrencyId = CurrencyId::ForeignAsset(100_004);

pub const CURRENCY_ID_LP_CELO_WORMHOLE: CurrencyId = CurrencyId::ForeignAsset(100_004);
pub const CURRENCY_ID_LP_CELO: CurrencyId = CurrencyId::ForeignAsset(100_006);
Comment on lines +455 to +457
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CURRENCYT_ID_LP_CELO was 100_004, and now it is 100_006. I guess this is the intention of the migration, so wherever we used CURRENCY_ID_LP_CELO, now it's CURRENCY_ID_LP_CELO_WORKHOLE.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Exactly!


pub const LOCAL_ASSET_ID: LocalAssetId = LocalAssetId(1u32);
pub const CURRENCY_ID_LOCAL: CurrencyId = CurrencyId::LocalAsset(LOCAL_ASSET_ID);

Expand Down
2 changes: 1 addition & 1 deletion runtime/centrifuge/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1803,7 +1803,7 @@ parameter_types! {
}

impl pallet_order_book::Config for Runtime {
type AdminOrigin = EnsureRoot<AccountId>;
type AdminOrigin = EnsureAccountOrRootOr<LpAdminAccount, TwoThirdOfCouncil>;
type AssetRegistry = OrmlAssetRegistry;
type BalanceIn = Balance;
type BalanceOut = Balance;
Expand Down
6 changes: 5 additions & 1 deletion runtime/centrifuge/src/migrations.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ use cfg_primitives::{Balance, PoolId};
use cfg_types::tokens::{
usdc::{
CURRENCY_ID_AXELAR, CURRENCY_ID_DOT_NATIVE, CURRENCY_ID_LOCAL, CURRENCY_ID_LP_ARB,
CURRENCY_ID_LP_BASE, CURRENCY_ID_LP_CELO, CURRENCY_ID_LP_ETH, LOCAL_ASSET_ID,
CURRENCY_ID_LP_BASE, CURRENCY_ID_LP_CELO, CURRENCY_ID_LP_CELO_WORMHOLE, CURRENCY_ID_LP_ETH,
LOCAL_ASSET_ID,
},
CurrencyId, LocalAssetId,
};
Expand All @@ -31,6 +32,7 @@ frame_support::parameter_types! {
pub const UsdcEth: CurrencyId = CURRENCY_ID_LP_ETH;
pub const UsdcBase: CurrencyId = CURRENCY_ID_LP_BASE;
pub const UsdcArb: CurrencyId = CURRENCY_ID_LP_ARB;
pub const UsdcCeloWormhole: CurrencyId = CURRENCY_ID_LP_CELO_WORMHOLE;
pub const UsdcCelo: CurrencyId = CURRENCY_ID_LP_CELO;
pub const MinOrderAmount: Balance = 10u128.pow(6);
pub const AnnualTreasuryInflationPercent: u32 = 3;
Expand All @@ -51,6 +53,8 @@ pub type UpgradeCentrifuge1025 = (
super::Runtime,
LocalCurrencyIdUsdc,
>,
// Register new canonical USDC on Celo
runtime_common::migrations::update_celo_usdcs::Migration<super::Runtime>,
// Init local representation for all assets
runtime_common::migrations::local_currency::translate_metadata::Migration<
super::Runtime,
Expand Down
116 changes: 116 additions & 0 deletions runtime/common/src/migrations/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,119 @@ pub mod nuke;
pub mod orml_tokens;
pub mod precompile_account_codes;
pub mod transfer_allowlist_currency;

pub mod update_celo_usdcs {
use cfg_primitives::Balance;
#[cfg(feature = "try-runtime")]
use cfg_types::tokens::LocalAssetId;
use cfg_types::tokens::{
usdc::{CURRENCY_ID_LP_CELO, CURRENCY_ID_LP_CELO_WORMHOLE},
CrossChainTransferability, CurrencyId, CustomMetadata,
};
use frame_support::{traits::OnRuntimeUpgrade, weights::Weight};
use hex_literal::hex;
use orml_traits::asset_registry::{AssetMetadata, Mutate};
use sp_runtime::traits::Get;
#[cfg(feature = "try-runtime")]
use sp_std::{vec, vec::Vec};
use xcm::v3::{
Junction::{AccountKey20, GlobalConsensus, PalletInstance},
Junctions::X3,
NetworkId::Ethereum,
};

const LOG_PREFIX: &str = "UpdateCeloUsdcs";

pub struct Migration<T>(sp_std::marker::PhantomData<T>);

impl<T> OnRuntimeUpgrade for Migration<T>
where
T: orml_asset_registry::Config<
CustomMetadata = CustomMetadata,
AssetId = CurrencyId,
Balance = Balance,
>,
{
fn on_runtime_upgrade() -> Weight {
<orml_asset_registry::Pallet<T> as Mutate>::register_asset(
Some(CURRENCY_ID_LP_CELO),
AssetMetadata {
decimals: 6,
name: "LP Celo Wrapped USDC ".as_bytes().to_vec(),
symbol: "LpCeloUSDC".as_bytes().to_vec(),
existential_deposit: 1000u128,
location: Some(
X3(
PalletInstance(103),
GlobalConsensus(Ethereum { chain_id: 42220 }),
AccountKey20 {
// https://www.circle.com/blog/usdc-now-available-on-celo
key: hex!("cebA9300f2b948710d2653dD7B07f33A8B32118C"),
network: None,
},
)
.into(),
),
additional: CustomMetadata {
transferability: CrossChainTransferability::LiquidityPools,
mintable: false,
permissioned: false,
pool_currency: true,
local_representation: None,
},
},
)
.map_err(|e| {
log::error!(
"{LOG_PREFIX} Failed to register new canonical Celo USDC due to error {:?}",
e
);
})
.ok();

log::info!("{LOG_PREFIX} Done registering new canonical Celo USDC currency");

<orml_asset_registry::Pallet<T> as Mutate>::update_asset(
CURRENCY_ID_LP_CELO_WORMHOLE,
None,
Some("LP Celo Wrapped Wormhole USDC ".as_bytes().to_vec()),
Some("LpCeloWormUSDC ".as_bytes().to_vec()),
None,
None,
None,
)
.map_err(|e| {
log::error!(
"{LOG_PREFIX} Failed to update wormhole Celo USDC due to error {:?}",
e
);
})
.ok();

log::info!("{LOG_PREFIX} Done updating wormhole Celo USDC currency");

T::DbWeight::get().writes(2)
}

#[cfg(feature = "try-runtime")]
fn pre_upgrade() -> Result<Vec<u8>, sp_runtime::DispatchError> {
assert!(!orml_asset_registry::Metadata::<T>::contains_key(
CURRENCY_ID_LP_CELO
));

log::info!("{LOG_PREFIX} PRE UPGRADE: Finished");

Ok(vec![])
}

#[cfg(feature = "try-runtime")]
fn post_upgrade(_: Vec<u8>) -> Result<(), sp_runtime::DispatchError> {
assert!(orml_asset_registry::Metadata::<T>::contains_key(
CURRENCY_ID_LP_CELO
));

log::info!("{LOG_PREFIX} POST UPGRADE: Finished");
Ok(())
}
}
}
2 changes: 1 addition & 1 deletion runtime/development/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "development-runtime"
version = "0.10.41"
version = "0.10.42"
build = "build.rs"
authors.workspace = true
edition.workspace = true
Expand Down
4 changes: 2 additions & 2 deletions runtime/development/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: create_runtime_str!("centrifuge-devel"),
impl_name: create_runtime_str!("centrifuge-devel"),
authoring_version: 1,
spec_version: 1041,
spec_version: 1042,
impl_version: 1,
#[cfg(not(feature = "disable-runtime-api"))]
apis: RUNTIME_API_VERSIONS,
Expand Down Expand Up @@ -2039,7 +2039,7 @@ pub type Executive = frame_executive::Executive<
frame_system::ChainContext<Runtime>,
Runtime,
AllPalletsWithSystem,
crate::migrations::UpgradeDevelopment1041,
crate::migrations::UpgradeDevelopment1042,
>;

// Frame Order in this block dictates the index of each one in the metadata
Expand Down
2 changes: 1 addition & 1 deletion runtime/development/src/migrations.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ frame_support::parameter_types! {
pub const AnnualTreasuryInflationPercent: u32 = 3;
}

pub type UpgradeDevelopment1041 = (
pub type UpgradeDevelopment1042 = (
// Register LocalUSDC
runtime_common::migrations::local_currency::register::Migration<
super::Runtime,
Expand Down
Loading