Skip to content

Serverless Application Repository

CloudMock emulates the AWS Serverless Application Repository, supporting application management, versioning, and change set creation.

OperationStatusNotes
CreateApplicationSupportedCreates an application
GetApplicationSupportedReturns application details
ListApplicationsSupportedLists all applications
DeleteApplicationSupportedDeletes an application
CreateApplicationVersionSupportedCreates a new version
ListApplicationVersionsSupportedLists application versions
CreateChangeSetSupportedCreates a CloudFormation change set for deployment
import { ServerlessApplicationRepositoryClient, CreateApplicationCommand } from '@aws-sdk/client-serverlessapplicationrepository';
const client = new ServerlessApplicationRepositoryClient({
endpoint: 'http://localhost:4566',
region: 'us-east-1',
credentials: { accessKeyId: 'test', secretAccessKey: 'test' },
});
const { ApplicationId } = await client.send(new CreateApplicationCommand({
Name: 'my-serverless-app',
Author: 'test-author',
Description: 'A test application',
SemanticVersion: '1.0.0',
TemplateBody: '{ "AWSTemplateFormatVersion": "2010-09-09" }',
}));
console.log(ApplicationId);
import boto3
client = boto3.client('serverlessrepo',
endpoint_url='http://localhost:4566',
region_name='us-east-1',
aws_access_key_id='test',
aws_secret_access_key='test')
response = client.create_application(
Name='my-serverless-app',
Author='test-author',
Description='A test application',
SemanticVersion='1.0.0',
TemplateBody='{ "AWSTemplateFormatVersion": "2010-09-09" }')
print(response['ApplicationId'])
cloudmock.yml
services:
serverlessrepo:
enabled: true
  • Change sets are created as stubs and do not deploy actual stacks
  • Templates are stored but not validated
  • Application sharing and policy management are not supported