Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ドライバー

このドキュメントは自動生成されています。手動で編集しないでください。

生成コマンド: go run scripts/gen-docs.go

LocalFsConfig

LocalFsConfig はローカルファイルシステムの設定

ファイル: local.go

パラメータ必須デフォルト説明
rootstring.ルートディレクトリ。このパスより上位には遡れない
transformstringjson読み込み時の変換方法(dotenv, json など)

設定例:

localfs:
  driver: local
  args:
    root: ./config
    transform: dotenv

S3FsConfig

S3FsConfig は S3 ファイルシステムの設定

ファイル: s3.go

パラメータ必須デフォルト説明
bucketstring-S3 バケット名
regionstring-AWS リージョン
access_key_idstring-AWS アクセスキー ID
secret_access_keystring-AWS シークレットアクセスキー
session_tokenstring-AWS セッショントークン(一時的な認証情報使用時)
endpointstring-カスタムエンドポイント(MinIO など S3 互換ストレージ用)
use_path_styleboolfalseパススタイルアクセスを使用(S3 互換ストレージで必要な場合あり)
transformstring-読み込み時の変換方法(dotenv, json など)

設定例:

s3fs:
  driver: s3
  args:
    bucket: my-config-bucket
    region: ap-northeast-1
    access_key_id: AKIAIOSFODNN7EXAMPLE
    secret_access_key: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
    session_token: FwoGZXIvYXdzE...
    endpoint: http://localhost:9000
    use_path_style: true
    transform: dotenv

VaultConfig

VaultConfig は HashiCorp Vault ファイルシステムの設定

ファイル: vault.go

パラメータ必須デフォルト説明
addrstring-Vault サーバーのアドレス
tokenstring-Vault 認証トークン
namespacestring-Vault 名前空間(Enterprise 機能)
mountstringsecretKV シークレットエンジンのマウントパス
kv_verint2KV シークレットエンジンのバージョン(現在は 2 のみサポート)
versionint0取得するシークレットのバージョン(0 = 最新)
fieldstring-取得する特定のフィールド名(省略時は全フィールド)
prettyboolfalseJSON 出力を整形するか

設定例:

vault:
  driver: vault
  args:
    addr: http://localhost:8200
    token: root
    namespace: admin
    mount: secret

RestFsConfig

RestFsConfig は REST ファイルシステムの設定

ファイル: rest.go

パラメータ必須デフォルト説明
base_urlstring-ベース URL
auth_typestring-認証タイプ(bearer, basic)
tokenstring-Bearer トークン
token_filestring-Bearer トークンファイルパス
usernamestring-Basic 認証ユーザー名
passwordstring-Basic 認証パスワード
ca_filestring-CA 証明書ファイルパス
insecureboolfalseTLS 証明書検証をスキップ

設定例:

restfs:
  driver: rest
  args:
    base_url: https://api.example.com
    auth_type: bearer
    token_file: /var/run/secrets/token

DbFsConfig

DbFsConfig はデータベースファイルシステムの設定

ファイル: db.go

パラメータ必須デフォルト説明
connection_stringstring-データベース接続文字列
driverstring-データベースドライバー(postgres, mysql, sqlite)。省略時は接続文字列から自動判定
querystring-SQL クエリ。{key} と {namespace} がプレースホルダーとして使用可能
namespacestringdefaultデフォルトの namespace 値

設定例:

dbfs:
  driver: db
  args:
    connection_string: postgres://user:pass@localhost/db
    query: SELECT value FROM config WHERE key = {key}
    namespace: production

NatsFsConfig

NatsFsConfig は NATS JetStream KV ファイルシステムの設定

ファイル: nats.go

パラメータ必須デフォルト説明
urlstring-NATS サーバーの接続 URL
bucketstring-JetStream KV バケット名
tokenstring-NATS 認証トークン
userstring-NATS ユーザー名
passwordstring-NATS パスワード
creds_filestring-NATS 認証情報ファイルパス

設定例:

natsfs:
  driver: nats
  args:
    url: nats://localhost:4222
    bucket: config

RedisFsConfig

RedisFsConfig は Redis ファイルシステムの設定

ファイル: redis.go

パラメータ必須デフォルト説明
addrstring-Redis サーバーのアドレス
passwordstring-Redis 認証パスワード
dbint0Redis データベース番号
prefixstring-キーのプレフィックス

設定例:

redisfs:
  driver: redis
  args:
    addr: localhost:6379
    db: 0
    prefix: config:

GitFsConfig

GitFsConfig は Git ファイルシステムの設定

ファイル: git.go

パラメータ必須デフォルト説明
urlstring-Git リポジトリ URL
refstringmainブランチまたはタグ名

設定例:

gitfs:
  driver: git
  args:
    url: https://github.com/example/config.git
    ref: main

EnvFsConfig

EnvFsConfig は環境変数ファイルシステムの設定

ファイル: env.go

パラメータ必須デフォルト説明
include[]string-許可する環境変数キーのリスト。未指定で全許可
exclude[]string-除外する環境変数キーのリスト。include より優先

設定例:

envfs:
  driver: env
  args:
    include: APP_NAME,DATABASE_URL
    exclude: SECRET_KEY,PASSWORD

BitwardenFsConfig

BitwardenFsConfig は Bitwarden Secrets Manager ファイルシステムの設定

ファイル: bitwarden.go

パラメータ必須デフォルト説明
access_tokenstring-Bitwarden アクセストークン
organization_idstring-Bitwarden 組織 ID
project_idstring-フィルタ対象のプロジェクト ID

設定例:

bitwardenfs:
  driver: bitwarden
  args:
    access_token: 0.48c78342-...
    organization_id: a1b2c3d4-...
    project_id: e325ea69-...

ToolFsConfig

ToolFsConfig は Tool ファイルシステムの設定 設定パラメータは不要です。 利用可能なパス: uuid7, uuid4, now, timestamp, random/hex/{bytes}, random/base64/{bytes}, password

ファイル: tool.go