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 AWS-SAM-SERVERLESSを使ってみた
Search
yastani
October 26, 2020
Technology
2
720
CircleCI AWS-SAM-SERVERLESSを使ってみた
【オンライン】【ソフトウェアテスト自動化LT大会編】CircleCI コミュニティミートアップにてお話しました。
yastani
October 26, 2020
Tweet
Share
Other Decks in Technology
See All in Technology
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
220
Model Mondays S2E02: Model Context Protocol
nitya
0
210
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
150
Wasm元年
askua
0
130
A2Aのクライアントを自作する
rynsuke
1
170
原則から考える保守しやすいComposable関数設計
moriatsushi
3
530
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
130
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
220
mrubyと micro-ROSが繋ぐロボットの世界
kishima
2
120
Agentic Workflowという選択肢を考える
tkikuchi1002
1
480
Claude Code Actionを使ったコード品質改善の取り組み
potix2
PRO
6
2.1k
MySQL5.6から8.4へ 戦いの記録
kyoshidaxx
1
170
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
54
13k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Site-Speed That Sticks
csswizardry
10
660
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
The Invisible Side of Design
smashingmag
299
51k
Balancing Empowerment & Direction
lara
1
360
KATA
mclloyd
29
14k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
How to train your dragon (web standard)
notwaldorf
92
6.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Transcript
circleci/aws-sam-serverless を使ってみた 株式会社ゆめみ 谷 泰成
アジェンダ 1. はじめに a. 話す内容 b. 自己紹介 2. circleci/aws-sam-serverless
とは? a. CircleCI Orbs b. AWS SAM 3. Hello World a. 手動でAWS SAMをデプロイしてみる b. CircleCIで自動デプロイを設定する c. CircleCIジョブの環境変数を設定する 4. まとめ
はじめに
話す内容 • 今日お話すること ◦ CircleCI OrbsやAWS SAMのざっくりとした紹介 ◦ Hello
Worldをちょっと工夫するために学んだことの紹介 • このスライドにおける期待値(ゴール) ◦ 入門者の方…「Hello World簡単じゃん!」と感じてCircleCIを触ってみてもらう ◦ 経験者の方…「コイツよりもっと色々工夫できるぞ!」と次回登壇の敷居を下げる
自己紹介 @ystn_percode • SREの文化を組織に広める活動 • プロジェクトのインフラ設計・構築支援 • AWS,
GCPの社内トレーニング 谷 泰成|株式会社ゆめみ 社内活動 • CircleCI User Community Leader(Osaka) • AWS, GCPのインフラ設計・リプレイス支援(副業) 社外活動
circleci/aws-sam-serverless とは?
CircleCI Orbs • circleci/aws-sam-serverless? ◦ AWS SAMを利用した、サーバーレスアプリケーションのCI/CD(ビルド、テスト、デプロイ)をサポー トするCircleCI Orbsの一つ
https://github.com/CircleCI-Public/aws-sam-serverless-orb • CircleCI Orbs? ◦ Orbs は、CircleCIのconfig.ymlに定義するcommandsやjobsなどの構成を簡略化する 設定ファイルのパッケージ ◦ これはプロジェクト内、またはプロジェクト間で共有や再利用ができる https://circleci.com/docs/ja/2.0/jobs-steps/#section=getting-started
CircleCI Orbs たとえば… CircleCIのジョブからawscliを使ってごにょごにょしたい!
CircleCI Orbs Docker Imageを用 意しないと… aws configureで認 証しないと… commandsにセット アップを
書かないと… 考えることが多い!!
CircleCI Orbs Orbを使ってみる…
CircleCI Orbs ようこそ! AWSの世界へ!!
AWS SAM • AWS SAM? ◦ AWS Serverless Application Model(AWS
SAM) ◦ AWS上でサーバーレスアプリケーション を構築するために利用できるオープンソースのフレーム ワーク ◦ サーバーレスアプリケーション は、Lambda関数、イベントソース、その他のリソースを 組み合わせてタスクを実行する ◦ サーバーレスアプリケーション は単なるLambda関数だけではなく、APIやデータベース、イベント ソースのマッピングなどの追加リソースを含むことができる
AWS SAM • サーバーレスアプリケーションの特徴 ◦ 利用者がAWS上でゲストOSなどを管理しない ◦ 必要なサーバーリソースはAWSの特定サービスを
利用する ◦ アプリケーションのコード管理のみで サービス運用を実現する
Hello World
手動でAWS SAMをデプロイしてみる のインストール サンプルアプリケーションの生成 生成されたサンプルアプリケーションの構造を見る ├── ├── │ └── ├──
│ ├── │ ├── │ └── ├── └── └── ├── └──
手動でAWS SAMをデプロイしてみる サンプルアプリケーションのビルド ビルド成果物が生成される └── ├── └── 以下略 にデプロイする
手動でAWS SAMをデプロイしてみる
手動でAWS SAMをデプロイしてみる
CircleCIで自動デプロイを設定する 必要な各種初期設定は割愛… GitHubリポジトリの作成 AWSアカウントの作成 CircleCIアカウントの作成 GitHubリポジトリとCircleCIアカウントの連携 sam initコマンドで生成したサンプルアプリケーションコード
CircleCIで自動デプロイを設定する の作成
CircleCIで自動デプロイを設定する
CircleCIで自動デプロイを設定する
CircleCIで自動デプロイを設定する
CircleCIジョブの環境変数を設定する 環境変数の設定は複数ある 1. BASH_ENV を使用した環境変数 2. シェルコマンドを使用した環境変数 3.
steps、jobs、dockerなどで使用する environment: [ key: value ] 4. プロジェクトで設定する環境変数 5. コンテキストで設定する環境変数 6. APIを使用した環境変数 7. 定義済みの環境変数
CircleCIジョブの環境変数を設定する 環境変数の設定は複数ある 1. BASH_ENV を使用した環境変数 2. シェルコマンドを使用した環境変数 3.
steps、jobs、dockerなどで使用する environment: [ key: value ] 4. プロジェクトで設定する環境変数 5. コンテキストで設定する環境変数 6. APIを使用した環境変数 7. 定義済みの環境変数
CircleCIジョブの環境変数を設定する プロジェクトで設定する環境変数
CircleCIジョブの環境変数を設定する コンテキストで設定する環境変数
CircleCIジョブの環境変数を設定する コンテキストで設定する環境変数
CircleCIジョブの環境変数を設定する コンテキストで設定する環境変数
CircleCIジョブの環境変数を設定する の作成
まとめ
まとめ CircleCI Orbsは欲しいものが公式にあるか探そう 無くても独自のOrbをOrb Registryで公開できる Orbの使い方はCircleCI DeveloperのSourceで確認しよう 複数のプロジェクトで使用する環境変数はContextでまとめて管理 しよう
None