{
  "service": {
    "service": "one-page-app-fixture",
    "serviceObject": {
      "name": "one-page-app-fixture"
    },
    "provider": {
      "stage": "dev",
      "variableSyntax": "\\${([^{}]+?)}",
      "name": "aws",
      "runtime": "nodejs8.10",
      "memorySize": 512,
      "region": "us-east-1",
      "versionFunctions": true,
      "remoteFunctionData": null,
      "compiledCloudFormationTemplate": {
        "AWSTemplateFormatVersion": "2010-09-09",
        "Description": "The AWS CloudFormation template for this Serverless application",
        "Resources": {
          "ServerlessDeploymentBucket": {
            "Type": "AWS::S3::Bucket",
            "Properties": {
              "BucketEncryption": {
                "ServerSideEncryptionConfiguration": [
                  {
                    "ServerSideEncryptionByDefault": {
                      "SSEAlgorithm": "AES256"
                    }
                  }
                ]
              }
            }
          },
          "ServerlessDeploymentBucketPolicy": {
            "Type": "AWS::S3::BucketPolicy",
            "Properties": {
              "Bucket": {
                "Ref": "ServerlessDeploymentBucket"
              },
              "PolicyDocument": {
                "Statement": [
                  {
                    "Action": "s3:*",
                    "Effect": "Deny",
                    "Principal": "*",
                    "Resource": [
                      {
                        "Fn::Join": [
                          "",
                          [
                            "arn:",
                            {
                              "Ref": "AWS::Partition"
                            },
                            ":s3:::",
                            {
                              "Ref": "ServerlessDeploymentBucket"
                            },
                            "/*"
                          ]
                        ]
                      }
                    ],
                    "Condition": {
                      "Bool": {
                        "aws:SecureTransport": false
                      }
                    }
                  }
                ]
              }
            }
          },
          "HelloLogGroup": {
            "Type": "AWS::Logs::LogGroup",
            "Properties": {
              "LogGroupName": "/aws/lambda/one-page-app-fixture-dev-hello"
            }
          },
          "IamRoleLambdaExecution": {
            "Type": "AWS::IAM::Role",
            "Properties": {
              "AssumeRolePolicyDocument": {
                "Version": "2012-10-17",
                "Statement": [
                  {
                    "Effect": "Allow",
                    "Principal": {
                      "Service": [
                        "lambda.amazonaws.com"
                      ]
                    },
                    "Action": [
                      "sts:AssumeRole"
                    ]
                  }
                ]
              },
              "Policies": [
                {
                  "PolicyName": {
                    "Fn::Join": [
                      "-",
                      [
                        "one-page-app-fixture-dev",
                        "lambda"
                      ]
                    ]
                  },
                  "PolicyDocument": {
                    "Version": "2012-10-17",
                    "Statement": [
                      {
                        "Effect": "Allow",
                        "Action": [
                          "logs:CreateLogStream",
                          "logs:CreateLogGroup"
                        ],
                        "Resource": [
                          {
                            "Fn::Sub": "arn:${AWS::Partition}:logs:${AWS::Region}:${AWS::AccountId}:log-group:/aws/lambda/one-page-app-fixture-dev*:*"
                          }
                        ]
                      },
                      {
                        "Effect": "Allow",
                        "Action": [
                          "logs:PutLogEvents"
                        ],
                        "Resource": [
                          {
                            "Fn::Sub": "arn:${AWS::Partition}:logs:${AWS::Region}:${AWS::AccountId}:log-group:/aws/lambda/one-page-app-fixture-dev*:*:*"
                          }
                        ]
                      }
                    ]
                  }
                }
              ],
              "Path": "/",
              "RoleName": {
                "Fn::Join": [
                  "-",
                  [
                    "one-page-app-fixture-dev",
                    {
                      "Ref": "AWS::Region"
                    },
                    "lambdaRole"
                  ]
                ]
              }
            }
          },
          "HelloLambdaFunction": {
            "Type": "AWS::Lambda::Function",
            "Properties": {
              "Code": {
                "S3Bucket": {
                  "Ref": "ServerlessDeploymentBucket"
                },
                "S3Key": "serverless/one-page-app-fixture/dev/1591823444501-2020-06-10T21:10:44.501Z/one-page-app-fixture.zip"
              },
              "FunctionName": "one-page-app-fixture-dev-hello",
              "Handler": "sls-next-build/hello.render",
              "MemorySize": 512,
              "Role": {
                "Fn::GetAtt": [
                  "IamRoleLambdaExecution",
                  "Arn"
                ]
              },
              "Runtime": "nodejs8.10",
              "Timeout": 6
            },
            "DependsOn": [
              "HelloLogGroup",
              "IamRoleLambdaExecution"
            ]
          },
          "HelloLambdaVersion2GNo4t3vLcPem6imViVEpgZebTnj7WPi6MWOkLLM": {
            "Type": "AWS::Lambda::Version",
            "DeletionPolicy": "Retain",
            "Properties": {
              "FunctionName": {
                "Ref": "HelloLambdaFunction"
              },
              "CodeSha256": "k2JFgCDY2u3lpf6Ap9+/630dooYa7+46ndWLl8zDUXo="
            }
          },
          "ApiGatewayRestApi": {
            "Type": "AWS::ApiGateway::RestApi",
            "Properties": {
              "Name": "dev-one-page-app-fixture",
              "EndpointConfiguration": {
                "Types": [
                  "EDGE"
                ]
              },
              "Policy": ""
            }
          },
          "ApiGatewayResourceHello": {
            "Type": "AWS::ApiGateway::Resource",
            "Properties": {
              "ParentId": {
                "Fn::GetAtt": [
                  "ApiGatewayRestApi",
                  "RootResourceId"
                ]
              },
              "PathPart": "hello",
              "RestApiId": {
                "Ref": "ApiGatewayRestApi"
              }
            }
          },
          "ApiGatewayMethodHelloGet": {
            "Type": "AWS::ApiGateway::Method",
            "Properties": {
              "HttpMethod": "GET",
              "RequestParameters": {},
              "ResourceId": {
                "Ref": "ApiGatewayResourceHello"
              },
              "RestApiId": {
                "Ref": "ApiGatewayRestApi"
              },
              "ApiKeyRequired": false,
              "AuthorizationType": "NONE",
              "Integration": {
                "IntegrationHttpMethod": "POST",
                "Type": "AWS_PROXY",
                "Uri": {
                  "Fn::Join": [
                    "",
                    [
                      "arn:",
                      {
                        "Ref": "AWS::Partition"
                      },
                      ":apigateway:",
                      {
                        "Ref": "AWS::Region"
                      },
                      ":lambda:path/2015-03-31/functions/",
                      {
                        "Fn::GetAtt": [
                          "HelloLambdaFunction",
                          "Arn"
                        ]
                      },
                      "/invocations"
                    ]
                  ]
                }
              },
              "MethodResponses": []
            }
          },
          "ApiGatewayMethodHelloHead": {
            "Type": "AWS::ApiGateway::Method",
            "Properties": {
              "HttpMethod": "HEAD",
              "RequestParameters": {},
              "ResourceId": {
                "Ref": "ApiGatewayResourceHello"
              },
              "RestApiId": {
                "Ref": "ApiGatewayRestApi"
              },
              "ApiKeyRequired": false,
              "AuthorizationType": "NONE",
              "Integration": {
                "IntegrationHttpMethod": "POST",
                "Type": "AWS_PROXY",
                "Uri": {
                  "Fn::Join": [
                    "",
                    [
                      "arn:",
                      {
                        "Ref": "AWS::Partition"
                      },
                      ":apigateway:",
                      {
                        "Ref": "AWS::Region"
                      },
                      ":lambda:path/2015-03-31/functions/",
                      {
                        "Fn::GetAtt": [
                          "HelloLambdaFunction",
                          "Arn"
                        ]
                      },
                      "/invocations"
                    ]
                  ]
                }
              },
              "MethodResponses": []
            }
          },
          "ApiGatewayDeployment1591823443953": {
            "Type": "AWS::ApiGateway::Deployment",
            "Properties": {
              "RestApiId": {
                "Ref": "ApiGatewayRestApi"
              },
              "StageName": "dev"
            },
            "DependsOn": [
              "ApiGatewayMethodHelloGet",
              "ApiGatewayMethodHelloHead"
            ]
          },
          "HelloLambdaPermissionApiGateway": {
            "Type": "AWS::Lambda::Permission",
            "Properties": {
              "FunctionName": {
                "Fn::GetAtt": [
                  "HelloLambdaFunction",
                  "Arn"
                ]
              },
              "Action": "lambda:InvokeFunction",
              "Principal": "apigateway.amazonaws.com",
              "SourceArn": {
                "Fn::Join": [
                  "",
                  [
                    "arn:",
                    {
                      "Ref": "AWS::Partition"
                    },
                    ":execute-api:",
                    {
                      "Ref": "AWS::Region"
                    },
                    ":",
                    {
                      "Ref": "AWS::AccountId"
                    },
                    ":",
                    {
                      "Ref": "ApiGatewayRestApi"
                    },
                    "/*/*"
                  ]
                ]
              }
            }
          },
          "NextStaticAssetsS3Bucket": {
            "Type": "AWS::S3::Bucket",
            "Properties": {
              "AccessControl": "PublicRead",
              "CorsConfiguration": {
                "CorsRules": [
                  {
                    "AllowedHeaders": [
                      "*"
                    ],
                    "AllowedMethods": [
                      "GET"
                    ],
                    "AllowedOrigins": [
                      "*"
                    ],
                    "ExposedHeaders": [
                      "Date"
                    ],
                    "Id": "NextStaticAssetsS3BucketId1",
                    "MaxAge": "3600"
                  }
                ]
              },
              "BucketName": "onepageappbucket",
              "WebsiteConfiguration": {
                "IndexDocument": "index.html",
                "ErrorDocument": "error.html"
              }
            },
            "DeletionPolicy": "Retain"
          },
          "NextStaticAssetsProxyParentResource": {
            "Type": "AWS::ApiGateway::Resource",
            "Properties": {
              "ParentId": {
                "Fn::GetAtt": [
                  "ApiGatewayRestApi",
                  "RootResourceId"
                ]
              },
              "PathPart": "_next",
              "RestApiId": {
                "Ref": "ApiGatewayRestApi"
              }
            }
          },
          "NextStaticAssetsProxyResource": {
            "Type": "AWS::ApiGateway::Resource",
            "Properties": {
              "ParentId": {
                "Ref": "NextStaticAssetsProxyParentResource"
              },
              "PathPart": "{proxy+}",
              "RestApiId": {
                "Ref": "ApiGatewayRestApi"
              }
            }
          },
          "NextStaticAssetsProxyMethod": {
            "Type": "AWS::ApiGateway::Method",
            "Properties": {
              "AuthorizationType": "NONE",
              "ResourceId": {
                "Ref": "NextStaticAssetsProxyResource"
              },
              "RestApiId": {
                "Ref": "ApiGatewayRestApi"
              },
              "HttpMethod": "GET",
              "MethodResponses": [
                {
                  "StatusCode": 200
                }
              ],
              "RequestParameters": {
                "method.request.path.proxy": true
              },
              "Integration": {
                "IntegrationHttpMethod": "GET",
                "Type": "HTTP_PROXY",
                "Uri": "https://s3.amazonaws.com/onepageappbucket/_next/{proxy}",
                "RequestParameters": {
                  "integration.request.path.proxy": "method.request.path.proxy"
                },
                "IntegrationResponses": [
                  {
                    "StatusCode": 200
                  }
                ]
              }
            }
          }
        },
        "Outputs": {
          "ServerlessDeploymentBucketName": {
            "Value": {
              "Ref": "ServerlessDeploymentBucket"
            }
          },
          "HelloLambdaFunctionQualifiedArn": {
            "Description": "Current Lambda function version",
            "Value": {
              "Ref": "HelloLambdaVersion2GNo4t3vLcPem6imViVEpgZebTnj7WPi6MWOkLLM"
            }
          },
          "ServiceEndpoint": {
            "Description": "URL of the service endpoint",
            "Value": {
              "Fn::Join": [
                "",
                [
                  "https://",
                  {
                    "Ref": "ApiGatewayRestApi"
                  },
                  ".execute-api.",
                  {
                    "Ref": "AWS::Region"
                  },
                  ".",
                  {
                    "Ref": "AWS::URLSuffix"
                  },
                  "/dev"
                ]
              ]
            }
          },
          "NextStaticAssetsS3BucketWebsiteURL": {
            "Value": {
              "Fn::GetAtt": [
                "NextStaticAssetsS3Bucket",
                "WebsiteURL"
              ]
            },
            "Description": "URL for the S3 website hosting the static assets"
          },
          "NextStaticAssetsS3BucketSecureURL": {
            "Value": {
              "Fn::Join": [
                "",
                [
                  "https://",
                  {
                    "Fn::GetAtt": [
                      "NextStaticAssetsS3Bucket",
                      "DomainName"
                    ]
                  }
                ]
              ]
            },
            "Description": "S3 Bucket which holds the static assets"
          }
        }
      },
      "coreCloudFormationTemplate": {
        "AWSTemplateFormatVersion": "2010-09-09",
        "Description": "The AWS CloudFormation template for this Serverless application",
        "Resources": {
          "ServerlessDeploymentBucket": {
            "Type": "AWS::S3::Bucket",
            "Properties": {
              "BucketEncryption": {
                "ServerSideEncryptionConfiguration": [
                  {
                    "ServerSideEncryptionByDefault": {
                      "SSEAlgorithm": "AES256"
                    }
                  }
                ]
              }
            }
          },
          "ServerlessDeploymentBucketPolicy": {
            "Type": "AWS::S3::BucketPolicy",
            "Properties": {
              "Bucket": {
                "Ref": "ServerlessDeploymentBucket"
              },
              "PolicyDocument": {
                "Statement": [
                  {
                    "Action": "s3:*",
                    "Effect": "Deny",
                    "Principal": "*",
                    "Resource": [
                      {
                        "Fn::Join": [
                          "",
                          [
                            "arn:",
                            {
                              "Ref": "AWS::Partition"
                            },
                            ":s3:::",
                            {
                              "Ref": "ServerlessDeploymentBucket"
                            },
                            "/*"
                          ]
                        ]
                      }
                    ],
                    "Condition": {
                      "Bool": {
                        "aws:SecureTransport": false
                      }
                    }
                  }
                ]
              }
            }
          },
          "NextStaticAssetsS3Bucket": {
            "Type": "AWS::S3::Bucket",
            "Properties": {
              "AccessControl": "PublicRead",
              "CorsConfiguration": {
                "CorsRules": [
                  {
                    "AllowedHeaders": [
                      "*"
                    ],
                    "AllowedMethods": [
                      "GET"
                    ],
                    "AllowedOrigins": [
                      "*"
                    ],
                    "ExposedHeaders": [
                      "Date"
                    ],
                    "Id": "NextStaticAssetsS3BucketId1",
                    "MaxAge": "3600"
                  }
                ]
              },
              "BucketName": "onepageappbucket",
              "WebsiteConfiguration": {
                "IndexDocument": "index.html",
                "ErrorDocument": "error.html"
              }
            },
            "DeletionPolicy": "Retain"
          }
        },
        "Outputs": {
          "ServerlessDeploymentBucketName": {
            "Value": {
              "Ref": "ServerlessDeploymentBucket"
            }
          },
          "NextStaticAssetsS3BucketWebsiteURL": {
            "Value": {
              "Fn::GetAtt": [
                "NextStaticAssetsS3Bucket",
                "WebsiteURL"
              ]
            },
            "Description": "URL for the S3 website hosting the static assets"
          },
          "NextStaticAssetsS3BucketSecureURL": {
            "Value": {
              "Fn::Join": [
                "",
                [
                  "https://",
                  {
                    "Fn::GetAtt": [
                      "NextStaticAssetsS3Bucket",
                      "DomainName"
                    ]
                  }
                ]
              ]
            },
            "Description": "S3 Bucket which holds the static assets"
          }
        }
      },
      "vpc": {}
    },
    "custom": {
      "serverless-nextjs": {
        "assetsBucketName": "onepageappbucket"
      }
    },
    "plugins": [
      "index"
    ],
    "pluginsData": {},
    "functions": {
      "hello": {
        "handler": "sls-next-build/hello.render",
        "events": [
          {
            "http": {
              "path": "hello",
              "method": "get",
              "integration": "AWS_PROXY"
            }
          },
          {
            "http": {
              "path": "hello",
              "method": "head",
              "integration": "AWS_PROXY"
            }
          }
        ],
        "name": "one-page-app-fixture-dev-hello",
        "package": {},
        "memory": 512,
        "timeout": 6,
        "runtime": "nodejs8.10",
        "vpc": {},
        "versionLogicalId": "HelloLambdaVersion2GNo4t3vLcPem6imViVEpgZebTnj7WPi6MWOkLLM"
      }
    },
    "resources": {
      "Resources": {
        "NextStaticAssetsS3Bucket": {
          "Type": "AWS::S3::Bucket",
          "Properties": {
            "AccessControl": "PublicRead",
            "CorsConfiguration": {
              "CorsRules": [
                {
                  "AllowedHeaders": [
                    "*"
                  ],
                  "AllowedMethods": [
                    "GET"
                  ],
                  "AllowedOrigins": [
                    "*"
                  ],
                  "ExposedHeaders": [
                    "Date"
                  ],
                  "Id": "NextStaticAssetsS3BucketId1",
                  "MaxAge": "3600"
                }
              ]
            },
            "BucketName": "onepageappbucket",
            "WebsiteConfiguration": {
              "IndexDocument": "index.html",
              "ErrorDocument": "error.html"
            }
          },
          "DeletionPolicy": "Retain"
        },
        "NextStaticAssetsProxyParentResource": {
          "Type": "AWS::ApiGateway::Resource",
          "Properties": {
            "ParentId": {
              "Fn::GetAtt": [
                "ApiGatewayRestApi",
                "RootResourceId"
              ]
            },
            "PathPart": "_next",
            "RestApiId": {
              "Ref": "ApiGatewayRestApi"
            }
          }
        },
        "NextStaticAssetsProxyResource": {
          "Type": "AWS::ApiGateway::Resource",
          "Properties": {
            "ParentId": {
              "Ref": "NextStaticAssetsProxyParentResource"
            },
            "PathPart": "{proxy+}",
            "RestApiId": {
              "Ref": "ApiGatewayRestApi"
            }
          }
        },
        "NextStaticAssetsProxyMethod": {
          "Type": "AWS::ApiGateway::Method",
          "Properties": {
            "AuthorizationType": "NONE",
            "ResourceId": {
              "Ref": "NextStaticAssetsProxyResource"
            },
            "RestApiId": {
              "Ref": "ApiGatewayRestApi"
            },
            "HttpMethod": "GET",
            "MethodResponses": [
              {
                "StatusCode": 200
              }
            ],
            "RequestParameters": {
              "method.request.path.proxy": true
            },
            "Integration": {
              "IntegrationHttpMethod": "GET",
              "Type": "HTTP_PROXY",
              "Uri": "https://s3.amazonaws.com/onepageappbucket/_next/{proxy}",
              "RequestParameters": {
                "integration.request.path.proxy": "method.request.path.proxy"
              },
              "IntegrationResponses": [
                {
                  "StatusCode": 200
                }
              ]
            }
          }
        }
      },
      "Outputs": {
        "NextStaticAssetsS3BucketWebsiteURL": {
          "Value": {
            "Fn::GetAtt": [
              "NextStaticAssetsS3Bucket",
              "WebsiteURL"
            ]
          },
          "Description": "URL for the S3 website hosting the static assets"
        },
        "NextStaticAssetsS3BucketSecureURL": {
          "Value": {
            "Fn::Join": [
              "",
              [
                "https://",
                {
                  "Fn::GetAtt": [
                    "NextStaticAssetsS3Bucket",
                    "DomainName"
                  ]
                }
              ]
            ]
          },
          "Description": "S3 Bucket which holds the static assets"
        }
      }
    },
    "serviceFilename": "serverless.yml",
    "layers": {},
    "isDashboardMonitoringPreconfigured": false,
    "artifact": "/Users/daniel/workspace/serverless-next.js/packages/serverless-plugin/__tests__/fixtures/one-page-app/.serverless/one-page-app-fixture.zip"
  },
  "package": {
    "artifactDirectoryName": "serverless/one-page-app-fixture/dev/1591823444501-2020-06-10T21:10:44.501Z",
    "artifact": "one-page-app-fixture.zip"
  }
}