Skip to content

Latest commit

 

History

History
65 lines (46 loc) · 1.84 KB

README.md

File metadata and controls

65 lines (46 loc) · 1.84 KB

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

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:

Secrets

The recommendation is to set the AWS credentials as GitHub secrets in your GitHub repository.