Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CircleCI APIでプチ効率化
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
sakuragawa
April 22, 2019
Programming
590
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CircleCI APIでプチ効率化
sakuragawa
April 22, 2019
More Decks by sakuragawa
See All by sakuragawa
PHP + GitHub + Azure Functions = ?
sakuragawa
0
260
今こそCakePHP3に乗り換えよう!/php_conference_fukuoka_2016
sakuragawa
0
1.1k
CakePHP2と3の違い
sakuragawa
8
4.9k
Other Decks in Programming
See All in Programming
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
170
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
520
どこまでゆるくて許されるのか
tk3fftk
0
490
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
130
광주소프트웨어마이스터고등학교 DevFest 특강 - 바이브 코딩 시대에서 주니어 개발자로 살아남는 방법
utilforever
1
130
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
110
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
500
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
220
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
190
継続モナドとリアクティブプログラミング
yukikurage
3
600
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
190
Featured
See All Featured
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
220
Optimizing for Happiness
mojombo
378
71k
Utilizing Notion as your number one productivity tool
mfonobong
4
420
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
220
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
450
The Language of Interfaces
destraynor
162
27k
Evolving SEO for Evolving Search Engines
ryanjones
0
240
Music & Morning Musume
bryan
47
7.3k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
310
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
240
Optimising Largest Contentful Paint
csswizardry
37
3.8k
Transcript
CircleCI APIで プチ効率化
自己紹介 ◦ 株式会社Fusic ◦ エンジニア マネージャー ◦ 櫻川 幸三 ◦
GitHub : https://github.com/kozo 2
“ CircleCI API使ってますか? 3
4 ユーザー プロジェクト ビルド・ジョブ キー Artifacts - ログインユーザー情報 - フォロープロジェクト一覧
- プロジェクトを新規フォロー - 最新ビルドの取得(全て、プロジェクト単位) - プロジェクトのキャッシュ削除 - ジョブ情報を取得 - ジョブの実行(シングル、ブランチ指定) - ジョブの再実行 - ビルドキャンセル - ビルドデータの取得 - ユーザー作成 - チェックアウトキーの一覧 - チェックアウトキーの取得・作成・削除 - SSHキーの取得・作成・削除 - Herokuキー - Artifactの取得 - Artifactのダウンロード API一覧
API一覧 5 ユーザー プロジェクト ビルド・ジョブ キー Artifacts - ログインユーザー情報 -
フォロープロジェクト一覧 - プロジェクトを新規フォロー - 最新ビルドの取得(全て、プロジェクト単位) - プロジェクトのキャッシュ削除 - ジョブ情報を取得 - ジョブの実行(シングル、ブランチ指定) - ジョブの再実行 - ビルドキャンセル - ビルドデータの取得 - ユーザー作成 - チェックアウトキーの一覧 - チェックアウトキーの取得・作成・削除 - SSHキーの取得・作成・削除 - Herokuキー - Artifactの取得 - Artifactのダウンロード
地味に便利 自動フォロー
7
“ 毎回する作業 × API = 自動化 8
Follow a New Project on CircleCI 9
10
11 GitHub GitHub Apps API Call Lambda Webhook
12 難しいんでしょ? お高いんでしょ?
13 curl -X POST https://circleci.com/api/v1.1/project/github/:username/:project/follow?circle-token=:token
自動フォロー ◦ メリット ◦ 簡単 ◦ GitHub全リポジトリに必ず連携 ◦ デメリット ◦
強制的に連携されるので、 連携不要なプロジェクトが混ざってい る場合は邪魔になる 14
CircleCIへの キューイングをコントロール
16 特定リポジトリのテスト実行時間がものすごく長い
18
19 テスト順調!
20 ちょっと遅い?
21 おそ。。。い。。。
22 。。。
23 詰んだ。。。
Recent Builds For A Single Project Trigger a new Build
with a Branch 24
25 GitHub API Gateway GitHub Actions DynamoDB Lambda Push POST
Write API Call Read
26
Tips ◦ CircleCIをPushで動かしたくない場合 ◦ 全ブランチをignoreに設定する 27 branches ignore: - /.*/
キューイング ◦ メリット ◦ 実行タイミングをコントロールできる ◦ デメリット ◦ 実装が少し大変 ◦
Performance Planを検討した方がいい 28
その他 ◦ 任意のタイミングでデプロイを実行する ◦ Artifactをダウンロードするコマンド作成 ◦ GitHub Actions等のworkflowsツールとの連携 ◦ 静的解析ツール等との連携
◦ etc… 29
まとめ ◦ API利用は意外と簡単 ◦ APIは使わなくても困らないけど、きっ と効率化できるポイントがあるはず ◦ APIを使うとCircleCIがより便利になる 30
ご清聴ありがとうございました Fusicではエンジニアを募集しています! 31