Transaction Crafter configuration

Goal

Tx-Crafter is an Orchestrate worker responsible for:

  • Crafting the transaction payload;
  • Setting Gas Price of the transaction;
  • Setting Gas Limit of the transaction;
  • Recurring crediting Private Keys when needed.

It consumes messages from tx-crafting kafka topic and publishes to tx-nonce kafka topic.

Quick-Start

Configure application

The application can be configured through flags or environment variables, you can run the help run command line:

go run . help run
Usage:
  orchestrate tx-crafter run [flags]

Flags:
      --contract-registry-url string        URL (GRPC target) of the Contract Registry (See https://github.com/grpc/grpc/blob/master/doc/naming.md)
                                            Environment variable: "CONTRACT_REGISTRY_URL" (default "localhost:8080")
      --eth-client-url strings              Ethereum client url
                                            Environment variable: "ETH_CLIENT_URL"
      --faucet-blacklist strings            Blacklisted addresses (format <chainID1>@<Address1> <chainID2>@<Address2>)
                                            Environment variable: "FAUCET_BLACKLIST"
      --faucet-cooldown-time duration       Faucet minimum time to wait before crediting an address again
                                            Environment variable: "FAUCET_COOLDOWN_TIME" (default 1m0s)
      --faucet-credit-amount string         Amount to credit when calling Faucet (Wei in decimal format)
                                            Environment variable: "FAUCET_CREDIT_AMOUNT" (default "100000000000000000")
      --faucet-creditor-address strings     Addresses of Faucet on each chain (format <chainID>@<Address>)
                                            Environment variable: "FAUCET_CREDITOR_ADDRESS"
      --faucet-max-balance string           Faucet will stop crediting an address when it reaches this balance (Wei in decimal format)
                                            Environment variable: "FAUCET_MAX_BALANCE" (default "200000000000000000")
  -h, --help                                help for run
      --kafka-group string                  Address of Kafka server to connect to.
                                            Environment variable: "KAFKA_GROUP" (default "group-e2e")
      --kafka-tls-ca-cert-file string       CA cert file Path.
                                            Environment variable: "KAFKA_TLS_CA_CERT_FILE"
      --kafka-tls-client-cert-file string   Client Cert File Path.
                                            Environment variable: "KAFKA_TLS_CLIENT_CERT_FILE"
      --kafka-tls-client-key-file string    Client key file Path.
                                            Environment variable: "KAFKA_TLS_CLIENT_KEY_FILE"
      --kafka-tls-enabled                   Whether or not to use TLS when connecting to the broker (defaults to false).
                                            Environment variable: "KAFKA_TLS_ENABLED"
      --kafka-tls-insecure-skip-verify      Controls whether a client verifies the server's certificate chain and host name. If InsecureSkipVerify is true, TLS accepts any certificate presented by the server and any host name in that certificate. In this mode, TLS is susceptible to man-in-the-middle attacks. This should be used only for testing.
                                            Environment variable: "KAFKA_TLS_INSECURE_SKIP_VERIFY"
      --kafka-url strings                   URL (addresses) of Kafka server(s) to connect to.
                                            Environment variable: "KAFKA_URL" (default [localhost:9092])
      --topic-tx-crafter string             Kafka topic for envelopes waiting for their transaction payload crafted
                                            Environment variable: "TOPIC_TX_CRAFTER" (default "topic-tx-crafter")
      --topic-tx-nonce string               Kafka topic for envelopes waiting for their transaction nonce set
                                            Environment variable: "TOPIC_TX_NONCE" (default "topic-tx-nonce")
      --topic-tx-recover string             Kafka topic for envelopes waiting for their transaction recovered
                                            Environment variable: "TOPIC_TX_RECOVER" (default "topic-tx-recover")

Warning

♦ Default values can be changed by using environment variables.

♦ Environment variables will be overwritten by Flags values.

Tip

For more information regarding the Faucet Service please go to References/Faucet Service.