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
Apexで複数環境のLambda関数をデプロイする話 #jawsug
Search
kariyayo
July 14, 2016
Programming
2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Apexで複数環境のLambda関数をデプロイする話 #jawsug
kariyayo
July 14, 2016
More Decks by kariyayo
See All by kariyayo
MobX の話
kariyayo
0
380
echoサーバーを書いてI/Oと仲良くなる話
kariyayo
3
880
SpringはどうやってDIしているのか? #jjug_ccc
kariyayo
4
3.6k
近況報告といろいろ作るのが楽しい話 #yokohama_north
kariyayo
0
910
目指せ3つ星インデックス #yokohama_north
kariyayo
2
880
Spring Boot と Swagger #渋谷java
kariyayo
4
5.8k
Gradleを使えるようになるために
kariyayo
0
110
Other Decks in Programming
See All in Programming
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
0
130
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
260
「人を評価する AI」の設計と実装
ryoyanara
0
180
Apache Hive: Toward a Cloud Native Lakehouse
okumin
0
180
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
140
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
180
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.5k
What's New in Android 2026
veronikapj
0
250
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
190
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
4
1.6k
AIが無かった頃の素敵な出会いの話
codmoninc
1
390
仕様駆動開発の消費期限
watany
16
7.1k
Featured
See All Featured
Docker and Python
trallard
47
4.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
RailsConf 2023
tenderlove
30
1.5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.7k
GraphQLとの向き合い方2022年版
quramy
50
15k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
430
The Invisible Side of Design
smashingmag
301
52k
4 Signs Your Business is Dying
shpigford
187
22k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Transcript
"QFYͰෳڥͷ -BNCEBؔΛσϓϩΠ͢Δ +"846(ΞʔΩςΫνϟઐࢧ෦ΫϥυωΠςΟϒՊձ$%1ٞձ CBUJ UXJUUFS!CBUJ@
• -BNCEBͷσϓϩΠͲ͏Ζ͏ʁ • ࣗಈԽ͍ͨ͠
http://apex.run/ ͜ͷࢿྉͰ v0.10.2 Λରͱ͠·͢
"QFY • [JQ Ξοϓϩʔυ όʔδϣϯൃߦ ΤΠϦΞεͷߋ ৽Λͬͯ͘ΕΔ • ෳͷ-BNCEBؔΛѻ͑Δ •
(P • (PͰॻ͍ͨ-BNCEBؔʹରԠͯ͠Δ • ͳͲͳͲଞʹ৭ʑ
"QFY • ϓϩδΣΫτͱ͍͏୯ҐͰෳͷ-BNCEBؔΛཧ my-pj ├── functions/ │ ├── func1/ │
│ ├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js └── project.json
"QFY • ϓϩδΣΫτͱ͍͏୯ҐͰෳͷ-BNCEBؔΛཧ my-pj ├── functions/ │ ├── func1/ │
│ ├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js └── project.json { "name": "my-lambda-pj", "description": "", "runtime": "nodejs4.3", "memory": 128, "timeout": 5, "role": "arn:aws:iam::<hogehoge>" } QSPKFDUKTPOʹ-BNCEBͷઃఆΛهड़͢Δ
"QFY • ϓϩδΣΫτͱ͍͏୯ҐͰෳͷ-BNCEBؔΛཧ my-pj ├── functions/ │ ├── func1/ │
│ ├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js └── project.json ͰσϓϩΠ $ apex deploy
"QFY • "QFYΛબΜͩཧ༝ • ؆୯ʹ͑ͨɻΠϯετʔϧ؆୯ͩͬͨ • ϓϩδΣΫτ୯ҐͰཧͰ͖Δ • "1*(BUFXBZΘͳ͍ •
3VOUJNFͱͯ͠/PEFKTΛ͑Δ
ຊ൪ڥͱ։ൃڥͰ ผͷόʔδϣϯΛ͍͍ͨ
.VMUJQMF&OWJSPONFOUT • "QFYෳڥΛαϙʔτͯ͠Δ my-pj ├── functions/ │ ├── func1/ │
│ ├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js ├── project_dev.json └── project_prod.json 環境毎の設定ファイルを用意 • project_dev.json • project_prod.json
.VMUJQMF&OWJSPONFOUT • "QFYෳڥΛαϙʔτͯ͠Δ my-pj ├── functions/ │ ├── func1/ │
│ ├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js ├── project_dev.json └── project_prod.json $ apex deploy --env prod ͰσϓϩΠ
͔͠͠
"QFYͰͭͷ ΤΠϦΞε͔͠࡞ΒΕͳ͍
"QFYͷΤΠϦΞε • $633&/5ͱ͍͏ΤΠϦΞε͕όʔδϣϯΛࢦ͢ version1 CURRENT
"QFYͷΤΠϦΞε • $633&/5ͱ͍͏ΤΠϦΞε͕όʔδϣϯΛࢦ͢ version2 version1 CURRENT σϓϩΠޙ
ڥ͝ͱͷΤΠϦΞε ࡞Γ͍ͨͷ͚ͩͲ
http://apex.run/#how-do-you-manage-multiple-environments “It’s highly recommended to create separate AWS accounts for
staging and production environments.” • "QFYͰɺڥ͝ͱʹ"84ΞΧϯτΛ͚Δ ͜ͱΛਪͯ͠Δ
Θ͔Δ͚Ͳ
ͦ͏͍͔ͳ͍͜ͱ͋Δ
-BNCEBؔΛڥ͝ͱʹ ࡞ͬͯ͠·͓͏
• ઃఆϑΝΠϧͷOBNF@UFNQMBUFϓϩύςΟ my-pj ├── functions/ │ ├── func1/ │ │
├── index.js │ │ ├── note_modules/ │ │ └── package.json │ └── func2/ │ └── index.js ├── project_dev.json └── project_prod.json { ・・・, "nameTemplate": "・・・" }
• ઃఆϑΝΠϧͷOBNF@UFNQMBUFϓϩύςΟ • σϑΥϧτ \\1SPKFDU/BNF^^@\\'VODUJPO/BNF^^ • ڥຖͷઃఆϑΝΠϧͰαϑΟοΫεΛ͚ͭΔ \\1SPKFDU/BNF^^@\\'VODUJPO/BNF^^@EFW \\1SPKFDU/BNF^^@\\'VODUJPO/BNF^^@QSPE
• NZQK@GVOD@EFWͱ͍͏໊લͷ-BNCEBؔ • NZQK@GVOD@QSPEͱ͍͏໊લͷ-BNCEBؔ $ apex deploy --env
prod $ apex deploy --env dev
version2 version1 CURRENT version2 version1 CURRENT my-pj_func1_dev my-pj_func1_prod • -BNCEBؔࣗମ͕ผʹͳΔͷͰɺΤΠϦΞε͕
͔ͭ͠ͳͯ͘ڥຖʹ͍͚͕Մೳ
·ͱΊ
• -BNCEBؔͷσϓϩΠΛࣗಈԽ͍ͨ͠ • "QFY͍͍͢ • OBNF@UFNQMBUFΛͬͯڥຖͷ-BNCEBؔ Λ༻ҙ͢Εɺͭͷ"84ΞΧϯτͰෳ ڥʹରԠͰ͖Δ • OBNF@UFNQMBUF͍Βͳ͘ͳ͍ʁͱ͍͏JTTVF͕
্͕ͬͯΔͷͰࠓޙผͷํ๏ʹͳΔ͔ • IUUQTHJUIVCDPNBQFYBQFYJTTVFT
• -BNCEBؔͷσϓϩΠΛࣗಈԽ͍ͨ͠ • "QFY͍͍͢ • OBNF@UFNQMBUFΛͬͯڥຖͷ-BNCEBؔ Λ༻ҙ͢Εɺͭͷ"84ΞΧϯτͰෳ ڥʹରԠͰ͖Δ • OBNF@UFNQMBUF͍Βͳ͘ͳ͍ʁͱ͍͏JTTVF͕
্͕ͬͯΔͷͰࠓޙผͷํ๏ʹͳΔ͔ • IUUQTHJUIVCDPNBQFYBQFYJTTVFT ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ