AR ホームベーカリー

オイラのアウトプット用ホームベーカリー!

Errbit の .env

docker-compose の中に MONGO_URL が書いてあるのに .env に記述があって「あぁ〜ん?」ってなったので、棚卸しを兼ねて確認してみた。

記述について

.env.defaulterrbit/docs/configuration.md の記述順で相違があるため、 .env.default の記述順に寄せてあります。

後半は力尽きて翻訳そのまま。

github.com

.env.default に記述のある項目

項目名 デフォルト (.env.default) 値 解説
ERRBIT_HOST errbit.example.com Errbit のホスト名、リンクに利用される
ERRBIT_PROTOCOL http Errbit のプロトコル、 http か https のどちらか
ERRBIT_PORT なし Errbit の動作ポート、特定ポートで動かしたい時に指定する?
ERRBIT_ENFORCE_SSL false Errbit の通信をすべて https に強制する
CONFIRM_RESOLVE_ERR true ドキュメント、 /config/load.rb 、いずれにも存在しない
ERRBIT_CONFIRM_ERR_ACTIONS true エラーの対処時に確認ダイアログを表示する
ERRBIT_USER_HAS_USERNAME false ユーザ名の利用を許可する、デフォルトは true とのことだが .env.default では false のため相違がある
ERRBIT_USE_GRAVATAR true Gravatar の有効化
ERRBIT_GRAVATAR_DEFAULT identicon Gravatar 有効化時のアイコン、 identicon電子メールのハッシュに基づく幾何学模様とのこと
ALLOW_COMMENTS_WITH_ISSUE_TRACKER true ドキュメント、 /config/load.rb 、いずれにも存在しない
SERVE_STATIC_ASSETS true アセットを Rails から提供するか否か
RailsRAILS_SERVE_STATIC_FILES とは別っぽい?ので、それぞれ設定をあわせる必要がありそう
SECRET_KEY_BASE f258ed69266dc8ad0ca79363c3d2f945c388a9c5920fc9a1ae99a98fbb619f135001c6434849b625884a9405a60cd3d50fc3e3b07ecd38cbed7406a4fccdb59c Rails の secret 設定
ERRBIT_EMAIL_FROM 'errbit@example.com' メール送信時の From アドレス
ERRBIT_EMAIL_AT_NOTICES '[1,10,100]' 同じエラーが発生した際、メール通知するための閾値
[0] を指定すると毎回メール通知を行う
この設定は Errbit 全体に適応される
ERRBIT_PER_APP_EMAIL_AT_NOTICES false ERRBIT_EMAIL_AT_NOTICES を利用せずに、WebUI からアプリケーション毎にメールの通知閾値を指定する
ERRBIT_NOTIFY_AT_NOTICES '[0]' 同じエラーが発生した際、通知用アプリケーションへ通知するための閾値
[0] を指定すると、毎回通知用アプリケーションへ通知を行う
ERRBIT_PER_APP_NOTIFY_AT_NOTICES false ERRBIT_NOTIFY_AT_NOTICES を利用せずに、WebUI からアプリケーション毎に通知アプリケーションの通知閾値を指定する
MONGO_URL 'mongodb://localhost' mongoDB の接続文字列 URL
デフォルトでは mongodb://localhost/errbit_<Rails.env> とのことで .env.default と相違がある
ERRBIT_LOG_LEVEL info ドキュメントに存在しないが /config/load.rb に存在するので、何ィ……?
ERRBIT_LOG_LOCATION STDOUT ドキュメントに存在しないが /config/load.rb に存在するので、何ィ……?
GITHUB_URL https://github.com Github の参照先 URL、 Github Enterprise を利用している場合はこの値で参照先を変更する
GITHUB_AUTHENTICATION true OAuth 経由の Github サインインを許可する
GITHUB_API_URL https://api.github.com GithubAPI 参照先 URL、 Github Enterprise を利用している場合はこの値で参照先を変更する
GITHUB_ACCESS_SCOPE '[repo]' ユーザーが github 経由でサインインするときに要求する OAuth スコープ
GITHUB_SITE_TITLE GitHub GitHub に使用するタイトル
この値は、GitHub を参照するときに Errbit UI に表示したい値です
DEVISE_MODULES '[database_authenticatable,recoverable,rememberable,trackable,validatable,omniauthable]'
GOOGLE_AUTHENTICATION true OAuth 経由の Google サインインを許可する
GOOGLE_SITE_TITLE Google Google で使用するタイトル
この値は、Google を参照するときに Errbit UI に表示したい値です

.env.default に記述が無いがドキュメントに存在する項目

項目名 デフォルト (.env.default) 値 解説
ERRBIT_ADMIN_EMAIL なし 初期管理者のメールアドレス、デフォルトは errbit@errbit.example.com
ERRBIT_ADMIN_PASSWORD なし 初期管理者のパスワード、デフォルトはランダム生成なので rake db:seed の出力を見ろとの事
ERRBIT_ADMIN_USER なし 初期管理者のユーザ名、デフォルトは errbit
ERRBIT_PROBLEM_DESTROY_AFTER_DAYS なし (rake errbit:clear_outdated 実行後に) エラーを保持する日数、デフォルトは nil (off)
GITHUB_CLIENT_ID なし Github アプリケーションのクライアント ID
GITHUB_SECRET なし Github アプリケーションのシークレットキー
GITHUB_ORG_ID なし Github 組織の ID
設定すると、Errbit は、ユーザー アカウントを持たずに Errbit にサインインする Github 組織内のユーザーのユーザー アカウントを作成します
GOOGLE_AUTO_PROVISION なし OAuth 経由でサインインした後の自動アカウント作成を許可する
GOOGLE_CLIENT_ID なし Google アプリケーションのクライアント ID
GOOGLE_SECRET なし Google アプリケーションのシークレットキー
GOOGLE_REDIRECT_URI なし アプリケーションのリダイレクト URI
デフォルトは the HTTP location of ERRBIT_HOST とのこと
GOOGLE_AUTHORIZED_DOMAINS なし サインインが許可されているアカウント ドメインのカンマ区切りのリスト
(GOOGLE_AUTO_PROVISION が true に設定されている場合に設定することをお勧めします)
EMAIL_DELIVERY_METHOD なし :smtp または :sendmail (Errbit による電子メールの送信方法に応じて)
SMTP_SERVER なし 送信 SMTP メッセージのサーバー アドレス
SMTP_PORT なし 送信 SMTP メッセージ用のサーバー ポート
SMTP_AUTHENTICATION なし SMTP 接続の認証方法
(http://guides.rubyonrails.org/action_mailer_basics.html#action-mailer-configuration を参照)
SMTP_USERNAME なし SMTP 認証のユーザー名
SENDGRID_USERNAME を設定することもできます
SMTP_PASSWORD なし SMTP 認証のパスワード
SENDGRID_PASSWORD を設定することもできます
SMTP_DOMAIN なし 送信 SMTP メッセージに設定する HELO ドメイン
SENDGRID_DOMAIN を使用することもできます
SMTP_ENABLE_STARTTLS_AUTO なし SMTP サーバーで STARTTLS が有効になっているかどうかを検出し、その使用を開始します
SMTP_OPENSSL_VERIFY_MODE なし TLS を使用する場合、OpenSSL が証明書をチェックする方法を設定できます
これは、自己署名証明書ワイルドカード証明書を検証する必要がある場合に非常に便利です
OpenSSL 検証定数の名前 ('none'、'peer'、'client_once'、'fail_if_no_peer_cert') を使用できます。
SENDMAIL_LOCATION なし sendmailへのパス
SENDMAIL_ARGUMENTS なし sendmail のカスタム引数
DEVISE_MODULES なし 有効にするモジュールを考案する
デフォルトは [database_authenticatable,recoverable,rememberable,trackable,validatable,omniauthable] とのこと

ちなみに

  • ドキュメントに存在しないが /config/load.rb に存在する
  • ドキュメント、 /config/load.rb いずれにも存在しない

みたいな、メンテわすれ……? みたいなヤツがいくつか存在する。

また、Ruby 2.7.6 + Rails 5.0.7? なので、バージョンアップしないと結構まずくて、しかし公式でそのあたりが止まっているのでヴェーッっとなっている。