I’ve manually deleted a cloudformation stack. Now, when I try to run same sls which I ran earlier it throws
the code is running this aws code pipeline using aws code build and the command being used in buildspec.yml is sls deploy
s:sls:aws:request: request error: #3 - CloudFormation.listStackResources ValidationError: Stack with id cs-user-api-dev does not exist
s: ValidationError: Stack with id cs-user-api-dev does not exist
I’ve tried. here is my sls file. this sls creates a lambda and api gateway
service: cs-user-api
provider:
name: aws
runtime: nodejs18.x
role: lambdaIAMRole
stage: ${opt:stage,'local'}
region: ${opt:region,'us-east-1'}
environment:
APP_ENV: ${self:provider.stage}
AWS_ACCOUNT_ID: ${aws:accountId}
PARAMETER_STORE_NAME: cs-${self:provider.stage}
JWT_TOKEN_EXPIRE_IN_HOURS: 12
versionFunctions: false
deploymentBucket:
name: cs-deployments-bucket-${self:provider.stage}-${aws:accountId}
serverSideEncryption: AES256
httpApi:
id: ${env:HTTP_API_ID}
stackTags:
'ProjectId': 'CaseStory'
'ApplicationId': 'UserApi'
'Environment': ${self:provider.stage}
vpc:
securityGroupIds:
- Ref: lambdaSecurityGroup
subnetIds:
- ${env:subnetid_1}
- ${env:subnetid_2}
functions:
handler:
name: ${self:service}-fun-${self:provider.stage}
handler: src/handler.handler
timeout: 20
memorySize: 256
events: ${file(./serverless-routes.js)}
layers:
- arn:aws:lambda:${env:REGION}:${aws:accountId}:layer:common-layer-${env:STAGE}:${env:commonlayertag}
- arn:aws:lambda:${env:REGION}:${aws:accountId}:layer:user-api-layer-${env:STAGE}:${env:userapilayertag}
plugins:
# - serverless-domain-manager
- serverless-offline
- serverless-dotenv-plugin
- serverless-plugin-split-stacks
# customDomain:
# domainName: ${env:DOMAIN_NAME}
# stage: $default
# createRoute53Record: true
# endpointType: 'regional'
# certificateArn: ${env:CERTIFICATE_ARN}
# basePath: "users"
package:
exclude:
- .gitignore
- .git/**
- node_modules/**
- trigger-*
- package.json
- package-lock.json
- README.md
- serverless-routes.js
resources:
Resources:
lambdaIAMRole:
Type: AWS::IAM::Role
Properties:
RoleName: ${self:service}-role-${self:provider.stage}
Tags: ${self:custom.tag}
AssumeRolePolicyDocument:
Version: '2012-10-17'
Statement:
- Action:
- sts:AssumeRole
Effect: Allow
Principal:
Service:
- lambda.amazonaws.com
ManagedPolicyArns:
- arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
- arn:aws:iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole
Policies:
- PolicyDocument:
Version: '2012-10-17'
Statement:
- Action:
- ssm:GetParameter
Effect: 'Allow'
Resource:
- arn:aws:ssm:${self:provider.region}:${aws:accountId}:parameter/${self:provider.environment.PARAMETER_STORE_NAME}
- Effect: Allow
Action:
- kms:Decrypt
Resource:
- ${env:testkmsarn}
PolicyName: ${self:service}-policy-${self:provider.stage}
lambdaSecurityGroup:
Type: AWS::EC2::SecurityGroup
Properties:
GroupName: ${self:service}-sg-${self:provider.stage}
GroupDescription: Security group for ${self:service} lambda function
VpcId: ${env:vpc_id}
SecurityGroupIngress:
- IpProtocol: tcp
FromPort: 443
ToPort: 443
CidrIp: 0.0.0.0/0
custom:
env:
prod:
ACCOUNT_ID: 00000000000000
VPCE_ONE: vpce-000000
VPC_ID: vpc-0000
SN_ONE: sn-0000
VPC_IP_RANGE: 0.0.0.0/0
HTTP_API_ID: 1
dev:
ACCOUNT_ID: 00000000000000
VPCE_ONE: vpc-00000000000000
VPC_ID: vpc-00000000000000
SN_ONE: subnet-00000000000000
VPC_IP_RANGE: 172.31.0.0/16
HTTP_API_ID: 00000000000000
qa:
ACCOUNT_ID: 00000000000000
VPCE_ONE: vpc-00000000000000
VPC_ID: vpc-00000000000000
SN_ONE: subnet-00000000000000
VPC_IP_RANGE: 172.31.0.0/16
HTTP_API_ID: 1
local:
ACCOUNT_ID: 00000000000000
VPCE_ONE: vpc-00000000000000
VPC_ID: vpc-00000000000000
SN_ONE: subnet-00000000000000
VPC_IP_RANGE: 172.31.0.0/16
HTTP_API_ID: 1
tag:
- Key: ProjectId
Value: CaseStory
- Key: ApplicationId
Value: UserApi
- Key: Environment
Value: ${self:provider.stage}
splitStacks:
nestedStackCount: 40 # Controls the number of created nested stacks
perFunction: false
perType: false
perGroupFunction: true