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 Orbsの紹介
Search
Kishin Yagami
December 03, 2018
Technology
1
2.9k
CircleCI Orbsの紹介
* CircleCI Orbsとは
* Orbの書き方
* Orb Good Practices
Kishin Yagami
December 03, 2018
Tweet
Share
Other Decks in Technology
See All in Technology
ざっくり学ぶ 『エンジニアリングリーダー 技術組織を育てるリーダーシップと セルフマネジメント』 / 50 minute Engineering Leader
iwashi86
9
4.4k
ピープルウエア x スタートアップ
operando
1
3.3k
AIでデータ活用を加速させる取り組み / Leveraging AI to accelerate data utilization
okiyuki99
6
1.8k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
2
270
GCASアップデート(202508-202510)
techniczna
0
340
短期間でRAGシステムを実現 お客様と歩んだ生成AI内製化への道のり
taka0709
1
190
設計に疎いエンジニアでも始めやすいアーキテクチャドキュメント
phaya72
27
18k
CloudComposerによる大規模ETL 「制御と実行の分離」の実践
leveragestech
0
180
パフォーマンスチューニングのために普段からできること/Performance Tuning: Daily Practices
fujiwara3
2
200
20251102 WordCamp Kansai 2025
chiilog
1
540
SREのキャリアから経営に近づく - Enterprise Risk Managementを基に -
shonansurvivors
1
730
Digitization部 紹介資料
sansan33
PRO
1
5.8k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
How to train your dragon (web standard)
notwaldorf
97
6.3k
Designing Experiences People Love
moore
142
24k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Transcript
CircleCI Orbsͷհ Rocro ιϑτΣΞΤϯδχΞ ീਆ (@ks888sk) 1
CircleCI Orbsͱ • CircleCIͷઃఆΛڞ༗͢ΔͨΊͷΈ • ઃఆΛOrbͱ͍͏୯ҐͰύοέʔδԽɾެ։ɾར༻ !2 (circleci.com)
Orbར༻ྫɿSlack௨ • Before (circleci.com/orbs/registry/orb/circleci/slack) !3
Orbར༻ྫɿSlack௨ • After !4
• Orbs registry: https://circleci.com/orbs/registry • ӈ্ͷʮShow all orbsʯΛԡ͢ͱɺશorb͕ग़Δ • ݸਓతʹؾʹͳͬͨorbs
Explore Orbs orb໊ ֓ཁ circleci/aws-s3 S3ͷΞοϓϩʔυ/μϯϩʔυ circleci/docker-publish Docker imageͷެ։ h-matsuo/github-release GitHubͷՌϦϦʔε postman/newman postmanͷ࣮ߦ urahiroshi/npm-audit npm auditͷ࣮ߦͱϨϙʔτ !5
Orbͷॻ͖ํ • “Hello world” orb (circleci.com/orbs/registry/orb/ks888/greeting) !6
Orbͷॻ͖ํ • “Hello world” orb (circleci.com/orbs/registry/orb/ks888/greeting) orbͷ֓ཁ (circleci.com/orbs/registry/) !7
Orbͷॻ͖ํ • “Hello world” orb (circleci.com/orbs/registry/orb/ks888/greeting) ͍ํ (circleci.com/orbs/registry/orb/ks888/greeting) !8
Orbͷॻ͖ํ • “Hello world” orb (circleci.com/orbs/registry/orb/ks888/greeting) !9 ίϚϯυ໊ ίϚϯυͷύϥϝʔλ ίϚϯυͷ࣮
࡞ͨ͠orb • Inspecode (rocro.com/inspecode) • ίʔυͷ੩తղੳαʔϏε • InspecodeͷղੳδϣϒΛ։࢝ˍྃΛͭorbΛ࡞ • github.com/rocro/orb-inspecode
Start new job Execute job Polling Orb Inspecode !10
Orb Good Practices #1 • ࣮ߦ࣌ؒΛݟੵΔ • ࣗͷϨϙδτϦ ≠ ϢʔβʔͷϨϙδτϦ
• ίʔυߦ͕10ʙ100ഒҧ͏͔͠Εͳ͍ɻɻ • ґଘϥΠϒϥϦͷ͕ʢུʣ • Ξοϓϩʔυ͢ΔόΠφϦͷαΠζ͕ʢུʣ • 10Λ͑ΔՄೳੑ͕͋Δ߹ɺճආࡦΛ༻ҙ͢Δͱྑͦ͞͏ • σϑΥϧτͩͱίϚϯυ͕10ͰλΠϜΞτ͢Δ !11
Orb Good Practices #1 • Inspecode orbͷ߹ • ίʔυߦ/ґଘϥΠϒϥϦ/ղੳ༰ͷӨڹΛड͚Δ •
max_waitύϥϝʔλΛ༻ҙ • no_output_timeoutʹઃఆ !12
Orb Good Practices #2 • ϝοηʔδ෦Λڧௐ͢Δ • ݟͯ΄͍͠Օॴ ≠ Ϣʔβʔ͕ݟͯ͠·͏Օॴ
!13
Orb Good Practices #2 • ϝοηʔδ෦Λڧௐ͢Δ • ݟͯ΄͍͠Օॴ ≠ Ϣʔβʔ͕ݟͯ͠·͏Օॴ
!14 ݟͯ΄͍͠ ϝοηʔδ
Orb Good Practices #2 • Inspecode orbͷରԠɿจࣈͷ৭͚ɺֆจࣈ !15
Orb Good Practices #3 • CI/CD • Inspecode orbͷ߹ Kick
CircleCI 1. Packaging orb 3. Publish to orb registry !16 2. Test CircleCI
Orb Good Practices #3 • 1. Packaging orb • circleci/orb-tools
orbͷpackδϣϒ !17
Orb Good Practices #3 • 2. Test • ςετέʔεྫ !18
ςετ༻ઃఆϑΝΠϧ ظ͢Δ݁Ռ ɾδϣϒ͕ޭ͢Δ͜ͱ ظ͢Δ݁Ռ ɾδϣϒ͕ࣦഊ͢Δ͜ͱ ςετ༻ઃఆϑΝΠϧ ࣮ߦ ࣮ߦ
Orb Good Practices #3 • 2. Test • ςετέʔε͝ͱʹorb-tools orbͷtest-in-buildsδϣϒΛ࣮ߦ
• δϣϒ෦ͰϩʔΧϧδϣϒ͕࣮ߦ͞ΕΔ • Ұ෦ɺ࣮ࡍͷδϣϒ࣮ߦڥͱҟͳΔ • ྫɿCIRCLE_PROJECT_USERNAMEͳͲͷڥม͕ͳ͍ • Inspecode orbͷ߹ɿ test-in-buildsδϣϒΛҰ෦मਖ਼ͨ͠ ͷΛར༻ !19
Orb Good Practices #3 • 3. Publish to orb registry
• circleci/orb-tools orbͷpublishδϣϒ !20
·ͱΊ • CircleCI Orbsͱ • Orbͷॻ͖ํ • Orb Good Practices
• #1 ࣮ߦ࣌ؒΛݟੵΔ • #2 ϝοηʔδ෦Λڧௐ͢Δ • #3 CI/CD !21
ࢀߟࢿྉ • CircleCI Orbs ೖ • https://blog.tsub.me/post/introducing-to-circleci-orbs/ • CircleCI orb
Perfect Testing • https://sue445.hatenablog.com/entry/2018/11/16/125251 • Testing orbs • https://github.com/CircleCI-Public/config-preview-sdk/blob/master/docs/ orbs-testing.md • circleci/orb-tools • https://circleci.com/orbs/registry/orb/circleci/orb-tools !22