Last active
April 13, 2023 15:30
-
-
Save mshakhomirov/1f2fe9a4f6d6a9c05a0d6a5af50a673f to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# .github/workflows/deploy_staging.yaml | |
name: STAGING AND TESTS | |
on: | |
#when there is a push to the master | |
push: | |
branches: [ master ] | |
#when there is a pull to the master | |
pull_request: | |
branches: [ master ] | |
jobs: | |
compile: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code into workspace directory | |
uses: actions/checkout@v2 | |
- name: Install AWS CLI v2 | |
run: | | |
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o /tmp/awscliv2.zip | |
unzip -q /tmp/awscliv2.zip -d /tmp | |
rm /tmp/awscliv2.zip | |
sudo /tmp/aws/install --update | |
rm -rf /tmp/aws/ | |
- name: test AWS connectivity | |
run: aws s3 ls | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.MDS_AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.MDS_AWS_SECRET_ACCESS_KEY }} | |
AWS_DEFAULT_REGION: "eu-west-1" | |
- name: Deploy staging | |
run: | | |
cd stack | |
date | |
TIME=`date +"%Y%m%d%H%M%S"` | |
base=${PWD##*/} | |
zp=$base".zip" | |
rm -f $zp | |
pip install --target ./package pyyaml==6.0 | |
cd package | |
zip -r ../${base}.zip . | |
cd $OLDPWD | |
zip -r $zp ./pipeline_manager | |
# Upload Lambda code (replace with your S3 bucket): | |
aws s3 cp ./${base}.zip s3://datalake-lambdas.aws/pipeline_manager/${base}${TIME}.zip | |
STACK_NAME=SimpleCICDWithLambdaAndRole | |
aws \ | |
cloudformation deploy \ | |
--template-file stack_cicd_service_and_role.yaml \ | |
--stack-name $STACK_NAME \ | |
--capabilities CAPABILITY_IAM \ | |
--parameter-overrides \ | |
"StackPackageS3Key"="pipeline_manager/${base}${TIME}.zip" \ | |
"Environment"="staging" \ | |
"Testing"="false" | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.MDS_AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.MDS_AWS_SECRET_ACCESS_KEY }} | |
AWS_DEFAULT_REGION: "eu-west-1" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment