circleci.vim
by
Yasuhiroki
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
circleci.vim CircleCI UserCommunity Meetup #6 A10 Lab Inc. yasuhiroki
Slide 2
Slide 2 text
⾃自⼰己紹介
Slide 3
Slide 3 text
Twitter
Slide 4
Slide 4 text
Vimmer
Slide 5
Slide 5 text
本題
Slide 6
Slide 6 text
Vimmer ですか?
Slide 7
Slide 7 text
config.yml 書いてますか?
Slide 8
Slide 8 text
circleci.vim
Slide 9
Slide 9 text
なぜ circleci.vim を作ったのか • config.yml をもっと効率よく書きたい • circleci config validate の出⼒力力が分かりづらい • 既存のプラグイン (vim-circleci) では満⾜足でき ない (省略略)
Slide 10
Slide 10 text
どこが間違っているでしょう?
Slide 11
Slide 11 text
circleci config validate $ circleci config validate Error: Config does not conform to schema: {:workflows {:ci {:jobs [{:shellcheck/check {:exclude disallowed-key}} nil nil nil nil nil nil nil]}}}
Slide 12
Slide 12 text
circleci config validate $ circleci config validate Error: Config does not conform to schema: {:workflows {:ci {:jobs [{:shellcheck/check {:exclude disallowed-key}} nil nil nil nil nil nil nil]}}} わからん
Slide 13
Slide 13 text
正解
Slide 14
Slide 14 text
正解 ひと⽬目で気づきたい
Slide 15
Slide 15 text
circleci.vim で ϋΠϥΠτをつける
Slide 16
Slide 16 text
typoしたとき
Slide 17
Slide 17 text
正しいとき
Slide 18
Slide 18 text
正しいとき ⾊色で気づける
Slide 19
Slide 19 text
ハイライト • ドキュメントに載っているキーに⾊色付け • ハイライトは4種類類 • type (string とか approval とか) • steps (checkout とか save_cache とか ) • << >> と {{ }} <- こだわりポイント • その他 (version とか commands とか)
Slide 20
Slide 20 text
<< >> と {{ }} • シェルのリダイレクトとの⾒見見間違いを防⽌止
Slide 21
Slide 21 text
補完機能 (オムニ補完)
Slide 22
Slide 22 text
TODO: snippets • jobs とか filter とかのテンプレートがあると 便便利利そう
Slide 23
Slide 23 text
使ってみてください
Slide 24
Slide 24 text
https://github.com/ yasuhiroki/circleci.vim
Slide 25
Slide 25 text
ご清聴ありがとうございました
Slide 26
Slide 26 text
これでいいのか?
Slide 27
Slide 27 text
本当に求めていたもの
Slide 28
Slide 28 text
間違った記述をしている ⾏行行を教えてくれる Linter が欲しい
Slide 29
Slide 29 text
本当に求めていたもの ※ 適当な合成です
Slide 30
Slide 30 text
circleci config validate を ハックすれば何とかなる?
Slide 31
Slide 31 text
circleci config validate の中身
Slide 32
Slide 32 text
GraphQLでリクエストしている
Slide 33
Slide 33 text
GraphQL の詳細仕様は... https://discuss.circleci.com/t/any-documentation-on-the-graphql-api/29913/2
Slide 34
Slide 34 text
レスポンスの中身を⾒見見てみる
Slide 35
Slide 35 text
レスポンスの中身を⾒見見てみる ⾏行行数の情報はなさそう
Slide 36
Slide 36 text
間違った記述をしている ⾏行行を教えてくれる Linter が欲しい
Slide 37
Slide 37 text
間違った記述をしている ⾏行行を教えてくれる Linter が欲しい 何か情報があれば教えて
Slide 38
Slide 38 text
ご清聴ありがとうございました