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

CI/CDで始まるチーム文化作り

 CI/CDで始まるチーム文化作り

CI/CDについて話をします。

384e4d8bab8ac2a5e6f64dab1300c491?s=128

glassmonenkey

January 26, 2021
Tweet

Transcript

  1. 永野 峻輔(@glassmonkey)

  2. BASE BANK株式会社 Software Developer フルサイクルエンジニア Go, PHP, Pythonあたりをよく書いています Flutterアプリ開発の勉強 締め切りに追われること

    Twitter: @glassmonekey 大阪に帰って元気な姿を確認
  3. • CI/CD の自動化を行うことの重要性
 • CI/CD の弊チームでの出来事紹介
 • どこから始めたらいいか


  4. None
  5. • ◦ テストの実行 ◦ 静的解析など • ◦ リリースの実施 代表例 Jenkins

    etc...
  6. ソースコード 反映 ぼく(新人) webhook通知 デプロイ 失敗通知

  7. None
  8. None
  9. ソースコード 反映 ぼく(新人) git pull デプロイ 指摘 先輩

  10. 先輩が言ってるし直すか 本当にこれで動くのだろうか? 先輩にリリース頼まないと 1. オーナーシップが生まれにくい 2. リリースがブラックボックスになる 3. 最低限の動作への学習コストが高い 4.

    官僚的な組織体制
  11. テスト失敗してるな。直そう あ、やばい!アラートなって る!!!!! 今回は〇〇なので指摘事項は todoとさせてください。 1. オーナーシップを持ちやすい 2. 自らが責任を持ってリリース 3.

    自動テストで最低限の動作が保証される 4. 創造的な組織体制
  12. 
 
 • ◦ ◦ • ◦ ◦ • ◦

    ◦ • ◦
  13. 
 
 • ◦ • ◦ ◦ • ◦ ◦

  14. None
  15. • • • • • 継続的デリバリーについての基本原則 LeanとDevOps 4章より抜粋

  16. linters: disable-all: true enable: - goimports - bodyclose - deadcode

    - errcheck - gochecknoinits - gocognit - gocritic - gocyclo - gofmt - golint - govet (中略) 
 lint設定例(golangci-lint) ← 仕組みでformatして ないことを叱ってく れるなど 本当にレビュー議論 したいことに専念 できる
  17. 
 
 Terraformセキュリティ診断ツール(tfsec) ← reviewdogを使用 ignoreも可能なので 自分たちのリスクを 把握できる。

  18. ある日のterraformの変更通知 無機質な通知だ と楽しくないの で絵文字つき

  19. またある日のterraformの変更通知 ←原因となった人物が 「私です」スタンプ 押して対応している。 このときは私

  20. trivyを使った日時のコンテナの脆弱性チェック このあと暫定的に コンテナにlibsslの バージョンアップ対応を した

  21. None
  22. None
  23. • • • ◦ •

  24. • ◦ ◦ • ◦

  25. None
  26. 
 
 • ◦ ◦ • ◦ • ◦

  27. https://binc.jp/jobs 弊社では絶賛採用活動中をしています!!! 一緒にプロダクトを作っていきましょう!!!