Serverless Framework에서 S3Bucket 만들기

Serverless Framework resources를 사용하면 CloudFormation을 사용하여 S3와 같은 리소스를 만들 수 있습니다.
그리고, 그 쓰는 방법은 대략 그런 느낌.

serverless.yml
resources:
  Resources:
    ExampleLogs:
      Type: AWS::S3::Bucket
      Properties:
        BucketName: example-logs
  Outputs:
    RdsLogs:
      Description: "Example Log Bucket"
      Value:
        Ref: "ExampleLogs"
OutputsRef 의 값과 Resources 로 설정한 이름(이번은 ExampleLogs )은 같게 합시다.

성공하면 Serverless Framework의 Outputs로 출력됩니다.



덧붙여서 CloudFormation의 기법에 따라 다음과 같이 Outputs의 값을 사용할 수 있습니다.

serverless.yml
  iamRoleStatements:
    - Effect: "Allow"
      Action:
        - "s3:GetObject"
        - "s3:PutObject"
      Resource:
        - {
          "Fn::Join": [
            "",
            [
              "arn:aws:s3:::",
              {
                "Ref": "ExampleLogs"
              }
            ]
          ]
          }

좋은 웹페이지 즐겨찾기