2024-12-05 19:31:21 +00:00

73 lines
2.3 KiB
YAML

name: Deploy
permissions:
id-token: write
contents: read
concurrency:
group: prod
cancel-in-progress: true
on:
push:
branches: [prod]
jobs:
deploy:
runs-on: ubuntu-latest
environment: prod
steps:
- uses: actions/checkout@v3
- name: Configure Node
uses: actions/setup-node@v3
with:
node-version: '18.x'
cache: 'npm'
- name: Install packages
run: npm install -g serverless
- name: Install serverless-wsgi
run: serverless plugin install -n serverless-wsgi
- name: Install serverless-python-requirements
run: serverless plugin install -n serverless-python-requirements
- name: Install serverless-plugin-common-excludes
run: serverless plugin install -n serverless-plugin-common-excludes
- name: Install serverless-plugin-include-dependencies
run: serverless plugin install -n serverless-plugin-include-dependencies
- name: Install QEMU for ARM builds
run: docker run --privileged --rm tonistiigi/binfmt --install all
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.12"
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
role-to-assume: arn:aws:iam::001057775987:role/GithubActionsOIDC-vxtwitter-Role-ZYPHWRSFIP80
role-duration-seconds: 900
aws-region: us-east-1
- name: Deploy
run: serverless deploy --verbose
env:
VXTWITTER_LINK_CACHE: ${{ secrets.VXTWITTER_LINK_CACHE }}
VXTWITTER_DATABASE: ${{ secrets.VXTWITTER_DATABASE }}
VXTWITTER_METHOD: ${{ secrets.VXTWITTER_METHOD }}
VXTWITTER_COLOR: ${{ secrets.VXTWITTER_COLOR }}
VXTWITTER_APP_NAME: ${{ secrets.VXTWITTER_APP_NAME }}
VXTWITTER_REPO: ${{ secrets.VXTWITTER_REPO }}
VXTWITTER_URL: ${{ secrets.VXTWITTER_URL }}
VXTWITTER_COMBINATION_METHOD: ${{ secrets.VXTWITTER_COMBINATION_METHOD }}
VXTWITTER_GIF_CONVERT_API: ${{ secrets.VXTWITTER_GIF_CONVERT_API }}
VXTWITTER_WORKAROUND_TOKENS: ${{ secrets.VXTWITTER_WORKAROUND_TOKENS }}
VXTWITTER_PROXIES: ${{ secrets.VXTWITTER_PROXIES }}
SERVERLESS_ACCESS_KEY: ${{ secrets.SERVERLESS_ACCESS_KEY }}