Skip to content

dmitry-yackevich/lambda-ansible

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lambda-ansible

Setup AWS environment and deploy lambda

To run this deployment you need:

IAM user with following permissions:

  • AmazonRDSFullAccess
  • AWSLambdaFullAccess
  • IAMFullAccess
  • AmazonVPCFullAccess

Store your AWS credentials:

cat ~/.aws/credentials 
[default]
aws_access_key_id = ACCESKEY
aws_secret_access_key = SECRETKEY

For testing purpose you can also install awscli:

sudo pip install awscli
aws --version
aws configure

Add your account it to environment variables

export AWS_ACCOUNT_ID=122998

Virtual env

cd lambda-ansible
virtualenv lambda
source env/bin/activate 
echo $VIRTUAL_ENV

Install python dependencies

pip install -r /path/to/requirements.txt

After that you can run deployment:

ansible-playbook -i inventory/hosts aws.yml -e@secret_vars/secret.yml

Tips and Trics:

  • code/client.cfg store db credentials for lambda, host will be replaced after RDS setup
  • code/site-packeges contains psycopg2 with statically linked libpq.so, https://github.com/jkehler/awslambda-psycopg2 for details
  • ansible generate secret_vars/upsilon-test.yml with VPC,Subnets and RDS endpoint, which used as variables

About

Setup AWS environment and deploy lambda

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages