質問

使いたいです Travis-ci 私の一人のために プロジェクト.

このプロジェクトはAPIラッパーであるため、多くのテストは秘密のAPIキーの使用に依存しています。ローカルでテストするために、環境変数として保存するだけです。トラビスでこれらのキーを使用する安全な方法は何ですか?

役に立ちましたか?

解決

Travisには、環境変数を暗号化する機能があります(「環境変数の暗号化」)。これは、秘密のAPIキーを保護するために使用できます。 Heroku APIキーにこれを正常に使用しました。

あなたがしなければならないのは、Travis Gemをインストールし、あなたが望む文字列を暗号化し、暗号化された文字列をあなたに追加することです .travis.yml. 。暗号化は、1つのリポジトリに対してのみ有効です。 travis コマンドは、リポジトリの公開キーを取得し、ビルド中に文字列を復号化できます。

gem install --user travis
travis encrypt MY_SECRET_ENV=super_secret -r my_username/my_repo

これにより、次の出力が得られます。

Please add the following to your .travis.yml file:

  secure: "OrEeqU0z6GJdC6Sx/XI7AMiQ8NM9GwPpZkVDq6cBHcD6OlSppkSwm6JvopTR\newLDTdtbk/dxKurUzwTeRbplIEe9DiyVDCzEiJGfgfq7woh+GRo+q6+UIWLE\n3nowpI9AzXt7iBhoKhV9lJ1MROrnn4DnlKxAEUlHTDi4Wk8Ei/g="

他のヒント

によると これ Travis CIのドキュメントでは、次のように言われています。

HerokuとTravis CIのコマンドラインクライアントの両方がインストールされている場合は、プロジェクトディレクトリから次のコマンドを実行して、キーを取得し、暗号化して.travis.ymlに追加できます。

travis encrypt $(heroku auth:token) --add deploy.api_key

参照する 以下 OSに従ってHerokuクライアントをインストールするためのチュートリアル

秘密を定義することもできます リポジトリ設定の変数:

リポジトリ設定で定義されている変数は、すべてのビルドで同じであり、古いビルドを再起動すると最新の値を使用します。これらの変数は、フォークで自動的に使用できません。

リポジトリ設定の変数を定義します。

  • リポジトリごとに異なります。
  • サードパーティの資格情報などの機密データが含まれています。

リポジトリ設定の変数を定義するには、ログインしていることを確認し、問題のリポジトリに移動し、COGメニューから[設定]を選択し、[環境変数]セクションの[新しい変数を追加]をクリックします。

別のAPIキーセットを使用して、同じように行います。 Travis Boxはビルドランのためにセットアップされ、ビルドが終了した後、再び完全に取り壊されます。ビルド中にボックスにルートアクセスできるので、必要なことは何でもできます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top