CircleCI Orbsを作成して公開してみる

CircleCI Orbs を作成してみたのでメモります。

circleci.com

大体は↓の Qiita を見れば理解できます。

qiita.com

circleci-cli のインストール

brew で一発です。

$ brew install circleci

CircleCI API token の作成

↓の URL から作成します。
https://circleci.com/account/api

API token の設定

~/.circleci/cli.ymlAPI token を set します。

$ circleci setup

Uncertified Orbs の利用許可設定

個人が公開した Orbs を利用するには、CircleCI の Security Settings から使用を許可する必要があります。 Orbs を公開するだけならこの設定は不要です。CircleCI Organization 単位での許可です。

f:id:enokawaa:20190915171117p:plain

namespace の作成

circleci コマンドで namespace を作成します。個人で公開するなら GitHub のユーザ名の方が無難です。

$ circleci namespace create enokawa github enokawa

僕は誤って sample-orb という名前で namepace を作成してしまいました。 namespace の rename や削除はユーザ側ではできないため、CircleCI サポートへ rename の依頼を出しました。

Orbs の作成

<namespace>/<orb-name> で Orbs を作成します。この時点ではまだ Orbs は公開されません。

$ circleci orb create enokawa/sample-orb

orb.yml の作成

適当に書きます。

$ vim orb.yml

orb.yml の Validate

Orbs の公開前に orb.yml を Validate することができます。便利。

$ circleci orb validate orb.yml

Orbs の公開

タグをつけて公開します。

$ circleci orb publish orb.yml enokawa/sample-orb@0.0.1

公開した Orbs はこちら。

enokawa/sample-orb

github.com

CircleCI Orbs 便利

簡単ではありますが、CircleCI Orbs の作成から公開までをまとめました。いま関わっているプロジェクトで CircleCI から ECR に Docker Image の Push、ECS のデプロイするために Orbs を活用しています。GitHub にコードも公開されているので今後は Contribute していく所存です。