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

Concourse入門 / Concourse Getting Started

watawuwu
April 27, 2018

Concourse入門 / Concourse Getting Started

watawuwu

April 27, 2018
Tweet

More Decks by watawuwu

Other Decks in Technology

Transcript

  1. Concourse入門

  2. profile: name: 松井 渉 trn: さび開発 twitter: @watawuwu role: [

    Server, Infra, SRE ] lang: [ Rust, Scala, Golang, PHP ]
  3. アジェンダ ⊸ Concourseとは? ⊸ その特徴は? ⊸ アーキテクチャ ⊸ パイプライン実行までの流れ ⊸

    ユニークな機能
  4. Concourseとは

  5. アジャイル開発を実践し 複雑なパイプラインを扱う チームにフォーカスしたCI/CD

  6. 既存CI/CDツールの問題 ⊸ 設定変更の確認にGit pushが必要 ⊸ 差分確認ができず、レビューが難しい ⊸ 依存関係や状態管理が発生した ⊸ WebUIによる隠された設定が発生した

  7. Pivotalエンジニアが中心となり Go言語で開発されているOSS

  8. Pipeline Job Job Task Task Task Resource

  9. その特徴は?

  10. 1. Everything runs in containers

  11. 2. Configuration As Code resources: - name: slack-notif type: git

    source: uri: watawuwu/slack-notification-resource/ jobs: - name: demo plan: - get: slack-notif trigger: true - task: unit-test file: test.yml
  12. 3. Fancy Visualization

  13. None
  14. 3. Fancy Visualization

  15. 4. All operations by CLI $ fly -t ci set-pipeline

    \ --config job.yml \ --pipeline name
  16. 5. Rapid Local Iteration $ fly -t ci execute --config

    test.yml \ --input some-input=.
  17. 6. Bring Your Own Integrations

  18. アーキテクチャ

  19. Servers Worker Web DB

  20. パイプライン 実行までの流れ

  21. hello.yaml jobs: - name: job-hello plan: - task: hello config:

    platform: linux image_resource: type: docker-image source: { repository: busybox } run: path: echo # pathとは実行コマンドのパスのこと(イケテナイ) args: - hello
  22. $ fly -t ci set-pipeline \ --pipeline pipeline-hello \ --config

    hello.yaml
  23. None
  24. $ fly -t ci unpause-pipeline \ --pipeline pipeline-hello

  25. None
  26. $ fly -t ci trigger-job \ --job pipeline-hello/job-hello

  27. ユニークな機能

  28. Secrets Manager

  29. Thanks! 質問どうぞ!! Rust、GCP、DevOpsな エンジニアは必要ありませんか? @watawuwu