diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml new file mode 100644 index 0000000..94363aa --- /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 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@v2 + 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