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.7k
CircleCI Orbsの紹介
* CircleCI Orbsとは
* Orbの書き方
* Orb Good Practices
Kishin Yagami
December 03, 2018
Tweet
Share
Other Decks in Technology
See All in Technology
The CloudCompare project by Dr. Daniel Girardeau-Montaut
kentaitakura
0
520
プラットフォームってつくることより計測することが重要なんじゃないかという話 / Platform Engineering Meetup #8
taishin
0
320
日本におけるデータエンジニアリングのこれまでとこれから
foursue
16
4k
Cloud Native Java with Spring Boot (CNCF Aarhus, April 2024)
thomasvitale
1
150
Databricks:『生成AI World Cup』のご案内
databricksjapan
2
160
Kernel MemoryでAzure OpenAI Serviceとお手軽データソース連携
mitsuzono
1
150
開発生産性向上サービスを作るFindyが自分たちで開発生産性を爆上げした組織づくりの歩み / Findy's path to boosting its own development productivity 2024-04-17
ma3tk
3
460
Databricks における 『MLOps』
databricksjapan
2
160
SREとその組織類型
tatsuo48
9
1.6k
テストプロセスで大事にしていること #jasstnano
makky_tyuyan
0
150
Google Cloud の AI を支える裏側のインフラを垣間見る!
maroon1st
0
320
Oracle Cloud Infrastructure:2024年4月度サービス・アップデート
oracle4engineer
PRO
1
170
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
646
58k
The Mythical Team-Month
searls
215
42k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Raft: Consensus for Rubyists
vanstee
132
6.3k
Why You Should Never Use an ORM
jnunemaker
PRO
50
8.6k
What's new in Ruby 2.0
geeforr
337
31k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
6.9k
Product Roadmaps are Hard
iamctodd
43
9.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
243
20k
Clear Off the Table
cherdarchuk
83
310k
Teambox: Starting and Learning
jrom
128
8.4k
[RailsConf 2023] Rails as a piece of cake
palkan
22
3.9k
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