Basic TravisCI Information
Access
TravisCIは、Github、Bitbucket、Assembla、Gitlabなどの異なるgitプラットフォームと直接統合します。ユーザーにTravisCIにアクセス許可を与えて、TravisCIと統合したいリポジトリにアクセスさせるように求めます。
例えば、Githubでは以下の権限を求めます:
user:email
(読み取り専用)read:org
(読み取り専用)repo
: 公開および非公開のリポジトリと組織のコード、コミットステータス、コラボレーター、デプロイメントステータスへの読み取りおよび書き込みアクセスを許可します。
Encrypted Secrets
Environment Variables
TravisCIでは、他のCIプラットフォームと同様に、リポジトリレベルのシークレットを保存することが可能で、これらは暗号化されて保存され、ビルドを実行するマシンの環境変数に復号化されてプッシュされます。
シークレットが利用可能なブランチ(デフォルトではすべて)を指定することが可能で、またTravisCIがログに表示された場合にその値を隠すかどうか(デフォルトでは隠す)も指定できます。
Custom Encrypted Secrets
各リポジトリに対してTravisCIはRSAキーペアを生成し、秘密鍵を保持し、リポジトリにアクセスできる人に公開鍵を提供します。
以下のコマンドでリポジトリの公開鍵にアクセスできます:
次に、このセットアップを使用して秘密情報を暗号化し、それらを .travis.yaml
に追加できます。ビルドが実行されると秘密情報は復号化され、環境変数でアクセス可能になります。
この方法で暗号化された秘密情報は、設定の環境変数リストには表示されないことに注意してください。
Custom Encrypted Files
前述の方法と同様に、TravisCI ではファイルを暗号化し、ビルド中にそれらを復号化することもできます:
ファイルを暗号化する際に、2つのEnv Variablesがリポジトリ内に設定されることに注意してください:
TravisCI Enterprise
Travis CI Enterpriseは、Travis CIのオンプレミスバージョンであり、自分のインフラストラクチャにデプロイできます。Travis CIの「サーバー」バージョンと考えてください。Travis CIを使用すると、環境内で使いやすいContinuous Integration/Continuous Deployment (CI/CD)システムを有効にすることができ、自由に設定およびセキュリティを確保できます。
Travis CI Enterpriseは2つの主要な部分で構成されています:
TCI サービス(またはTCIコアサービス)、バージョン管理システムとの統合、ビルドの認証、ビルドジョブのスケジューリングなどを担当。
TCI Workerおよびビルド環境イメージ(OSイメージとも呼ばれる)。
TCIコアサービスには以下が必要です:
PostgreSQL11(またはそれ以降)のデータベース。
Kubernetesクラスターをデプロイするためのインフラストラクチャ。必要に応じてサーバークラスターまたは単一のマシンにデプロイ可能。
セットアップに応じて、RabbitMQなどのコンポーネントを自分でデプロイおよび設定することを検討するかもしれません。詳細はSetting up Travis CI Enterpriseを参照してください。
TCI Workerには以下が必要です:
Workerとリンクされたビルドイメージを含むdockerイメージをデプロイできるインフラストラクチャ。
特定のTravis CIコアサービスコンポーネントへの接続性 - 詳細はSetting Up Workerを参照してください。
デプロイされたTCI Workerおよびビルド環境OSイメージの量が、インフラストラクチャ内のTravis CI Enterpriseデプロイメントの総同時実行容量を決定します。
Last updated