Previous << Get a Transaction
Next >> Build a Complex Transaction
Flow CLI には、承認者アカウント、支払者アカウント、提案者アカウントを指定するオプションと一緒にトランザクションを構築するコマンドが用意されています。
build
コマンドは署名を作成せず、その代わりにsign
およびsend-signed
コマンドと併用するように設計されています。
この機能は次の順序で使用します。
- 以下のコマンド(
build
)を使用してトランザクションを構築します。 -
sign
コマンドを使用して、ビルドのプロセスで指定した各アカウントで署名します。 -
send-signed
コマンドを使用して、署名済みのトランザクションをFlowネットワークに送信します。
flow transactions build <code filename> [<argument> <argument>...] [flags]
Example Usage
> flow transactions build ./transaction.cdc "Meow" \
--authorizer alice \
--proposer bob \
--payer charlie \
--filter payload --save built.rlp
ID e8c0a69952fbe50a66703985e220307c8d44b8fa36c76cbca03f8c43d0167847
Payer e03daebed8ca0615
Authorizers [f3fcd2c1a78f5eee]
Proposal Key:
Address 179b6b1cb6755e31
Index 0
Sequence 1
No Payload Signatures
No Envelope Signatures
Arguments (1):
- Argument 0: {"type":"String","value":"Meow"}
Code
transaction(greeting: String) {
let guest: Address
prepare(authorizer: &Account) {
self.guest = authorizer.address
}
execute {
log(greeting.concat(",").concat(self.guest.toString()))
}
}
Payload:
f9013df90138b8d17472616e...73616374696f6e286eeec0c0
ファイルからのJSON形式の引数の例:
> flow transactions build tx1.cdc --args-json "$(cat args.json)"
Arguments
Code Filename
- Name:
filename
- Valid inputs: Any filename and path valid on the system.
最初の引数は、実行するトランザクションを含んだCadenceファイルへのパスです。
Arguments
- Name:
argument
- Valid inputs: valid cadence values matching argument type in transaction code.
ソースコードの型に一致する引数の値を、同じ順序で入力して渡します。複雑な引数の値の渡し方については、send transactionのドキュメントを参照してください。
Flags
Payer
- Flag:
--payer
- Valid Inputs: Flow address or account name from configuration.
- Default: service account
トランザクションに署名する際にトランザクションフィーの支払者として使用するアカウントの名前を指定します。支払者の詳細については、こちらをご覧ください。
Proposer
- Flag:
--proposer
- Valid inputs: Flow address or account name from configuration.
- Default: service account
トランザクションに署名する際に提案者として使用するアカウントの名前を指定します。アカウントはFlowの設定内で定義する必要があります。
Proposer Key Index
- Flag:
--proposer-key-index
- Valid inputs: number of existing key index
- Default: 0
提案者アカウントのキーインデックスを指定します。
Authorizer
- Flag:
--authorizer
- Valid Inputs: Flow address or account name from configuration.
- Default: service account
トランザクションに追加する承認者のアドレス。承認者の詳細については、こちらをご覧ください。
Arguments JSON
- Flag:
--args-json
- Valid inputs: arguments in JSON-Cadence form.
- Example:
flow transactions build ./tx.cdc '[{"type": "String", "value": "Hello World"}]'
Cadenceトランザクションに渡される引数はCadence JSONフォーマットで指定します。Cadence JSONフォーマットは、type
およびvalue
のキーを含みます。それぞれこちらで説明されています。
Gas Limit
- Flag:
--gas-limit
- Valid inputs: an integer greater than zero.
- Default:
1000
このトランザクションのガスリミットを指定します。
Host
- Flag:
--host
- Valid inputs: an IP address or hostname.
- Default:
127.0.0.1:3569
(Flow Emulator)
コマンドの実行に使用する Access API のホスト名を指定します。
Network Key
- Flag:
--network-key
- Valid inputs: ホストの有効なネットワーク公開鍵の 16 進数文字列
コマンドを実行する際に、セキュアなGRPCクライアントを作成するために使用するAccess APIのネットワーク公開鍵を指定します。
Network
- Flag:
--network
- Short Flag:
-n
- Valid inputs: the name of a network defined in the configuration (
flow.json
) - Default:
emulator
どのネットワークに対してコマンドを実行するのかを指定します。
Include Fields
- Flag:
--include
- Valid inputs:
code
,payload
,signatures
出力結果に含めるフィールドを指定します。テキスト出力のみに適用されます。
Filter
- Flag:
--filter
- Short Flag:
-x
- Valid inputs: case-sensitive name of the result property.
結果から、唯一の値として取得したいプロパティの名前を指定します。
Output
- Flag:
--output
- Short Flag:
-o
- Valid inputs:
json
,inline
コマンド結果のフォーマットを指定します。
Save
- Flag:
--save
- Short Flag:
-s
- Valid inputs: valid filename
結果を保存したいファイル名を指定してください。
Log
- Flag:
--log
- Short Flag:
-l
- Valid inputs:
none
,error
,debug
- Default:
info
ログレベルを指定します。コマンド実行中に表示する出力を制御します。
Configuration
- Flag:
--config-path
- Short Flag:
-f
- Valid inputs: valid filename
設定ファイルへのパスを指定します。-f
フラグを複数回使用して複数の設定ファイルをマージすることもできます。
Version Check
- Flag:
--skip-version-check
- Default:
false
低速な接続を避けて処理を高速化するために、起動時のバージョンチェックをスキップします。
Last updated on Dec 9, 2024 by Alex
翻訳元
Flow BlockchainのCadence version1.0ドキュメント (Build a Transaction)