See Starting a Python-oriented Serverless-dot-com Project for details.
git clone serverless-template && cd serverless-template
PIPENV_VENV_IN_PROJECT=1 pipenv install --dev
pipenv shell
nodeenv -p
# Installs Node environment inside Python environmentnpm install --include=dev
# Installs Node packages inside combined Python/Node environmentexit
# For serverless to install correctly in the environment...pipenv shell
# ...we need to exit out and re-enter the environmentnpm install -g serverless
# Although the '-g' global flag is being used, Serverless install is in the Python/Node environment
- Create a public/private key pair (see Create a key pair for a trusted key group)
openssl genrsa -out private_key.pem 2048
openssl rsa -pubout -in private_key.pem -out public_key.pem
- Go to AWS Systems Manager → Parameter Store → Create parameter (ensure you are in the correct AWS region)
- Name:
/serverless-recordings-site/dev/private-key
- Description:
Private key of key-pair for signing URLs
- Tier: Standard
- Type: Secure String
- KMS Key Source: My current account
- KMS Key ID:
alias/aws/ssm
- Value: paste private key data
- Tag:
Purpose
→serverless-recordings-site
- In
config.yml
, assign the name to thePRIVATE_KEY_PARAM_STORE_NAME
attribute - In
config.yml
, paste the public key value into thePUBLIC_KEY_ENCODED
attribute as a YAML multi-line string. Note well this caution.