Upgrade to Pro — share decks privately, control downloads, hide ads and more …

circleci.vim

Yasuhiroki
August 23, 2019

 circleci.vim

CircleCI UserCommunity Meetup Tokyo #6 LT

Yasuhiroki

August 23, 2019
Tweet

More Decks by Yasuhiroki

Other Decks in Programming

Transcript

  1. circleci.vim
    CircleCI UserCommunity Meetup #6
    A10 Lab Inc.
    yasuhiroki

    View full-size slide

  2. ⾃自⼰己紹介

    View full-size slide

  3. Vimmer ですか?

    View full-size slide

  4. config.yml 書いてますか?

    View full-size slide

  5. circleci.vim

    View full-size slide

  6. なぜ circleci.vim を作ったのか
    • config.yml をもっと効率よく書きたい
    • circleci config validate の出⼒力力が分かりづらい
    • 既存のプラグイン (vim-circleci) では満⾜足でき
    ない (省略略)

    View full-size slide

  7. どこが間違っているでしょう?

    View full-size slide

  8. 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]}}}

    View full-size slide

  9. 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]}}}
    わからん

    View full-size slide

  10. 正解
    ひと⽬目で気づきたい

    View full-size slide

  11. circleci.vim で
    ϋΠϥΠτをつける

    View full-size slide

  12. typoしたとき

    View full-size slide

  13. 正しいとき

    View full-size slide

  14. 正しいとき
    ⾊色で気づける

    View full-size slide

  15. ハイライト
    • ドキュメントに載っているキーに⾊色付け
    • ハイライトは4種類類
    • type (string とか approval とか)
    • steps (checkout とか save_cache とか )
    • << >> と {{ }} <- こだわりポイント
    • その他 (version とか commands とか)

    View full-size slide

  16. << >> と {{ }}
    • シェルのリダイレクトとの⾒見見間違いを防⽌止

    View full-size slide

  17. 補完機能 (オムニ補完)

    View full-size slide

  18. TODO: snippets
    • jobs とか filter とかのテンプレートがあると
    便便利利そう

    View full-size slide

  19. 使ってみてください

    View full-size slide

  20. https://github.com/
    yasuhiroki/circleci.vim

    View full-size slide

  21. ご清聴ありがとうございました

    View full-size slide

  22. これでいいのか?

    View full-size slide

  23. 本当に求めていたもの

    View full-size slide

  24. 間違った記述をしている

    ⾏行行を教えてくれる
    Linter が欲しい

    View full-size slide

  25. 本当に求めていたもの
    ※ 適当な合成です

    View full-size slide

  26. circleci config validate を
    ハックすれば何とかなる?

    View full-size slide

  27. circleci config validate の中身

    View full-size slide

  28. GraphQLでリクエストしている

    View full-size slide

  29. GraphQL の詳細仕様は...
    https://discuss.circleci.com/t/any-documentation-on-the-graphql-api/29913/2

    View full-size slide

  30. レスポンスの中身を⾒見見てみる

    View full-size slide

  31. レスポンスの中身を⾒見見てみる
    ⾏行行数の情報はなさそう

    View full-size slide

  32. 間違った記述をしている

    ⾏行行を教えてくれる
    Linter が欲しい

    View full-size slide

  33. 間違った記述をしている

    ⾏行行を教えてくれる
    Linter が欲しい
    何か情報があれば教えて

    View full-size slide

  34. ご清聴ありがとうございました

    View full-size slide