genvid.toolbox.ConsulTemplate

class genvid.toolbox.ConsulTemplate(executable: typing.Union[pathlib.Path, str, NoneType] = None)

ベースクラス: object

consul-template の薄いラッパー API。

class OptionKind

ベースクラス: enum.Enum

consul-template に異なるオプションを記述するために使用します。

このラッパーの中には、オプションレベルでの強制が必要なものがあるため、この記述が必要になります。以下のような記述が存在します。

  • FLAG - オプションがフラグとしてサポートされます (値はなし)。
  • TAKES_VALUE - オプションはサポートされており、値が必要です。
  • DISABLED - オプションは直接使用できません。
FLAG = 0
TAKES_VALUE = 1
DISABLED = 2
SUPPORTED_OPTIONS = {'consul_ssl_verify': <OptionKind.FLAG: 0>, 'vault_ssl_cert': <OptionKind.TAKES_VALUE: 1>, 'template': <OptionKind.TAKES_VALUE: 1>, 'vault_ssl_verify': <OptionKind.FLAG: 0>, 'exec': <OptionKind.TAKES_VALUE: 1>, 'kill_signal': <OptionKind.TAKES_VALUE: 1>, 'vault_ssl_server_name': <OptionKind.TAKES_VALUE: 1>, 'consul_token': <OptionKind.TAKES_VALUE: 1>, 'vault_unwrap_token': <OptionKind.FLAG: 0>, 'vault_transport_dial_timeout': <OptionKind.TAKES_VALUE: 1>, 'vault_transport_tls_handshake_timeout': <OptionKind.TAKES_VALUE: 1>, 'consul_retry_attempts': <OptionKind.TAKES_VALUE: 1>, 'vault_retry_backoff': <OptionKind.TAKES_VALUE: 1>, 'exec_splay': <OptionKind.TAKES_VALUE: 1>, 'consul_ssl_cert': <OptionKind.TAKES_VALUE: 1>, 'consul_retry_max_backoff': <OptionKind.TAKES_VALUE: 1>, 'consul_ssl_key': <OptionKind.TAKES_VALUE: 1>, 'consul_auth': <OptionKind.TAKES_VALUE: 1>, 'consul_transport_tls_handshake_timeout': <OptionKind.TAKES_VALUE: 1>, 'vault_ssl_key': <OptionKind.TAKES_VALUE: 1>, 'exec_reload_signal': <OptionKind.TAKES_VALUE: 1>, 'exec_kill_signal': <OptionKind.TAKES_VALUE: 1>, 'exec_kill_timeout': <OptionKind.TAKES_VALUE: 1>, 'consul_ssl': <OptionKind.FLAG: 0>, 'vault_transport_dial_keep_alive': <OptionKind.TAKES_VALUE: 1>, 'dedup': <OptionKind.FLAG: 0>, 'vault_retry_attempts': <OptionKind.TAKES_VALUE: 1>, 'wait': <OptionKind.FLAG: 0>, 'consul_transport_dial_keep_alive': <OptionKind.TAKES_VALUE: 1>, 'max_stale': <OptionKind.TAKES_VALUE: 1>, 'consul_ssl_ca_cert': <OptionKind.TAKES_VALUE: 1>, 'consul_ssl_server_name': <OptionKind.TAKES_VALUE: 1>, 'vault_renew_token': <OptionKind.FLAG: 0>, 'vault_grace': <OptionKind.TAKES_VALUE: 1>, 'config': <OptionKind.TAKES_VALUE: 1>, 'once': <OptionKind.DISABLED: 2>, 'vault_ssl_ca_cert': <OptionKind.TAKES_VALUE: 1>, 'vault_ssl': <OptionKind.FLAG: 0>, 'dry': <OptionKind.FLAG: 0>, 'consul_retry_backoff': <OptionKind.TAKES_VALUE: 1>, 'vault_agent_token_file': <OptionKind.TAKES_VALUE: 1>, 'consul_ssl_ca_path': <OptionKind.TAKES_VALUE: 1>, 'vault_retry_max_backoff': <OptionKind.TAKES_VALUE: 1>, 'consul_transport_max_idle_conns_per_host': <OptionKind.TAKES_VALUE: 1>, 'reload_signal': <OptionKind.TAKES_VALUE: 1>, 'consul_transport_dial_timeout': <OptionKind.TAKES_VALUE: 1>, 'consul_transport_disable_keep_alives': <OptionKind.FLAG: 0>, 'vault_ssl_ca_path': <OptionKind.TAKES_VALUE: 1>, 'vault_token': <OptionKind.TAKES_VALUE: 1>, 'vault_transport_max_idle_conns_per_host': <OptionKind.TAKES_VALUE: 1>, 'vault_transport_disable_keep_alives': <OptionKind.FLAG: 0>, 'pid_file': <OptionKind.TAKES_VALUE: 1>, 'consul_retry': <OptionKind.FLAG: 0>, 'vault_addr': <OptionKind.TAKES_VALUE: 1>, 'vault_retry': <OptionKind.FLAG: 0>, 'version': <OptionKind.DISABLED: 2>, 'syslog_facility': <OptionKind.TAKES_VALUE: 1>, 'retry': <OptionKind.TAKES_VALUE: 1>, 'log_level': <OptionKind.TAKES_VALUE: 1>, 'consul_addr': <OptionKind.TAKES_VALUE: 1>, 'syslog': <OptionKind.FLAG: 0>}

consul-template で定義されたオプション。

オプションの使用方法を記述した ConsulTemplate.OptionKind をこの API に格納しています。

参考

詳細は ConsulTemplate.OptionKind を参照してください。

それぞれのオプションの目的については、 consul-template バイナリーを直接 -h オプションで実行して確認することをお勧めします。

executable

consul-template バイナリロケーション。

version

consul-template --version のバージョン文字列を取得。

オプションは他のすべてのメソッドで無効になっているため、この API を介してバージョンを取得する唯一の方法です。

once(*, env: typing.Union[typing.Mapping[str, str], NoneType] = None, **kwargs) → genvid.toolbox.consul_template.ConsulTemplateOutput

非デーモンで consul-template を実行。

consul-template は、 --once オプションが自動的に追加されたサブプロセスで起動されます。正確な動作は kwargs に渡されたオプションに依存します (コマンドの詳細については consul-template-h で確認できます)。

パラメータ:
  • env – 指定された環境でサブプロセスを実行します。テンプレートが環境変数に大きく依存している場合に特に便利です。 .. 注意:: スクリプトが全てのキー/値を自動的に文字列に変換します。
  • kwargsconsul-template によって認識され、ConsulTemplate.OptionKind.DISABLED としてマークされていないパラメータ。 .. seealso:: サポートされるオプションの一覧は consul-template -h の出力で確認してください。
例外:
戻り値:

ConsulTemplateOutput オブジェクトは、consul-template の実行後に返される状態を保持します。

バージョン 1.21.0 で追加.

class consul_template.ConsulTemplate

genvid.toolbox.ConsulTemplate の実装