SlideShare a Scribd company logo
1 of 39
Download to read offline
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
강성훈
DevOps / Rainist
Kotlin과 AWS와 함께라면
육군훈련소도 외롭지 않아
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
,
6
6
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
국방의 의무
납세의 의무
교육의 의무
근로의 의무
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
4주동안 못하는 것
1. 회사 소식 듣기
2. 사회 소식 듣기
3. 개발..?
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
를 하려 했으나
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
)( ) (
C
((
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Statically typed programming language
for modern multiplatform applications
100% interoperable with Java™ and Android™
Statically typed programming language
for modern multiplatform applications
100% interoperable with Java™ and Android™
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
data class Recipient(
val birthday: LocalDate,
val enterDate: LocalDate,
val name: String,
val regiment: Int,
val company: Int,
val platoon: Int
)
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
interface KATCRepository {
fun getRecipients(
name: String,
birthday: LocalDate,
enterDate: LocalDate
): Single<List<Recipient>>
}
interface KATCRepository {
fun getRecipients(
name: String,
birthday: LocalDate,
enterDate: LocalDate
): Single<List<Recipient>>
}
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
class SendRecipientDataIfExists(
private val katcRepository: KATCRepository,
private val messageRepository: MessageRepository,
private val naverNewsRepository: NaverNewsRepository,
private val slackRepository: SlackRepository
) : RequestHandler<InputStream, Unit> {
override fun handleRequest(input: InputStream, context: Context) =
katcRepository.getRecipients(...)
class SendRecipientDataIfExists(
private val katcRepository: KATCRepository,
private val messageRepository: MessageRepository,
private val naverNewsRepository: NaverNewsRepository,
private val slackRepository: SlackRepository
) : RequestHandler<InputStream, Unit> {
override fun handleRequest(input: InputStream, context: Context) =
katcRepository.getRecipients(...)
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
override fun getRecipients(
name: String,
birthday: LocalDate,
enterDate: LocalDate
): Single<List<Recipient>> =
Single.fromCallable {
Network.client
.newCall(
Request.Builder()
.url(recipientQueryUrl)
.post(buildRecipientQuery(name, birthday, enterDate))
.build()
).execute()
}...
override fun getRecipients(
name: String,
birthday: LocalDate,
enterDate: LocalDate
): Single<List<Recipient>> =
Single.fromCallable {
Network.client
.newCall(
Request.Builder()
.url(recipientQueryUrl)
.post(buildRecipientQuery(name, birthday, enterDate))
.build()
).execute()
}...
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
build.gradle
ext {
mainClassName = 'io.devholic.epilogue.App'
}
jar {
manifest {
attributes 'Main-Class': "$mainClassName"
}
from {
configurations.compile.collect {
it.isDirectory() ? it : zipTree(it)
}
}
}
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
travis.yml
language: java
jdk:
- oraclejdk8
install:
- pip install --user awscli
- gradle jar
after_success:
- make upload
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
deploy.sh
#!/usr/bin/env bash
set -e
if [ "$TRAVIS_BRANCH" == "master" ]; then
aws lambda update-function-code 
--zip-file=fileb://build/libs/epilogue.jar 
--region=$LAMBDA_REGION 
--function-name=$LAMBDA_FUNCTION_NAME 
--query 'LastModified'
fi
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
, / ,
/ / /
Q&A

More Related Content

What's hot

AWS Cloud9과 Workspace만으로 PC없는 개발환경 활용기 (박성용, 허밍랩) :: AWS DevDay 2018
AWS Cloud9과 Workspace만으로 PC없는 개발환경 활용기 (박성용, 허밍랩) :: AWS DevDay 2018AWS Cloud9과 Workspace만으로 PC없는 개발환경 활용기 (박성용, 허밍랩) :: AWS DevDay 2018
AWS Cloud9과 Workspace만으로 PC없는 개발환경 활용기 (박성용, 허밍랩) :: AWS DevDay 2018Amazon Web Services Korea
 
マイクロサービスを AWS サーバレス&コンテナで実装する方法
マイクロサービスを AWS サーバレス&コンテナで実装する方法マイクロサービスを AWS サーバレス&コンテナで実装する方法
マイクロサービスを AWS サーバレス&コンテナで実装する方法崇之 清水
 
2018 AWS DevDay Seoul community track - 데이터센터 1도 모르는 개발자가 MSA를 만났을 때
2018 AWS DevDay Seoul community track - 데이터센터 1도 모르는 개발자가 MSA를 만났을 때2018 AWS DevDay Seoul community track - 데이터센터 1도 모르는 개발자가 MSA를 만났을 때
2018 AWS DevDay Seoul community track - 데이터센터 1도 모르는 개발자가 MSA를 만났을 때주은 안
 
Apache MXNet/Gluon으로 쉽고 빠르게 구현하는 딥러닝 (정승환, SK텔레콤) :: AWS DevDay 2018
Apache MXNet/Gluon으로 쉽고 빠르게 구현하는 딥러닝 (정승환, SK텔레콤) :: AWS DevDay 2018Apache MXNet/Gluon으로 쉽고 빠르게 구현하는 딥러닝 (정승환, SK텔레콤) :: AWS DevDay 2018
Apache MXNet/Gluon으로 쉽고 빠르게 구현하는 딥러닝 (정승환, SK텔레콤) :: AWS DevDay 2018Amazon Web Services Korea
 
Automate Your Media Supply Chain with Machine Learning
Automate Your Media Supply Chain with Machine LearningAutomate Your Media Supply Chain with Machine Learning
Automate Your Media Supply Chain with Machine LearningKelly Rose Arellano
 
Worldwide Public Sector Breakfast Hosted by Teresa Carlson (WPS01) - AWS re:I...
Worldwide Public Sector Breakfast Hosted by Teresa Carlson (WPS01) - AWS re:I...Worldwide Public Sector Breakfast Hosted by Teresa Carlson (WPS01) - AWS re:I...
Worldwide Public Sector Breakfast Hosted by Teresa Carlson (WPS01) - AWS re:I...Amazon Web Services
 
DeepLens: Machine Learning & Chicago Hot Dogs
DeepLens: Machine Learning & Chicago Hot Dogs DeepLens: Machine Learning & Chicago Hot Dogs
DeepLens: Machine Learning & Chicago Hot Dogs AWS Chicago
 
SageMaker로 강화학습(RL) 마스터링 :: 남궁선 - AWS Community Day 2019
SageMaker로 강화학습(RL) 마스터링 :: 남궁선 - AWS Community Day 2019SageMaker로 강화학습(RL) 마스터링 :: 남궁선 - AWS Community Day 2019
SageMaker로 강화학습(RL) 마스터링 :: 남궁선 - AWS Community Day 2019AWSKRUG - AWS한국사용자모임
 
데이터 라벨링 노가다는 이제 그만 - Amazon Sagemaker Ground Truth :: 소성운 -...
데이터 라벨링 노가다는 이제 그만 - Amazon Sagemaker Ground Truth :: 소성운 -...데이터 라벨링 노가다는 이제 그만 - Amazon Sagemaker Ground Truth :: 소성운 -...
데이터 라벨링 노가다는 이제 그만 - Amazon Sagemaker Ground Truth :: 소성운 -...AWSKRUG - AWS한국사용자모임
 
AWS 2018 dev day - GraphQL with Lambda
AWS 2018 dev day - GraphQL with LambdaAWS 2018 dev day - GraphQL with Lambda
AWS 2018 dev day - GraphQL with Lambda재현 신
 
AWS re:Invent 2018
AWS re:Invent 2018 AWS re:Invent 2018
AWS re:Invent 2018 Casey Lee
 
New AI/ML Solutions with AWS DeepLens & Amazon SageMaker with ConocoPhillips ...
New AI/ML Solutions with AWS DeepLens & Amazon SageMaker with ConocoPhillips ...New AI/ML Solutions with AWS DeepLens & Amazon SageMaker with ConocoPhillips ...
New AI/ML Solutions with AWS DeepLens & Amazon SageMaker with ConocoPhillips ...Amazon Web Services
 
[db tech showcase Tokyo 2018] #dbts2018 #C34 『Amazon Aurora - Latest innovati...
[db tech showcase Tokyo 2018] #dbts2018 #C34 『Amazon Aurora - Latest innovati...[db tech showcase Tokyo 2018] #dbts2018 #C34 『Amazon Aurora - Latest innovati...
[db tech showcase Tokyo 2018] #dbts2018 #C34 『Amazon Aurora - Latest innovati...Insight Technology, Inc.
 
AWS Transformation Day - Toronto 2018
AWS Transformation Day - Toronto 2018AWS Transformation Day - Toronto 2018
AWS Transformation Day - Toronto 2018Amazon Web Services
 
IoT from Cloud to Edge & Back Again - WebSummit 2018
IoT from Cloud to Edge & Back Again - WebSummit 2018IoT from Cloud to Edge & Back Again - WebSummit 2018
IoT from Cloud to Edge & Back Again - WebSummit 2018Boaz Ziniman
 
IVS CTO Night And Day 2018 Winter - [re:Cap] AI & ML Services
IVS CTO Night And Day 2018 Winter - [re:Cap] AI & ML ServicesIVS CTO Night And Day 2018 Winter - [re:Cap] AI & ML Services
IVS CTO Night And Day 2018 Winter - [re:Cap] AI & ML ServicesAmazon Web Services Japan
 
透過最新的 AWS 服務在 2019 年為您的業務轉型 (Level 200)
透過最新的 AWS 服務在 2019 年為您的業務轉型 (Level 200)透過最新的 AWS 服務在 2019 年為您的業務轉型 (Level 200)
透過最新的 AWS 服務在 2019 年為您的業務轉型 (Level 200)Amazon Web Services
 
Working Backwards - Add Voice AI to Five Device Categories with Alexa (ALX329...
Working Backwards - Add Voice AI to Five Device Categories with Alexa (ALX329...Working Backwards - Add Voice AI to Five Device Categories with Alexa (ALX329...
Working Backwards - Add Voice AI to Five Device Categories with Alexa (ALX329...Amazon Web Services
 
Transforming the Upstream Oil and Gas with AWS ML Solutions (OIG302) - AWS re...
Transforming the Upstream Oil and Gas with AWS ML Solutions (OIG302) - AWS re...Transforming the Upstream Oil and Gas with AWS ML Solutions (OIG302) - AWS re...
Transforming the Upstream Oil and Gas with AWS ML Solutions (OIG302) - AWS re...Amazon Web Services
 
[AWS summit 2018] MSA 를 넘어 Function으로 진화
[AWS summit 2018] MSA 를 넘어 Function으로 진화[AWS summit 2018] MSA 를 넘어 Function으로 진화
[AWS summit 2018] MSA 를 넘어 Function으로 진화KyungHo Joo
 

What's hot (20)

AWS Cloud9과 Workspace만으로 PC없는 개발환경 활용기 (박성용, 허밍랩) :: AWS DevDay 2018
AWS Cloud9과 Workspace만으로 PC없는 개발환경 활용기 (박성용, 허밍랩) :: AWS DevDay 2018AWS Cloud9과 Workspace만으로 PC없는 개발환경 활용기 (박성용, 허밍랩) :: AWS DevDay 2018
AWS Cloud9과 Workspace만으로 PC없는 개발환경 활용기 (박성용, 허밍랩) :: AWS DevDay 2018
 
マイクロサービスを AWS サーバレス&コンテナで実装する方法
マイクロサービスを AWS サーバレス&コンテナで実装する方法マイクロサービスを AWS サーバレス&コンテナで実装する方法
マイクロサービスを AWS サーバレス&コンテナで実装する方法
 
2018 AWS DevDay Seoul community track - 데이터센터 1도 모르는 개발자가 MSA를 만났을 때
2018 AWS DevDay Seoul community track - 데이터센터 1도 모르는 개발자가 MSA를 만났을 때2018 AWS DevDay Seoul community track - 데이터센터 1도 모르는 개발자가 MSA를 만났을 때
2018 AWS DevDay Seoul community track - 데이터센터 1도 모르는 개발자가 MSA를 만났을 때
 
Apache MXNet/Gluon으로 쉽고 빠르게 구현하는 딥러닝 (정승환, SK텔레콤) :: AWS DevDay 2018
Apache MXNet/Gluon으로 쉽고 빠르게 구현하는 딥러닝 (정승환, SK텔레콤) :: AWS DevDay 2018Apache MXNet/Gluon으로 쉽고 빠르게 구현하는 딥러닝 (정승환, SK텔레콤) :: AWS DevDay 2018
Apache MXNet/Gluon으로 쉽고 빠르게 구현하는 딥러닝 (정승환, SK텔레콤) :: AWS DevDay 2018
 
Automate Your Media Supply Chain with Machine Learning
Automate Your Media Supply Chain with Machine LearningAutomate Your Media Supply Chain with Machine Learning
Automate Your Media Supply Chain with Machine Learning
 
Worldwide Public Sector Breakfast Hosted by Teresa Carlson (WPS01) - AWS re:I...
Worldwide Public Sector Breakfast Hosted by Teresa Carlson (WPS01) - AWS re:I...Worldwide Public Sector Breakfast Hosted by Teresa Carlson (WPS01) - AWS re:I...
Worldwide Public Sector Breakfast Hosted by Teresa Carlson (WPS01) - AWS re:I...
 
DeepLens: Machine Learning & Chicago Hot Dogs
DeepLens: Machine Learning & Chicago Hot Dogs DeepLens: Machine Learning & Chicago Hot Dogs
DeepLens: Machine Learning & Chicago Hot Dogs
 
SageMaker로 강화학습(RL) 마스터링 :: 남궁선 - AWS Community Day 2019
SageMaker로 강화학습(RL) 마스터링 :: 남궁선 - AWS Community Day 2019SageMaker로 강화학습(RL) 마스터링 :: 남궁선 - AWS Community Day 2019
SageMaker로 강화학습(RL) 마스터링 :: 남궁선 - AWS Community Day 2019
 
데이터 라벨링 노가다는 이제 그만 - Amazon Sagemaker Ground Truth :: 소성운 -...
데이터 라벨링 노가다는 이제 그만 - Amazon Sagemaker Ground Truth :: 소성운 -...데이터 라벨링 노가다는 이제 그만 - Amazon Sagemaker Ground Truth :: 소성운 -...
데이터 라벨링 노가다는 이제 그만 - Amazon Sagemaker Ground Truth :: 소성운 -...
 
AWS 2018 dev day - GraphQL with Lambda
AWS 2018 dev day - GraphQL with LambdaAWS 2018 dev day - GraphQL with Lambda
AWS 2018 dev day - GraphQL with Lambda
 
AWS re:Invent 2018
AWS re:Invent 2018 AWS re:Invent 2018
AWS re:Invent 2018
 
New AI/ML Solutions with AWS DeepLens & Amazon SageMaker with ConocoPhillips ...
New AI/ML Solutions with AWS DeepLens & Amazon SageMaker with ConocoPhillips ...New AI/ML Solutions with AWS DeepLens & Amazon SageMaker with ConocoPhillips ...
New AI/ML Solutions with AWS DeepLens & Amazon SageMaker with ConocoPhillips ...
 
[db tech showcase Tokyo 2018] #dbts2018 #C34 『Amazon Aurora - Latest innovati...
[db tech showcase Tokyo 2018] #dbts2018 #C34 『Amazon Aurora - Latest innovati...[db tech showcase Tokyo 2018] #dbts2018 #C34 『Amazon Aurora - Latest innovati...
[db tech showcase Tokyo 2018] #dbts2018 #C34 『Amazon Aurora - Latest innovati...
 
AWS Transformation Day - Toronto 2018
AWS Transformation Day - Toronto 2018AWS Transformation Day - Toronto 2018
AWS Transformation Day - Toronto 2018
 
IoT from Cloud to Edge & Back Again - WebSummit 2018
IoT from Cloud to Edge & Back Again - WebSummit 2018IoT from Cloud to Edge & Back Again - WebSummit 2018
IoT from Cloud to Edge & Back Again - WebSummit 2018
 
IVS CTO Night And Day 2018 Winter - [re:Cap] AI & ML Services
IVS CTO Night And Day 2018 Winter - [re:Cap] AI & ML ServicesIVS CTO Night And Day 2018 Winter - [re:Cap] AI & ML Services
IVS CTO Night And Day 2018 Winter - [re:Cap] AI & ML Services
 
透過最新的 AWS 服務在 2019 年為您的業務轉型 (Level 200)
透過最新的 AWS 服務在 2019 年為您的業務轉型 (Level 200)透過最新的 AWS 服務在 2019 年為您的業務轉型 (Level 200)
透過最新的 AWS 服務在 2019 年為您的業務轉型 (Level 200)
 
Working Backwards - Add Voice AI to Five Device Categories with Alexa (ALX329...
Working Backwards - Add Voice AI to Five Device Categories with Alexa (ALX329...Working Backwards - Add Voice AI to Five Device Categories with Alexa (ALX329...
Working Backwards - Add Voice AI to Five Device Categories with Alexa (ALX329...
 
Transforming the Upstream Oil and Gas with AWS ML Solutions (OIG302) - AWS re...
Transforming the Upstream Oil and Gas with AWS ML Solutions (OIG302) - AWS re...Transforming the Upstream Oil and Gas with AWS ML Solutions (OIG302) - AWS re...
Transforming the Upstream Oil and Gas with AWS ML Solutions (OIG302) - AWS re...
 
[AWS summit 2018] MSA 를 넘어 Function으로 진화
[AWS summit 2018] MSA 를 넘어 Function으로 진화[AWS summit 2018] MSA 를 넘어 Function으로 진화
[AWS summit 2018] MSA 를 넘어 Function으로 진화
 

Similar to Kotlin, AWS와 함께라면 육군훈련소도 외롭지 않아

Cloud Ops Engineer: A Day in the Life (ENT312-R1) - AWS re:Invent 2018
Cloud Ops Engineer: A Day in the Life (ENT312-R1) - AWS re:Invent 2018Cloud Ops Engineer: A Day in the Life (ENT312-R1) - AWS re:Invent 2018
Cloud Ops Engineer: A Day in the Life (ENT312-R1) - AWS re:Invent 2018Amazon Web Services
 
AWS 主題演講:聚焦企業工作負載 (enterprise workloads) 與全球案例分享
AWS 主題演講:聚焦企業工作負載 (enterprise workloads) 與全球案例分享AWS 主題演講:聚焦企業工作負載 (enterprise workloads) 與全球案例分享
AWS 主題演講:聚焦企業工作負載 (enterprise workloads) 與全球案例分享Amazon Web Services
 
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...Amazon Web Services
 
Resiliency and Availability Design Patterns for the Cloud
Resiliency and Availability Design Patterns for the CloudResiliency and Availability Design Patterns for the Cloud
Resiliency and Availability Design Patterns for the CloudAmazon Web Services
 
Run Production Workloads on Spot, Save up to 90% (CMP306-R1) - AWS re:Invent ...
Run Production Workloads on Spot, Save up to 90% (CMP306-R1) - AWS re:Invent ...Run Production Workloads on Spot, Save up to 90% (CMP306-R1) - AWS re:Invent ...
Run Production Workloads on Spot, Save up to 90% (CMP306-R1) - AWS re:Invent ...Amazon Web Services
 
Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018
Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018
Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018Amazon Web Services
 
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...Amazon Web Services Korea
 
Using AI for real-life data enrichment - Tel Aviv Summit 2018
Using AI for real-life data enrichment - Tel Aviv Summit 2018Using AI for real-life data enrichment - Tel Aviv Summit 2018
Using AI for real-life data enrichment - Tel Aviv Summit 2018Amazon Web Services
 
How Cox Automotive Runs GitHub Enterprise on AWS (ENT356-S) - AWS re:Invent 2018
How Cox Automotive Runs GitHub Enterprise on AWS (ENT356-S) - AWS re:Invent 2018How Cox Automotive Runs GitHub Enterprise on AWS (ENT356-S) - AWS re:Invent 2018
How Cox Automotive Runs GitHub Enterprise on AWS (ENT356-S) - AWS re:Invent 2018Amazon Web Services
 
Zendesk: Building a World-Class Cloud Center of Excellence (ENT309-S) - AWS r...
Zendesk: Building a World-Class Cloud Center of Excellence (ENT309-S) - AWS r...Zendesk: Building a World-Class Cloud Center of Excellence (ENT309-S) - AWS r...
Zendesk: Building a World-Class Cloud Center of Excellence (ENT309-S) - AWS r...Amazon Web Services
 
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...Amazon Web Services
 
How to Automate Security Learning at Scale (ANT335-S) - AWS re:Invent 2018
How to Automate Security Learning at Scale (ANT335-S) - AWS re:Invent 2018How to Automate Security Learning at Scale (ANT335-S) - AWS re:Invent 2018
How to Automate Security Learning at Scale (ANT335-S) - AWS re:Invent 2018Amazon Web Services
 
はじめてのグラフデータベース 〜 Amazon Neptune と主なユースケース 〜
はじめてのグラフデータベース 〜 Amazon Neptune と主なユースケース 〜はじめてのグラフデータベース 〜 Amazon Neptune と主なユースケース 〜
はじめてのグラフデータベース 〜 Amazon Neptune と主なユースケース 〜Amazon Web Services Japan
 
Monitoring Serverless Applications (SRV303-S) - AWS re:Invent 2018
Monitoring Serverless Applications (SRV303-S) - AWS re:Invent 2018Monitoring Serverless Applications (SRV303-S) - AWS re:Invent 2018
Monitoring Serverless Applications (SRV303-S) - AWS re:Invent 2018Amazon Web Services
 
What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018
What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018
What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018Amazon Web Services
 
Serverless + Evolutionary Architectures + Safe Deployments = Speed in the Rig...
Serverless + Evolutionary Architectures + Safe Deployments = Speed in the Rig...Serverless + Evolutionary Architectures + Safe Deployments = Speed in the Rig...
Serverless + Evolutionary Architectures + Safe Deployments = Speed in the Rig...Amazon Web Services
 
Role of Central Teams in DevOps Organizations (DEV370) - AWS re:Invent 2018
Role of Central Teams in DevOps Organizations (DEV370) - AWS re:Invent 2018Role of Central Teams in DevOps Organizations (DEV370) - AWS re:Invent 2018
Role of Central Teams in DevOps Organizations (DEV370) - AWS re:Invent 2018Amazon Web Services
 
Introduction to AI
Introduction to AIIntroduction to AI
Introduction to AIBoaz Ziniman
 

Similar to Kotlin, AWS와 함께라면 육군훈련소도 외롭지 않아 (20)

Cloud Ops Engineer: A Day in the Life (ENT312-R1) - AWS re:Invent 2018
Cloud Ops Engineer: A Day in the Life (ENT312-R1) - AWS re:Invent 2018Cloud Ops Engineer: A Day in the Life (ENT312-R1) - AWS re:Invent 2018
Cloud Ops Engineer: A Day in the Life (ENT312-R1) - AWS re:Invent 2018
 
Amazon Container Services
Amazon Container ServicesAmazon Container Services
Amazon Container Services
 
Future of Enterprise IT
Future of Enterprise ITFuture of Enterprise IT
Future of Enterprise IT
 
AWS 主題演講:聚焦企業工作負載 (enterprise workloads) 與全球案例分享
AWS 主題演講:聚焦企業工作負載 (enterprise workloads) 與全球案例分享AWS 主題演講:聚焦企業工作負載 (enterprise workloads) 與全球案例分享
AWS 主題演講:聚焦企業工作負載 (enterprise workloads) 與全球案例分享
 
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...
Globalizing Player Accounts at Riot Games While Maintaining Availability (ARC...
 
Resiliency and Availability Design Patterns for the Cloud
Resiliency and Availability Design Patterns for the CloudResiliency and Availability Design Patterns for the Cloud
Resiliency and Availability Design Patterns for the Cloud
 
Run Production Workloads on Spot, Save up to 90% (CMP306-R1) - AWS re:Invent ...
Run Production Workloads on Spot, Save up to 90% (CMP306-R1) - AWS re:Invent ...Run Production Workloads on Spot, Save up to 90% (CMP306-R1) - AWS re:Invent ...
Run Production Workloads on Spot, Save up to 90% (CMP306-R1) - AWS re:Invent ...
 
Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018
Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018
Make Money with Alexa Skills (ALX402-R1) - AWS re:Invent 2018
 
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...
Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 (김현수, AWS 솔루션즈 아키텍...
 
Using AI for real-life data enrichment - Tel Aviv Summit 2018
Using AI for real-life data enrichment - Tel Aviv Summit 2018Using AI for real-life data enrichment - Tel Aviv Summit 2018
Using AI for real-life data enrichment - Tel Aviv Summit 2018
 
How Cox Automotive Runs GitHub Enterprise on AWS (ENT356-S) - AWS re:Invent 2018
How Cox Automotive Runs GitHub Enterprise on AWS (ENT356-S) - AWS re:Invent 2018How Cox Automotive Runs GitHub Enterprise on AWS (ENT356-S) - AWS re:Invent 2018
How Cox Automotive Runs GitHub Enterprise on AWS (ENT356-S) - AWS re:Invent 2018
 
Zendesk: Building a World-Class Cloud Center of Excellence (ENT309-S) - AWS r...
Zendesk: Building a World-Class Cloud Center of Excellence (ENT309-S) - AWS r...Zendesk: Building a World-Class Cloud Center of Excellence (ENT309-S) - AWS r...
Zendesk: Building a World-Class Cloud Center of Excellence (ENT309-S) - AWS r...
 
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...
[NEW LAUNCH!] Introduction to AWS Global Accelerator (NET330) - AWS re:Invent...
 
How to Automate Security Learning at Scale (ANT335-S) - AWS re:Invent 2018
How to Automate Security Learning at Scale (ANT335-S) - AWS re:Invent 2018How to Automate Security Learning at Scale (ANT335-S) - AWS re:Invent 2018
How to Automate Security Learning at Scale (ANT335-S) - AWS re:Invent 2018
 
はじめてのグラフデータベース 〜 Amazon Neptune と主なユースケース 〜
はじめてのグラフデータベース 〜 Amazon Neptune と主なユースケース 〜はじめてのグラフデータベース 〜 Amazon Neptune と主なユースケース 〜
はじめてのグラフデータベース 〜 Amazon Neptune と主なユースケース 〜
 
Monitoring Serverless Applications (SRV303-S) - AWS re:Invent 2018
Monitoring Serverless Applications (SRV303-S) - AWS re:Invent 2018Monitoring Serverless Applications (SRV303-S) - AWS re:Invent 2018
Monitoring Serverless Applications (SRV303-S) - AWS re:Invent 2018
 
What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018
What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018
What's New in AR & VR: State of the World Report (ARV203) - AWS re:Invent 2018
 
Serverless + Evolutionary Architectures + Safe Deployments = Speed in the Rig...
Serverless + Evolutionary Architectures + Safe Deployments = Speed in the Rig...Serverless + Evolutionary Architectures + Safe Deployments = Speed in the Rig...
Serverless + Evolutionary Architectures + Safe Deployments = Speed in the Rig...
 
Role of Central Teams in DevOps Organizations (DEV370) - AWS re:Invent 2018
Role of Central Teams in DevOps Organizations (DEV370) - AWS re:Invent 2018Role of Central Teams in DevOps Organizations (DEV370) - AWS re:Invent 2018
Role of Central Teams in DevOps Organizations (DEV370) - AWS re:Invent 2018
 
Introduction to AI
Introduction to AIIntroduction to AI
Introduction to AI
 

Recently uploaded

Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 

Recently uploaded (20)

Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 

Kotlin, AWS와 함께라면 육군훈련소도 외롭지 않아

  • 1. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. 강성훈 DevOps / Rainist Kotlin과 AWS와 함께라면 육군훈련소도 외롭지 않아
  • 2. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. , 6 6
  • 3. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 4. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. 국방의 의무 납세의 의무 교육의 의무 근로의 의무
  • 5. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 6. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 7. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. 4주동안 못하는 것 1. 회사 소식 듣기 2. 사회 소식 듣기 3. 개발..?
  • 8. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. 를 하려 했으나
  • 9. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 10. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. )( ) ( C ((
  • 11. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 12. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 13. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. Statically typed programming language for modern multiplatform applications 100% interoperable with Java™ and Android™ Statically typed programming language for modern multiplatform applications 100% interoperable with Java™ and Android™
  • 14. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 15. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html
  • 16. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 17. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 18. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 19. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 20. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. data class Recipient( val birthday: LocalDate, val enterDate: LocalDate, val name: String, val regiment: Int, val company: Int, val platoon: Int )
  • 21. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. interface KATCRepository { fun getRecipients( name: String, birthday: LocalDate, enterDate: LocalDate ): Single<List<Recipient>> } interface KATCRepository { fun getRecipients( name: String, birthday: LocalDate, enterDate: LocalDate ): Single<List<Recipient>> }
  • 22. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. class SendRecipientDataIfExists( private val katcRepository: KATCRepository, private val messageRepository: MessageRepository, private val naverNewsRepository: NaverNewsRepository, private val slackRepository: SlackRepository ) : RequestHandler<InputStream, Unit> { override fun handleRequest(input: InputStream, context: Context) = katcRepository.getRecipients(...) class SendRecipientDataIfExists( private val katcRepository: KATCRepository, private val messageRepository: MessageRepository, private val naverNewsRepository: NaverNewsRepository, private val slackRepository: SlackRepository ) : RequestHandler<InputStream, Unit> { override fun handleRequest(input: InputStream, context: Context) = katcRepository.getRecipients(...)
  • 23. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. override fun getRecipients( name: String, birthday: LocalDate, enterDate: LocalDate ): Single<List<Recipient>> = Single.fromCallable { Network.client .newCall( Request.Builder() .url(recipientQueryUrl) .post(buildRecipientQuery(name, birthday, enterDate)) .build() ).execute() }... override fun getRecipients( name: String, birthday: LocalDate, enterDate: LocalDate ): Single<List<Recipient>> = Single.fromCallable { Network.client .newCall( Request.Builder() .url(recipientQueryUrl) .post(buildRecipientQuery(name, birthday, enterDate)) .build() ).execute() }...
  • 24. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 25. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 26. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 27. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 28. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 29. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 30. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 31. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 32. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. build.gradle ext { mainClassName = 'io.devholic.epilogue.App' } jar { manifest { attributes 'Main-Class': "$mainClassName" } from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } }
  • 33. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. travis.yml language: java jdk: - oraclejdk8 install: - pip install --user awscli - gradle jar after_success: - make upload
  • 34. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 35. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. deploy.sh #!/usr/bin/env bash set -e if [ "$TRAVIS_BRANCH" == "master" ]; then aws lambda update-function-code --zip-file=fileb://build/libs/epilogue.jar --region=$LAMBDA_REGION --function-name=$LAMBDA_FUNCTION_NAME --query 'LastModified' fi
  • 36. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 37. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
  • 38. © 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved. , / , / / /
  • 39. Q&A