Skip to content

Commit

Permalink
chore: convert hardcoded envs to dynamic values
Browse files Browse the repository at this point in the history
  • Loading branch information
npty committed Aug 22, 2024
1 parent c32f90d commit 7c7db3f
Show file tree
Hide file tree
Showing 7 changed files with 27 additions and 16 deletions.
21 changes: 15 additions & 6 deletions common/cli-utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,18 @@

require('dotenv').config();

const { Option } = require('commander');
const fs = require('fs');
const { Option, Command } = require('commander');

// A path to the chain configuration files
const CHAIN_CONFIG_PATH = `${__dirname}/../axelar-chains-config/info`;

// A list of available chain environments which are the names of the files in the CHAIN_CONFIG_PATH
const CHAIN_ENVIRONMENTS = fs.readdirSync(CHAIN_CONFIG_PATH).map((chainName) => chainName.split('.')[0]);

const addBaseOptions = (program, options = {}) => {
program.addOption(
new Option('-e, --env <env>', 'environment')
.choices(['local', 'devnet', 'devnet-amplifier', 'devnet-verifiers', 'stagenet', 'testnet', 'mainnet'])
.default('testnet')
.makeOptionMandatory(true)
.env('ENV'),
new Option('-e, --env <env>', 'environment').choices(CHAIN_ENVIRONMENTS).default('testnet').makeOptionMandatory(true).env('ENV'),
);
program.addOption(new Option('-y, --yes', 'skip deployment prompt confirmation').env('YES'));
program.addOption(new Option('--parallel', 'run script parallely wrt chains'));
Expand Down Expand Up @@ -81,7 +84,13 @@ const addExtendedOptions = (program, options = {}) => {
return program;
};

if (require.main === module) {
addBaseOptions(new Command());
}

module.exports = {
CHAIN_CONFIG_PATH,
CHAIN_ENVIRONMENTS,
addBaseOptions,
addExtendedOptions,
};
3 changes: 2 additions & 1 deletion cosmwasm/deploy-contract.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
require('dotenv').config();
const { isNil } = require('lodash');

const { CHAIN_ENVIRONMENTS } = require('../common');
const { isNumber, printInfo, loadConfig, saveConfig, prompt } = require('../evm/utils');
const {
prepareWallet,
Expand Down Expand Up @@ -114,7 +115,7 @@ const programHandler = () => {

program.addOption(
new Option('-e, --env <env>', 'environment')
.choices(['local', 'devnet', 'stagenet', 'testnet', 'mainnet'])
.choices(CHAIN_ENVIRONMENTS)
.default('testnet')
.makeOptionMandatory(true)
.env('ENV'),
Expand Down
3 changes: 2 additions & 1 deletion cosmwasm/submit-proposal.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ const {
governanceAddress,
} = require('./utils');
const { isNumber, saveConfig, loadConfig, printInfo, prompt } = require('../evm/utils');
const { CHAIN_ENVIRONMENTS } = require('../common');
const {
StoreCodeProposal,
StoreAndInstantiateContractProposal,
Expand Down Expand Up @@ -251,7 +252,7 @@ const programHandler = () => {
// TODO: combine deploy-contract and submit-proposal options to remove duplicates
program.addOption(
new Option('-e, --env <env>', 'environment')
.choices(['local', 'devnet', 'devnet-amplifier', 'devnet-verifiers', 'stagenet', 'testnet', 'mainnet'])
.choices(CHAIN_ENVIRONMENTS)
.default('devnet-amplifier')
.makeOptionMandatory(true)
.env('ENV'),
Expand Down
3 changes: 2 additions & 1 deletion stellar/balances.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
const { Command, Option } = require('commander');
const { getWallet } = require('./utils');
const { loadConfig } = require('../evm/utils');
const { CHAIN_ENVIRONMENTS } = require('../common');
require('./cli-utils');

async function processCommand(options, _, chain) {
Expand All @@ -14,7 +15,7 @@ if (require.main === module) {

program.addOption(
new Option('-e, --env <env>', 'environment')
.choices(['local', 'devnet', 'stagenet', 'testnet', 'mainnet'])
.choices(CHAIN_ENVIRONMENTS)
.default('testnet')
.makeOptionMandatory(true)
.env('ENV'),
Expand Down
3 changes: 2 additions & 1 deletion stellar/generate-bindings.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ const { execSync } = require('child_process');
const { loadConfig } = require('../evm/utils');
const path = require('path');
const { getNetworkPassphrase } = require('./utils');
const { CHAIN_ENVIRONMENTS } = require('../common');
require('./cli-utils');

function processCommand(options, _, chain) {
Expand All @@ -29,7 +30,7 @@ function main() {

program.addOption(
new Option('-e, --env <env>', 'environment')
.choices(['local', 'devnet', 'stagenet', 'testnet', 'mainnet'])
.choices(CHAIN_ENVIRONMENTS)
.default('testnet')
.makeOptionMandatory(true)
.env('ENV'),
Expand Down
3 changes: 2 additions & 1 deletion stellar/operators.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ const { Contract, Address, nativeToScVal } = require('@stellar/stellar-sdk');
const { Command, Option } = require('commander');
const { getWallet, prepareTransaction, buildTransaction, sendTransaction, estimateCost } = require('./utils');
const { loadConfig, printInfo, parseArgs, validateParameters } = require('../evm/utils');
const { CHAIN_ENVIRONMENTS } = require('../common');
require('./cli-utils');

async function processCommand(options, _, chain) {
Expand Down Expand Up @@ -117,7 +118,7 @@ if (require.main === module) {

program.addOption(
new Option('-e, --env <env>', 'environment')
.choices(['local', 'devnet', 'stagenet', 'testnet', 'mainnet'])
.choices(CHAIN_ENVIRONMENTS)
.default('testnet')
.makeOptionMandatory(true)
.env('ENV'),
Expand Down
7 changes: 2 additions & 5 deletions sui/utils/cli-utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,11 @@ require('dotenv').config();

const { Option, InvalidArgumentError } = require('commander');
const { getUnitAmount } = require('./amount-utils');
const { CHAIN_ENVIRONMENTS } = require('../../common');

const addBaseOptions = (program, options = {}) => {
program.addOption(
new Option('-e, --env <env>', 'environment')
.choices(['local', 'devnet', 'devnet-amplifier', 'devnet-verifiers', 'stagenet', 'testnet', 'mainnet'])
.default('testnet')
.makeOptionMandatory(true)
.env('ENV'),
new Option('-e, --env <env>', 'environment').choices(CHAIN_ENVIRONMENTS).default('testnet').makeOptionMandatory(true).env('ENV'),
);
program.addOption(new Option('-y, --yes', 'skip deployment prompt confirmation').env('YES'));
program.addOption(new Option('--gasOptions <gasOptions>', 'gas options cli override'));
Expand Down

0 comments on commit 7c7db3f

Please sign in to comment.