added a cicd #4
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
name: S3 and Drive CI/CD Pipeline | |
on: | |
push: | |
branches: | |
- feat/drive-to-s3 | |
jobs: | |
run-pipeline: | |
runs-on: ubuntu-latest | |
permissions: | |
id-token: write | |
contents: read | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
# - name: Configure AWS credentials | |
# uses: aws-actions/configure-aws-credentials@v1 | |
# with: | |
# aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
# aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
# aws-region: ap-south-1 | |
- name: Configure AWS Credentials | |
uses: aws-actions/configure-aws-credentials@v4 | |
with: | |
aws-region: ap-south-1 | |
## the following creates an ARN based on the values entered into github secrets | |
role-to-assume: arn:aws:iam::471112850772:role/cicd | |
# role-session-name: myGitHubActions | |
- name: Rename folder in S3 to backup | |
run: | | |
aws s3 mv s3://isac-nitkkr-public/isaac-s3-images/ s3://isac-nitkkr-public/isaac-s3-images-bkp/ --recursive | |
env: | |
AWS_REGION: ap-south-1 | |
- name: Install gdown to download from Google Drive | |
run: | | |
pip install gdown | |
- name: Download Google Drive folder | |
run: | | |
gdown --folder https://drive.google.com/drive/folders/1YLdE1YjT1qSU8ank-ZVhYs5cl0jQohS8 | |
env: | |
AWS_REGION: ap-south-1 | |
- name: Unzip downloaded files | |
run: | | |
sudo apt-get install unzip | |
unzip '*.zip' -d /tmp/unzipped-folder/ | |
- name: Upload unzipped folder to S3 | |
run: | | |
aws s3 cp /tmp/unzipped-folder/ s3://isac-nitkkr-public/isaac-s3-images/ --recursive | |
env: | |
AWS_REGION: ap-south-1 | |
- name: Delete backup folder from S3 if all tasks pass | |
if: ${{ success() }} | |
run: | | |
aws s3 rm s3://isac-nitkkr-public/isaac-s3-images-bkp/ --recursive | |
env: | |
AWS_REGION: ap-south-1 |