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
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
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
ブラックボックス観測に基づくAI支援のプロトコルのリバースエンジニアリングと再現~AIを用いたリバースエンジニアリング~ @ SECCON 14 電脳会議 / Reverse Engineering and Reproduction of an AI-Assisted Protocol Based on Black-Box Observation @ SECCON 14 DENNO-KAIGI
chibiegg
0
160
[AEON TECH HUB #24] お客様の長期的興味の理解に向けて
alpicola
0
120
「Blue Team Labs Online」入門 - みんなで挑むログ解析バトル
v_avenger
0
120
Kaggleの経験が実務にどう活きているか / kaggle_findy
sansan_randd
7
1.3k
Security Diaries of an Open Source IAM
ahus1
0
210
越境する組織づくり ─ 多様性を前提にしたチームビルディングとリードの実践知
kido_engineer
2
140
マネージャー版 "提案のレベル" を上げる
konifar
21
14k
類似画像検索モデルの開発ノウハウ
lycorptech_jp
PRO
4
1k
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
5
1.1k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
11k
AIファーストを前提とした開発スタイルの変化
sbtechnight
0
180
EMからICへ、二周目人材としてAI全振りのプロダクト開発で見つけた武器
yug1224
5
480
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Code Reviewing Like a Champion
maltzj
528
40k
Un-Boring Meetings
codingconduct
0
220
Scaling GitHub
holman
464
140k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
430
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
630
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.1k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
100
GraphQLとの向き合い方2022年版
quramy
50
14k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
770
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
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