From 10574f8ff001023b036b8c30f31aec8fd33611e1 Mon Sep 17 00:00:00 2001 From: Denis Kirillov Date: Mon, 3 Mar 2025 09:53:03 +0300 Subject: [PATCH] [#1607] adm/ape: Fix parsing policy-hash flag Signed-off-by: Denis Kirillov --- .../internal/modules/morph/ape/chains/list_user.go | 14 ++++++++++---- .../internal/modules/morph/ape/raw/list_targets.go | 7 ++++++- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/cmd/frostfs-adm/internal/modules/morph/ape/chains/list_user.go b/cmd/frostfs-adm/internal/modules/morph/ape/chains/list_user.go index fbbdb68e..d4d82254 100644 --- a/cmd/frostfs-adm/internal/modules/morph/ape/chains/list_user.go +++ b/cmd/frostfs-adm/internal/modules/morph/ape/chains/list_user.go @@ -180,12 +180,18 @@ func initReaders(cmd *cobra.Command) (*invoker.Invoker, util.Uint160, *ffsidclie commonCmd.ExitOnErr(cmd, "can't get NNS contract state: %w", err) policyHashStr, _ := cmd.Flags().GetString(policyHashFlag) - policyHash, err := helper.NNSResolveHash(inv, nnsCs.Hash, policyHashStr) - commonCmd.ExitOnErr(cmd, "can't resolve NNS policy contract: %w", err) + policyHash, err := util.Uint160DecodeStringLE(policyHashStr) + if err != nil { + policyHash, err = helper.NNSResolveHash(inv, nnsCs.Hash, policyHashStr) + commonCmd.ExitOnErr(cmd, "can't resolve NNS policy contract: %w", err) + } frostfsidHashStr, _ := cmd.Flags().GetString(frostfsidHashFlag) - frostfsidHash, err := helper.NNSResolveHash(inv, nnsCs.Hash, frostfsidHashStr) - commonCmd.ExitOnErr(cmd, "can't resolve NNS frostfsid contract: %w", err) + frostfsidHash, err := util.Uint160DecodeStringLE(policyHashStr) + if err != nil { + frostfsidHash, err = helper.NNSResolveHash(inv, nnsCs.Hash, frostfsidHashStr) + commonCmd.ExitOnErr(cmd, "can't resolve NNS frostfsid contract: %w", err) + } acc, err := wallet.NewAccount() commonCmd.ExitOnErr(cmd, "can't create new account: %w", err) diff --git a/cmd/frostfs-adm/internal/modules/morph/ape/raw/list_targets.go b/cmd/frostfs-adm/internal/modules/morph/ape/raw/list_targets.go index a66dd9a3..b0627e39 100644 --- a/cmd/frostfs-adm/internal/modules/morph/ape/raw/list_targets.go +++ b/cmd/frostfs-adm/internal/modules/morph/ape/raw/list_targets.go @@ -84,10 +84,15 @@ func initPolicyReader(cmd *cobra.Command) (*invoker.Invoker, util.Uint160) { commonCmd.ExitOnErr(cmd, "can't init rpc client: %w", err) inv := invoker.New(rpcCli, nil) + + policyHashStr, _ := cmd.Flags().GetString(policyHashFlag) + if policyHash, err := util.Uint160DecodeStringLE(policyHashStr); err == nil { + return inv, policyHash + } + nnsCs, err := helper.GetContractByID(management.NewReader(inv), 1) commonCmd.ExitOnErr(cmd, "can't get NNS contract state: %w", err) - policyHashStr, _ := cmd.Flags().GetString(policyHashFlag) policyHash, err := helper.NNSResolveHash(inv, nnsCs.Hash, policyHashStr) commonCmd.ExitOnErr(cmd, "can't resolve NNS policy contract: %w", err)