CircleCIからrelease tagをnpm publishする
API token
npmjs.com上で発行し
CircleCIの環境変数にセットしておく
色々検討した結果、やめた
権限管理が分散してしまう
tagをpushできる人がpublishできる
その設定はgithubにある
実際にnpm publishする人
事前にCircleCI上にセットしたtokenの持ち主
暗黙の前提知識が多い
ここにpushしたらこっちにwebhookが飛んで、 vから始まるtagだったらpublishされるよ ローカルからpublishしないでね
特定のサービス上でしか実行できない設定フォーマットで書いたよ
長期間の運用に耐えられなそう
特に上の2点は、数年間の運用や、会社の人間の入れ替わりでうまく回らなくなりそうに思えたshokai.icon
ローカルからもpublishできてしまう
ついなんとなくローカルからnpm publishしてしまう事を防止する手段が無い
それからgithubにpushすると、CircleCIからのnpm publishが当然コケる
npmjs.comの二段階認証が、token毎ではなくuserアカウント毎にしか設定できない CircleCI上にセットしたtokenの持ち主は、npmjs.comの二段階認証のタイミングをAuthorization and Publishingに設定できなくなってしまう
https://gyazo.com/4f198f85000aa2a595767624806e6091
yamlでプログラムの様な分岐処理を書く事に抵抗がある testの最後の工程で行われる簡単なパターンマッチ処理なのに、非常に冗長になっている
可読性がとても低い
どうやっても納得できなかったshokai.icon
もっと簡単な方法がある