|
| 1 | +os=$(uname -s) |
| 2 | +if [ "$os" == "Linux" ]; then |
| 3 | + ( |
| 4 | + cd lambdas/updateDockerHubImageStats |
| 5 | + rm -rf package lambda.zip |
| 6 | + mkdir package |
| 7 | + pip install -r requirements.txt -t package |
| 8 | + cp -r ../../src libs/src |
| 9 | + zip lambda.zip lambda_function.py |
| 10 | + cd package |
| 11 | + zip -r ../lambda.zip *; |
| 12 | + ) |
| 13 | +else |
| 14 | + ( |
| 15 | + cd lambdas/updateDockerHubImageStats |
| 16 | + rm -rf libs lambda.zip |
| 17 | + docker run --platform linux/x86_64 -v "$PWD":/var/task "public.ecr.aws/sam/build-python3.10" /bin/sh -c "pip install -r requirements.txt -t libs; exit" |
| 18 | + cp -r ../../src libs/src |
| 19 | + cd libs && zip -r ../lambda.zip . && cd .. |
| 20 | + zip lambda.zip lambda_function.py |
| 21 | + rm -rf libs |
| 22 | + ) |
| 23 | +fi |
| 24 | + |
| 25 | +awslocal dynamodb create-table \ |
| 26 | + --table-name localstack \ |
| 27 | + --key-schema AttributeName=user_name,KeyType=HASH AttributeName=image_name,KeyType=RANGE \ |
| 28 | + --attribute-definitions AttributeName=user_name,AttributeType=S AttributeName=image_name,AttributeType=S \ |
| 29 | + --billing-mode PAY_PER_REQUEST \ |
| 30 | + --region ap-south-1 |
| 31 | + |
| 32 | +awslocal lambda create-function \ |
| 33 | + --function-name update_docker_hub_image_stats \ |
| 34 | + --runtime python3.10 \ |
| 35 | + --timeout 10 \ |
| 36 | + --zip-file fileb://lambdas/updateDockerHubImageStats/lambda.zip \ |
| 37 | + --handler lambda_function.lambda_handler \ |
| 38 | + --dead-letter-config TargetArn=arn:aws:sns:eu-west-1:000000000000:failed-resize-topic \ |
| 39 | + --role arn:aws:iam::000000000000:role/lambda-role \ |
| 40 | + --environment Variables="{STAGE=local}" |
| 41 | + |
| 42 | +rm -rf lambdas/updateDockerHubImageStats/lambda.zip |
| 43 | + |
| 44 | +awslocal lambda wait function-active-v2 --function-name update_docker_hub_image_stats |
| 45 | +awslocal lambda create-function-url-config \ |
| 46 | + --function-name update_docker_hub_image_stats \ |
| 47 | + --auth-type NONE |
| 48 | + |
| 49 | +lambda_url=$(awslocal lambda list-function-url-configs --function-name update_docker_hub_image_stats | jq -r '.FunctionUrlConfigs[0].FunctionUrl') |
| 50 | +curl -v $lambda_url |
0 commit comments