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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
yastani
October 26, 2020
Technology
2
780
CircleCI AWS-SAM-SERVERLESSを使ってみた
【オンライン】【ソフトウェアテスト自動化LT大会編】CircleCI コミュニティミートアップにてお話しました。
yastani
October 26, 2020
Tweet
Share
Other Decks in Technology
See All in Technology
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
2
260
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.6k
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
1
380
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
680
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
700
AWS Network Firewall Proxyを触ってみた
nagisa53
1
240
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
630
プロポーザルに込める段取り八分
shoheimitani
1
570
Tebiki Engineering Team Deck
tebiki
0
24k
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
380
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
190
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
How STYLIGHT went responsive
nonsquared
100
6k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
76
Six Lessons from altMBA
skipperchong
29
4.2k
How GitHub (no longer) Works
holman
316
140k
The Curse of the Amulet
leimatthew05
1
8.7k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
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