LoginSignup
3
0

More than 1 year has passed since last update.

2021年のChangelogから振り返るCircleCI - その1

Last updated at Posted at 2021-11-30

はじめに

CircleCIの中の人、Senior Developer Advocateの舟木将彦と申します。

CircleCIでは、今年3月からChangelogを日本語化したものを公開しています。

CircleCI Advent Calendar 2021の初日ということで、本エントリでは、クラウド版のChangelogを中心に、CircleCI目線で一年を振り返ってみようかと思います。

2021年3月

[セキュリティ] 環境変数のローテーション

CircleCIのコンフィグ(config.yml)で、クラウド上のサービスやデータベースなどに接続する際のシークレットを指定する際、シークレットをコンフィグ中に直接記述するのではなく、環境変数を経由して引き渡すことが一般的に行われます。

環境変数は、プロジェクト(リポジトリ)ごとに設定する方法と、複数プロジェクトで共用されるような値であればコンテキストに設定して参照する方法の2つが用意されています。

これにより、コンフィグの中身やログ出力からシークレットを見ることはできなくなりますが、その一方で、定期的にシークレットを変更したいという場合に、これまではCircleCIのGUI画面から手作業で設定する(更新はできないので、古い環境変数を削除→新しい環境変数として再設定)しかなかったのが、CircleCI API(REST)経由で設定できるようになりました(つまりスクリプト等で自動更新しやすくなった)。

具体的な例は、DeNA @karupaneruraさんのこちらのブログに詳しいです。
- AWS IAM Userアクセスキーローテーションの自動化

[セキュリティ] APIトークンのローテーション

上記と関連して、CircleCIをAPI経由で呼び出して使用する際に、APIトークンを指定します。例えば、CircleCI CLIを初期設定するときにも指定します。

APIトークンはユーザごと(パーソナルAPIトークン)、および、プロジェクトごと(プロジェクトAPIトークン)に設定可能ですが、このAPIトークンもCircleCI API経由で更新できるようになりました。

2021年4月

[効率化] Orbのバージョンバッジサービスの提供

Orbを開発されている方であれば、GitHubリポジトリのREADME.mdに入れておきましょう的なバッジの提供開始です。
orbversion.png
- New Orb Version Badge Endpoint

ちなみにこれ以外のCircleCI公式バッジとしては、(新機能ではありませんが)ビルドステータス(成功 または 失敗)を表示するステータスバッジがあります。
svg-passed.png
svg-failed.png
ぜひこちらもREADME.mdに入れていただき、ご自身のプロジェクトがグリーンビルドであることをアピールいただければと思います。

[効率化] セットアップ・ワークフローによる動的コンフィグ

CircleCIで、あらかじめ書いておいた(=静的な)コンフィグを実行するだけでなく、呼び出すたびに異なるような状況(例えば、1リポジトリ内にいくつかのディレクトリを用意し、それぞれのディレクトリで異なる機能を実装している場合に、特定のディレクトリ配下のファイルが更新されたら、その機能だけをビルド、テスト、リリース、デプロイしたい場合)に、実行するコンフィグをその場で(別途用意しておいたファイルから)選択して組み立てるなど、その場で作成した(=動的な)コンフィグを実行することが可能になりました。

より具体的な例は、ご利用いただいた方に公開いただいているブログを参照いただくのがよいかと思います。

承前(もう少し続く)

一度には書ききれないので、何回かに分けて書いていこうと思います。なお、CircleCI Advent Calendarにご寄稿いただいた記事は目を通すようにしておりますので、「Tシャツ欲しい」「初日の出のマウスパッド欲しい」と本文中で言っていただければ、TwitterのDM等、ソーシャルアカウント経由でメッセージが送信できるようであれば)送付先を入力いただくURLをお送りいたしますので、奮ってご参加くださいませ(いただいた情報はグッズ発送以外の目的では使用いたしません)。
CircleCI-Tshirts.jfif
CircleCI-Mouse.jpeg

3
0
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
3
0