응용 프로그램을 Serverless Application Repository에 공개
개시하다
Serverless Application Repository에는 다음 기고문에서 SAM이 제작한 리소스가 공개돼 단계를 요약했다.
Serverless Application Repository 공개 프로그램
SAM 템플릿에 메타데이터 추가
Serverless Application Repository에 공개할 때 애플리케이션의 정보를 SAM 템플릿에 추가합니다.
template.yamlMetadata:
AWS::ServerlessRepo::Application:
Name: tests-pullrequest-in-codecommit-using-codebuild-and-notify-slack.
Description: This repository contains sample code that tests pull requests created in AWS CodeCommit with CodeBuild and notifies to Slack using AWS Chatbot.
Author: joe-king-sh
SpdxLicenseId: AML
LicenseUrl: LICENSE
ReadmeUrl: README.md
Labels: ['codecommit','codebuild','awschatbot','slack','lambda','ci','eventbridge']
HomePageUrl: https://github.com/joe-king-sh/aws-codecommit-pull-request-aws-codebuild-aws-chatbot
SemanticVersion: 0.0.1
SourceCodeUrl: https://github.com/joe-king-sh/aws-codecommit-pull-request-aws-codebuild-aws-chatbot
공개 응용 프로그램 패키지 만들기
다음 명령은 응용 프로그램을 패키지화하여 S3에 업로드합니다.% sam package \
--template-file template.yml \
--output-template-file packaged.yml \
--s3-bucket serverless-application-repository-deploy-bucket
업로드 전 S3 통은 Se r ve r less Application Repository에서 액세스해야 합니다.
다음과 같은 구간 정책을 미리 설정합니다.
S3_BucketPolicy{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "serverlessrepo.amazonaws.com"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::serverless-application-repository-deploy-bucket/*"
}
]
}
공개한다
sam publish
명령으로 공개% sam publish \
--template packaged.yml \
--region ap-northeast-1
Publish Succeeded
Created new application with the following metadata:
{
"Name": "tests-pullrequest-in-codecommit-using-codebuild-and-notify-slack",
"Description": "This repository contains sample code that tests pull requests created in AWS CodeCommit with CodeBuild and notifies to Slack using AWS Chatbot.",
"Author": "joe-king-sh",
"SpdxLicenseId": "AML",
"LicenseUrl": "s3://serverless-application-repository-deploy-bucket/15d219711004e23a9507e8ab1ce160b7",
"ReadmeUrl": "s3://serverless-application-repository-deploy-bucket/fa5d01dad58d52938c900bbc34ce3cc1",
"Labels": [
"codecommit",
"codebuild",
"awschatbot",
"slack",
"lambda",
"ci",
"eventbridge"
],
"HomePageUrl": "https://github.com/joe-king-sh/aws-codecommit-pull-request-aws-codebuild-aws-chatbot",
"SemanticVersion": "0.0.1",
"SourceCodeUrl": "https://github.com/joe-king-sh/aws-codecommit-pull-request-aws-codebuild-aws-chatbot"
}
Click the link below to view your application in AWS console:
https://console.aws.amazon.com/serverlessrepo/home?region=ap-northeast-1#/published-applications/arn:aws:serverlessrepo:ap-northeast-1:757523705531:applications~tests-pullrequest-in-codecommit-using-codebuild-and-notify-slack
기본적으로 공공 공유는 공개되지 않습니다.
필요에 따라 관리 콘솔에 대한 공공 접근을 사용하십시오.
끝말
SAM에 앱을 구축하는 것은 물론 공개되기 전에 지령 1개를 쓰는 것도 수월하다.
SAM은 Cfn의 확장으로 최근에 Cfn 자원sam deploy
, sam validate
등sam 명령도 사용할 수 있다는 것을 알게 되었다.
지금까지SAM에 템플릿을 써도 aws cloudformation
지령으로 디자인했기 때문에 SAM의 장점을 더욱 활용하고 싶습니다.
Reference
이 문제에 관하여(응용 프로그램을 Serverless Application Repository에 공개), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/joe-king-sh/items/f2559e2b6e015b44d6d2
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Metadata:
AWS::ServerlessRepo::Application:
Name: tests-pullrequest-in-codecommit-using-codebuild-and-notify-slack.
Description: This repository contains sample code that tests pull requests created in AWS CodeCommit with CodeBuild and notifies to Slack using AWS Chatbot.
Author: joe-king-sh
SpdxLicenseId: AML
LicenseUrl: LICENSE
ReadmeUrl: README.md
Labels: ['codecommit','codebuild','awschatbot','slack','lambda','ci','eventbridge']
HomePageUrl: https://github.com/joe-king-sh/aws-codecommit-pull-request-aws-codebuild-aws-chatbot
SemanticVersion: 0.0.1
SourceCodeUrl: https://github.com/joe-king-sh/aws-codecommit-pull-request-aws-codebuild-aws-chatbot
% sam package \
--template-file template.yml \
--output-template-file packaged.yml \
--s3-bucket serverless-application-repository-deploy-bucket
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "serverlessrepo.amazonaws.com"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::serverless-application-repository-deploy-bucket/*"
}
]
}
% sam publish \
--template packaged.yml \
--region ap-northeast-1
Publish Succeeded
Created new application with the following metadata:
{
"Name": "tests-pullrequest-in-codecommit-using-codebuild-and-notify-slack",
"Description": "This repository contains sample code that tests pull requests created in AWS CodeCommit with CodeBuild and notifies to Slack using AWS Chatbot.",
"Author": "joe-king-sh",
"SpdxLicenseId": "AML",
"LicenseUrl": "s3://serverless-application-repository-deploy-bucket/15d219711004e23a9507e8ab1ce160b7",
"ReadmeUrl": "s3://serverless-application-repository-deploy-bucket/fa5d01dad58d52938c900bbc34ce3cc1",
"Labels": [
"codecommit",
"codebuild",
"awschatbot",
"slack",
"lambda",
"ci",
"eventbridge"
],
"HomePageUrl": "https://github.com/joe-king-sh/aws-codecommit-pull-request-aws-codebuild-aws-chatbot",
"SemanticVersion": "0.0.1",
"SourceCodeUrl": "https://github.com/joe-king-sh/aws-codecommit-pull-request-aws-codebuild-aws-chatbot"
}
Click the link below to view your application in AWS console:
https://console.aws.amazon.com/serverlessrepo/home?region=ap-northeast-1#/published-applications/arn:aws:serverlessrepo:ap-northeast-1:757523705531:applications~tests-pullrequest-in-codecommit-using-codebuild-and-notify-slack
SAM에 앱을 구축하는 것은 물론 공개되기 전에 지령 1개를 쓰는 것도 수월하다.
SAM은 Cfn의 확장으로 최근에 Cfn 자원
sam deploy
, sam validate
등sam 명령도 사용할 수 있다는 것을 알게 되었다.지금까지SAM에 템플릿을 써도
aws cloudformation
지령으로 디자인했기 때문에 SAM의 장점을 더욱 활용하고 싶습니다.
Reference
이 문제에 관하여(응용 프로그램을 Serverless Application Repository에 공개), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/joe-king-sh/items/f2559e2b6e015b44d6d2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)