"github.com/spf13/cobra"
jww "github.com/spf13/jwalterweatherman"
+ "encoding/hex"
"github.com/bytom/crypto/ed25519/chainkd"
"github.com/bytom/util"
)
createAssetCmd.PersistentFlags().IntVarP(&assetQuorum, "quorom", "q", 1, "quorum must be greater than 0 and less than or equal to the number of signers")
createAssetCmd.PersistentFlags().StringVarP(&assetToken, "access", "a", "", "access token")
createAssetCmd.PersistentFlags().StringVarP(&assetDefiniton, "definition", "d", "", "definition for the asset")
+ createAssetCmd.PersistentFlags().StringVarP(&issuanceProgram, "issueprogram", "i", "", "issue program for the asset")
listAssetsCmd.PersistentFlags().StringVar(&assetID, "id", "", "ID of asset")
}
var (
- assetID = ""
- assetQuorum = 1
- assetToken = ""
- assetDefiniton = ""
+ assetID = ""
+ assetQuorum = 1
+ assetToken = ""
+ assetDefiniton = ""
+ issuanceProgram = ""
)
var createAssetCmd = &cobra.Command{
Use: "create-asset <alias> <xpub(s)>",
Short: "Create an asset",
- Args: cobra.MinimumNArgs(2),
+ Args: cobra.RangeArgs(1, 5),
Run: func(cmd *cobra.Command, args []string) {
var ins assetIns
ins.Definition = map[string]interface{}{definition[0]: definition[1]}
}
+ if issuanceProgram != "" {
+ issueProg, err := hex.DecodeString(issuanceProgram)
+ if err != nil {
+ jww.ERROR.Println(err)
+ os.Exit(util.ErrLocalExe)
+ }
+ ins.IssuanceProgram = issueProg
+ }
+
data, exitCode := util.ClientCall("/create-asset", &ins)
if exitCode != util.Success {
os.Exit(exitCode)