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
750
CircleCI AWS-SAM-SERVERLESSを使ってみた
【オンライン】【ソフトウェアテスト自動化LT大会編】CircleCI コミュニティミートアップにてお話しました。
yastani
October 26, 2020
Tweet
Share
Other Decks in Technology
See All in Technology
それでも私が品質保証プロセスを作り続ける理由 #テストラジオ / Why I still continue to create QA process
pineapplecandy
0
150
Oracle Autonomous AI Database:サービス概要のご紹介
oracle4engineer
PRO
2
15k
[VPoE Global Summit] サービスレベル目標による信頼性への投資最適化
satos
0
190
ソフトウェアエンジニアの生成AI活用と、これから
lycorptech_jp
PRO
0
690
OpenTelemetry が拡げる Gemini CLI の可観測性
phaya72
2
930
組織改革から開発効率向上まで! - 成功事例から見えたAI活用のポイント - / 20251016 Tetsuharu Kokaki
shift_evolve
PRO
2
210
初めてのDatabricks Apps開発
taka_aki
1
220
[Codex Meetup Japan #1] Codex-Powered Mobile Apps Development
korodroid
2
1k
RDS の負荷が高い場合に AWS で取りうる具体策 N 連発/a-series-of-specific-countermeasures-available-on-aws-when-rds-is-under-high-load
emiki
7
4.4k
FinOps について (ちょっと) 本気出して考えてみた
skmkzyk
0
180
[2025年10月版] Databricks Data + AI Boot Camp
databricksjapan
1
220
AIとともに歩んでいくデザイナーの役割の変化
lycorptech_jp
PRO
0
670
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
55
11k
Building Applications with DynamoDB
mza
96
6.7k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Typedesign – Prime Four
hannesfritz
42
2.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Build your cross-platform service in a week with App Engine
jlugia
232
18k
Agile that works and the tools we love
rasmusluckow
331
21k
How STYLIGHT went responsive
nonsquared
100
5.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
Code Review Best Practice
trishagee
72
19k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
The Pragmatic Product Professional
lauravandoore
36
7k
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