Update Jenkinsfile #36
This file contains hidden or 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: Deploy AWS Lambda with Serverless | |
on: | |
push: | |
branches: | |
- main | |
- dev | |
pull_request: | |
branches: | |
- main # Run tests when merging to main and dev | |
- dev | |
jobs: | |
deploy: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Set up Python 3.9 | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.9" | |
- name: Verify Python installation | |
run: python --version | |
- name: Installing Requirements | |
run: pip install -r requirements.txt | |
- name: Triggering the run_checks using shell | |
run: sh run_checks.sh | |
- name: Install Serverless Framework | |
run: | | |
npm install -g [email protected] | |
serverless --version # Debugging: Check installed version | |
- name: Install Serverless Plugins | |
run: | | |
sls plugin install -n serverless-wsgi | |
sls plugin install -n serverless-python-requirements | |
- name: Configure AWS Credentials | |
uses: aws-actions/configure-aws-credentials@v2 | |
with: | |
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
aws-region: ${{ secrets.AWS_REGION }} | |
- name: Install only production dependencies | |
run: npm ci --only=production # Only production dependencies are deployed | |
- name: Installing the prune Plugin | |
run: npm install serverless-prune-plugin | |
- name: Deploy with Serverless | |
env: | |
SERVERLESS_ACCESS_KEY: ${{ secrets.SERVERLESS_ACCESS_KEY }} | |
run: serverless deploy |