Finally managed to get the deployment of an eleventy - 11ty site (namely this one) and sync with AWS S3, where this blog is hosted.
Additionally you can put in a small script that purges cloudflare’s cache too.
Setting up the Github Actions workflow
create a file in your repository under .github/workflows/main.yml
, with the following contents:
name: name this build as you like
on: [push]
jobs:
build_deploy:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@master
- name: up
env:
AWS_ACCESS_KEY_ID: \{\%\- raw \-\%\}$\{\%\- endraw \-\%\}
AWS_SECRET_ACCESS_KEY: \{\%\- raw \-\%\}$\{\%\- endraw \-\%\}
run: |
npx @11ty/eleventy
aws s3 cp \
--recursive \
--acl public-read \
--region eu-central-1 \ # change it
./_site/ [s3://bucket_name] # change it
secrets
additionally set two Secrets in the repository settings on GitHub:
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
Now you should be all set, and your eleventy blog gets deployed to AWS with GitHub Actions on every push.
update
this blog post was deployed with this exact workflow, so meta
A few highlights of the workflow: