Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jayef0/chalice-extended-action
Automated deployment of your Chalice application via Github Actions
https://github.com/jayef0/chalice-extended-action
aws-lambda chalice github-actions pip python3
Last synced: about 1 month ago
JSON representation
Automated deployment of your Chalice application via Github Actions
- Host: GitHub
- URL: https://github.com/jayef0/chalice-extended-action
- Owner: jayef0
- License: other
- Created: 2020-04-18T12:29:48.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-11-10T21:03:35.000Z (about 3 years ago)
- Last Synced: 2024-10-31T10:50:00.228Z (about 2 months ago)
- Topics: aws-lambda, chalice, github-actions, pip, python3
- Language: Shell
- Homepage:
- Size: 96.7 KB
- Stars: 26
- Watchers: 2
- Forks: 21
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Chalice Extended Action
This Github action allows automated deployment of your Chalice application via Github Actions.
You don't know what Chalice is?
To put it in a nutshell: Python Serverless Microframework for AWS
Link: [https://github.com/aws/chalice](https://github.com/aws/chalice)
## Parameters
The parameters will be passed to the action by using environment variables.
| Name | Description | Required? |
|---|---|---|
| WORKING_DIRECTORY | Working directory of chalice in which the chalice project is or should be stored | Optional |
| REQUIREMENTS_FILE | Path to a requirements file which should be installed before handling the chalice project | Optional |
| PROJECT_DIR | Path to a directory which contains a chalice project | Optional |
| STAGE | Name of stage which should be used | Optional |
| OPERATION | Chalice operation | Required |## Usage
1. Create a directory named `.github/workflows/`
2. Create a YAML file, e.g. action_workflow.yml, and place it in the created directory above
3. Example content of the YAML file:
```
on:
push:
branches:
- master
name: Deploy branch to Chalice
jobs:
deploy:
name: deploy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: chalice deploy
uses: jayef0/[email protected]
env:
WORKING_DIRECTORY: backend/chalice
REQUIREMENTS_FILE: requirements.prod.txt
OPERATION: deploy
STAGE: dev
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_DEFAULT_REGION: us-east-1
```## Functionality
A short overview of the execution process:
![](chalice-extended-action-execution-process.png)
## Secrets
The recommendation is to set the AWS credentials as GitHub secrets in your GitHub repository.