This project sets custom domains for GitHub Pages of the repositories, including creating them in AWS Route53.
- AWS Account
- A Hosted Zone in AWS for the domain you chose to use
- Fork this repository
- Set the following Secrets in your the forked GitHub repository (Encrypted Secrets):
AWS_ACCESS_KEY_IDandAWS_SECRET_ACCESS_KEYto an access key of your AWS accountAWS_REGIONto an AWS region you chose to useGH_ACCESS_TOKENto a GitHub Personal Access Token withreposcope set
- Update
settings.jsonwith your account name and domain to use (repositories should be empty or ignored, the scripts will overwrite it) - Run the
Deployaction when you wish, which will:- Read all your repositories and collect all public and owned ones that have GitHub Pages enabled or has
gh-pagesbranch - Deploy the necessary
CNAMErecords to the domain's hosted zone in AWS
(i.e.CNAME {repository-name}.{domain}to{account}.github.io) - Updates the repositories:
- Enables pages if it is not enabled yet and there is a
gh-pagesbranch - Sets custom domain for the pages
- Waits for HTTPS certificate for the custom domain and enabled HTTPS enforced
- Sets home page for the repository
- Enables pages if it is not enabled yet and there is a
- Read all your repositories and collect all public and owned ones that have GitHub Pages enabled or has