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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kishin Yagami
December 03, 2018
Technology
2.9k
1
Share
CircleCI Orbsの紹介
* CircleCI Orbsとは
* Orbの書き方
* Orb Good Practices
Kishin Yagami
December 03, 2018
Other Decks in Technology
See All in Technology
AIが書いたコードを信じられない問題 〜レビュー負荷を下げるために変えたこと〜 / The AI Code Trust Gap: Reducing the Review Burden
bitkey
PRO
6
1.3k
AI時代 に増える データ活用先
takahal
0
220
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
4
1.7k
自立を加速させる神器 - EMOasis #11
stanby_inc
0
140
「SaaSの次の時代」に重要性を増すステークホルダーマネジメントの要諦 ~解像度を圧倒的に高めPdMの価値を最大化させる方法~
kakehashi
PRO
1
180
Good Enough Types: Heuristic Type Inference for Ruby
riseshia
0
210
Azure Static Web Apps の自動ビルドがタイムアウトしやすくなった状況に対応した件/global-azure2026
thara0402
0
400
弁護士ドットコム株式会社 エンジニア職向け 会社紹介資料
bengo4com
1
150
The Journey of Box Building
tagomoris
4
2.3k
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.3k
ハーネスエンジニアリングの概要と設計思想
sergicalsix
9
4.9k
プラットフォームエンジニアリングの実践 - AWS コンテナサービスで構築する社内プラットフォーム / AWS Containers Platform Meetup #1
literalice
1
130
Featured
See All Featured
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.6k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
94
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
130
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
520
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.6k
AI: The stuff that nobody shows you
jnunemaker
PRO
6
570
Facilitating Awesome Meetings
lara
57
6.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Mind Mapping
helmedeiros
PRO
1
150
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
110
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
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