Commit aa329dd1 authored by QM's avatar QM

add HT symbol

parent 3eec054c
......@@ -777,6 +777,9 @@ function StartDockerRelayerDeploy() {
# 部署合约 设置 bridgeRegistry 地址
InitAndOfflineDeploy
result=$(${CLIA} ethereum multisign set_symbol -s "HT")
cli_ret "${result}" "set_symbol"
# 设置离线多签数据
Chain33Cli=${MainCli}
initMultisignChain33Addr
......@@ -913,7 +916,7 @@ function DeployEvmxgo() {
function updateConfig() {
local symbol=$1
local bridgeTokenAddr=$2
tx=$(curl -s --data-binary '{"jsonrpc":"2.0","id":2,"method":"Chain33.CreateTransaction","params":[{"execer":"manage","actionName":"Modify","payload":{"key":"evmxgo-mint-'"${symbol}"'","value":"{\"address\":\"'"${bridgeTokenAddr}"'\",\"precision\":8,\"introduction\":\"symbol:'"${symbol}"', bridgeTokenAddr:'"${bridgeTokenAddr}"'\"}","op":"add","addr":""}}]}' -H 'content-type:text/plain;' "http://127.0.0.1:8901" | jq -r ".result")
tx=$(curl -s --data-binary '{"jsonrpc":"2.0","id":2,"method":"Chain33.CreateTransaction","params":[{"execer":"manage","actionName":"Modify","payload":{"key":"evmxgo-mint-'"${symbol}"'","value":"{\"address\":\"'"${bridgeTokenAddr}"'\",\"precision\":8,\"introduction\":\"symbol:'"${symbol}"', bridgeTokenAddr:'"${bridgeTokenAddr}"'\"}","op":"add","addr":""}}]}' -H 'content-type:text/plain;' "http://${docker_chain33_ip}:8901" | jq -r ".result")
if [ "${tx}" == "" ]; then
echo -e "${RED}update config create tx 1${NOC}"
exit 1
......@@ -926,7 +929,7 @@ function updateConfig() {
function configbridgevmxgoAddr() {
local bridgevmxgoAddr=$1
tx=$(curl -s --data-binary '{"jsonrpc":"2.0","id":2,"method":"Chain33.CreateTransaction","params":[{"execer":"manage","actionName":"Modify","payload":{"key":"bridgevmxgo-contract-addr","value":"{\"address\":\"'"${bridgevmxgoAddr}"'\"}","op":"add","addr":""}}]}' -H 'content-type:text/plain;' "http://127.0.0.1:8901" | jq -r ".result")
tx=$(curl -s --data-binary '{"jsonrpc":"2.0","id":2,"method":"Chain33.CreateTransaction","params":[{"execer":"manage","actionName":"Modify","payload":{"key":"bridgevmxgo-contract-addr","value":"{\"address\":\"'"${bridgevmxgoAddr}"'\"}","op":"add","addr":""}}]}' -H 'content-type:text/plain;' "http://${docker_chain33_ip}:8901" | jq -r ".result")
if [ "${tx}" == "" ]; then
echo -e "${RED}update config create tx 1${NOC}"
exit 1
......@@ -1098,23 +1101,23 @@ function AllRelayerMainTest() {
TestETH2Chain33Byc
TestETH2Chain33USDT
# Chain33Cli=${Para8901Cli}
# lockBty
# lockChain33Ycc
# lockEth
# lockEthByc
# lockEthUSDT
Chain33Cli=${Para8901Cli}
lockBty
lockChain33Ycc
lockEth
lockEthByc
lockEthUSDT
# 离线多签地址转入阈值设大
# offline_set_offline_token_Bty 100000000000000 10
# offline_set_offline_token_Chain33Ycc 100000000000000 10
# offline_set_offline_token_Eth 100000000000000 10
# offline_set_offline_token_EthByc 100000000000000 10
# offline_set_offline_token_EthUSDT 100000000000000 10
offline_set_offline_token_Bty 100000000000000 10
offline_set_offline_token_Chain33Ycc 100000000000000 10
offline_set_offline_token_Eth 100000000000000 10
offline_set_offline_token_EthByc 100000000000000 10
offline_set_offline_token_EthUSDT 100000000000000 10
EvmxgoBoss4xCLI="./evmxgoboss4x --rpc_laddr http://${docker_chain33_ip}:8901 --paraName user.p.para."
DeployEvmxgo
# TestETH2EVMToChain33
TestETH2EVMToChain33
Testethereum2EVMToChain33_byc
Testethereum2EVMToChain33_usdt
......
......@@ -46,6 +46,7 @@ func EthereumRelayerCmd() *cobra.Command {
TokenCmd(),
MultiSignEthCmd(),
TransferEthCmd(),
ConfigplatformTokenSymbolCmd(),
)
return cmd
......@@ -971,6 +972,33 @@ func ConfigOfflineSaveAccount(cmd *cobra.Command, args []string) {
ctx.Run()
}
//ConfigplatformTokenSymbolCmd ...
func ConfigplatformTokenSymbolCmd() *cobra.Command {
cmd := &cobra.Command{
Use: "set_symbol",
Short: "save config symbol",
Run: ConfigplatformTokenSymbol,
}
ConfigplatformTokenSymbolFlags(cmd)
return cmd
}
//ConfigplatformTokenSymbolFlags ...
func ConfigplatformTokenSymbolFlags(cmd *cobra.Command) {
cmd.Flags().StringP("symbol", "s", "ETH", "symbol")
_ = cmd.MarkFlagRequired("symbol")
}
//ConfigplatformTokenSymbol ...
func ConfigplatformTokenSymbol(cmd *cobra.Command, args []string) {
rpcLaddr, _ := cmd.Flags().GetString("rpc_laddr")
addr, _ := cmd.Flags().GetString("address")
var res rpctypes.Reply
ctx := jsonclient.NewRPCCtx(rpcLaddr, "Manager.ConfigplatformTokenSymbol", addr, &res)
ctx.Run()
}
//ConfigLockedTokenOfflineSaveCmd ...
func ConfigLockedTokenOfflineSaveCmd() *cobra.Command {
cmd := &cobra.Command{
......
......@@ -995,6 +995,11 @@ func (ethRelayer *Relayer4Ethereum) ConfigOfflineSaveAccount(addr string) (strin
return txhash, err
}
func (ethRelayer *Relayer4Ethereum) ConfigplatformTokenSymbol(symbol string) (string, error) {
txhash, err := ethtxs.ConfigplatformTokenSymbol(symbol, ethRelayer.clientSpec, ethRelayer.operatorInfo, ethRelayer.x2EthContracts)
return txhash, err
}
func (ethRelayer *Relayer4Ethereum) ConfigLockedTokenOfflineSave(addr, symbol, threshold string, percents uint32) (string, error) {
bn := big.NewInt(1)
bn, _ = bn.SetString(utils.TrimZeroAndDot(threshold), 10)
......
......@@ -760,6 +760,48 @@ func ConfigOfflineSaveAccount(addr string, client ethinterface.EthClientSpec, pa
return tx.Hash().String(), nil
}
func ConfigplatformTokenSymbol(symbol string, client ethinterface.EthClientSpec, para *OperatorInfo, x2EthContracts *X2EthContracts) (string, error) {
txslog.Info("ConfigplatformTokenSymbol", "symbol", symbol)
if nil == para {
return "", errors.New("no operator private key configured")
}
var prepareDone bool
var err error
defer func() {
if err != nil && prepareDone {
_, _ = revokeNonce(para.Address)
}
}()
auth, err := PrepareAuth(client, para.PrivateKey, para.Address)
if nil != err {
return "", err
}
prepareDone = true
tx, err := x2EthContracts.BridgeBank.BridgeBankTransactor.ConfigplatformTokenSymbol(auth, symbol)
if nil != err {
return "", err
}
sim, isSim := client.(*ethinterface.SimExtend)
if isSim {
fmt.Println("Use the simulator")
sim.Commit()
}
txslog.Info("ConfigplatformTokenSymbol", "tx.Hash()", tx.Hash().String())
err = waitEthTxFinished(client, tx.Hash(), "ConfigplatformTokenSymbol")
if nil != err {
return "", err
}
return tx.Hash().String(), nil
}
func ConfigLockedTokenOfflineSave(addr, symbol string, threshold *big.Int, percents uint8, client ethinterface.EthClientSpec, para *OperatorInfo, x2EthContracts *X2EthContracts) (string, error) {
txslog.Info("ConfigLockedTokenOfflineSave", "addr", addr, "symbol", symbol, "threshold", threshold, "percents", percents)
if nil == para {
......
......@@ -996,6 +996,23 @@ func (manager *Manager) ConfigOfflineSaveAccount(addr string, result *interface{
return nil
}
func (manager *Manager) ConfigplatformTokenSymbol(symbol string, result *interface{}) error {
manager.mtx.Lock()
defer manager.mtx.Unlock()
if err := manager.checkPermission(); nil != err {
return err
}
txhash, err := manager.ethRelayer.ConfigplatformTokenSymbol(symbol)
if nil != err {
return err
}
*result = rpctypes.Reply{
IsOk: true,
Msg: txhash,
}
return nil
}
func (manager *Manager) ConfigLockedTokenOfflineSave(config relayerTypes.ETHConfigLockedTokenOffline, result *interface{}) error {
manager.mtx.Lock()
defer manager.mtx.Unlock()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment