2016-05-11 6 views
0

私たちの大学では、現在、プロジェクトコースの一環としてオープンソースプロジェクトを開発中です。私たちは私たちの機関のために「私的な」余裕を維持しています。したがって、私たちはプロジェクトとは何の関係もないいくつかのチャネルを持っています。Travis CI Slack統合オープンソースプロジェクト

Travis CIは、失敗したビルドの組織のすべてのメンバーに電子メールを送信する機能をサポートしていないため、SlackとTravis CIを統合することを検討しています。

しかし、Traack < - >スラックトークンは「半秘密」なので、他のプロジェクトと並んでバージョン管理されている.travis.ymlの中にトークンを入れて、スラックをハイジャックさせたくありません。

トラビスCIとスラックの両方がトークンの暗号化を推奨しますが、制御されたバージョン.travis.ymlにトークンを含めることが安全かどうかは不明です。

Slackが完全にプロジェクト専用になっていない場合、Slack < - > Travis integrationを作成することは可能でしょうか?環境変数がセキュリティ上の懸念に対処するのに十分であるか?

答えて

2

はい、強く暗号化されたSlackトークンをtravis.ymlに格納することは認められています。 SlackにTravis-CIの統合を追加してトークンを取得したら、cliコマンド "encrypt"を使用して新しいセクションnotifications: slack: secureをtravis.ymlに挿入する必要があります。

あなたはスラックからトークンを使用して、ローカルのGitのレポフォルダから次のコマンドを実行します -

travis encrypt "myaccount:aa1BBBBBcCCCC111122" --add notifications.slack 

も参照してください:https://docs.travis-ci.com/user/notifications/#Slack-notifications

を共有チームについて言及したように、あなたは関連をターゲットにすることができますチャネル/チームプロジェクトの内部チャンネル、これらはtravis encrypt "account:token#channel" --add notifications.slack.roomsで暗号化され得ることを確認すること: -

notifications: 
    slack: '<account>:<token>#development' 

encryptiプライベート/パブリックキーはレポごとです。

暗号化がどのように実装されているかを参照することで、組織のセキュリティ基準を満たしていることを確認できます。 - https://github.com/travis-ci/travis.rb/blob/master/lib/travis/cli/encrypt.rb