LoginSignup
13
13

More than 5 years have passed since last update.

認証情報などをGitHubにはpushせず、環境変数からファイルを生成する

Posted at

やりたいこと

GitHubには、認証情報などの秘密の情報をpushしたくない。(個人プロジェクトはPublicだし)
だけど、CircleCIから自動デプロイを行いたい。

具体的には、noboru-i/backlog-to-chatworkを作った時に、CircleCIからデプロイしたくなったけど、ChatworkのAPI keyとか、Backlogのドメインとかをpushしたくなかった。
CircleCIなら、環境変数は簡単に設定できるので、そこから取得、ファイルの置換えをしたい。

作ったもの

env2file

何が出来るか

指定されたファイルから、特定の文字列を検出し、環境変数の値と置き換えます。

例えば、環境変数に下記を設定しておき、

  • CHATWORK_API_KEY : "999999"
  • CHATWORK_ROOM_ID : "1234"

下記のようなファイルがあった場合、

default.json
{
  "chatwork": {
    "apiKey": "INPUT_YOUR_CHATWORK_API_KEY",
    "roomId": "INPUT_YOUR_CHATWORK_ROOM_ID"
  }
}
env2file default.json

と実行すると、入力したファイルが下記のように変換されます。

default.json
{
  "chatwork": {
    "apiKey": "999999",
    "roomId": "1234"
  }
}
13
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
13