From b7f2d1b6a2b8fb4c88f2828b9dac1e496a65fc75 Mon Sep 17 00:00:00 2001 From: Adam Heinz Date: Tue, 19 Nov 2024 12:32:12 -0500 Subject: [PATCH] Package Amazon Lambda layer and deploy to S3. --- .github/workflows/cd.yml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/cd.yml diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml new file mode 100644 index 0000000..f3f204d --- /dev/null +++ b/.github/workflows/cd.yml @@ -0,0 +1,32 @@ +name: cd +on: + push: + branches: [main] # FIXME + tags: ['*.*'] +jobs: + deploy: + runs-on: ubuntu-latest + environment: aws + env: + AWS_BUCKET: ${{ vars.AWS_BUCKET }} + AWS_DEFAULT_REGION: ${{ vars.AWS_DEFAULT_REGION }} + AWS_ROLE: arn:aws:iam::${{ vars.AWS_ACCOUNT_ID }}:role/GitHubActions + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: "3.9" + # https://docs.aws.amazon.com/lambda/latest/dg/python-layers.html#python-layer-packaging + - name: Packaging the layer content + run: | + python -m venv create_layer + source create_layer/bin/activate + pip install -r requirements.txt + mkdir python + cp -r create_layer/lib python + zip -r layer_content.zip python + - uses: aws-actions/configure-aws-credentials@v4 + with: + aws-region: ${{ env.AWS_DEFAULT_REGION }} + role-to-assume: ${{ env.AWS_ROLE }} + - run: aws s3 cp layer_content.zip s3://${{ env.AWS_BUCKET }}/vtwsclib.zip