-
-
Notifications
You must be signed in to change notification settings - Fork 10
@danielridgebot DevOps Wiki
Meet Daniel.
Daniel Ridge (@danielridgebot) is a bot, and its repo check-ghpages-versions' current function for hackforla/devops is to automatically check the dependencies for the Docker image created from ghpages-docker and used by Hack for LA. (For more details, see ghpages-docker's README & wiki).
ghpages-dockeris designed to mimic the GitHub Pages environment on a local server, and is thus pegged to the dependency versions used by GitHub Pages. When those change, theghpages-dockerDockerfileneeds to be updated, and a new image built from it and pushed to Docker Hub.
@danielridgebot's workflows in repo check-ghpages-versions periodically
- check those dependencies and,
- when GitHub Pages upgrades to a new version, open an issue in the hackforla/devops repo.
Specifically, there are two dependencies that need to be checked: Ruby and the
github-pagesRuby gem*. There is one workflow for each, entitled check-ghpages-version.yml and check-ruby-version.yml, respectively. The code for both is nearly identical...
*A gem for Ruby is a package that provides a standard format for distributing Ruby programs and libraries. (References: RubyGems Wiki, What is a gem?)
Having a bot @danielridgebot
- automates the process of checking the dependencies (1) Ruby and (2) the github-pages Ruby gem and saves manual labor from engineers
- ensures the
ghpages-dockerare up-to-date (in regards to the above 2 dependencies).
In Daniel's check-ghpages-versions/.github/workflows/ repo subdirectory link,
-
check-gh-pages-version.yml- workflow runs every day at 1200 UTC
- reads the official GitHub Pages' current version** of
github-pagesgem - reads the version number currently being used by
ghpages-docker, stored inrelease versions/github-pages-gem.txt - compares the 2 version numbers:
- if there is a change, the workflow opens an issue in
hackforla/devopsnotifying the DevOps team that an update is required. - writes the new version number to
github-pages-gem.txtand commits the change.***
- if there is a change, the workflow opens an issue in
-
check-ruby-version.yml- workflow runs every day at 1215 UTC, on its own schedule and independently of
check-gh-pages-version - reads the official GitHub Pages' current version** of
Ruby - reads the version number currently being used by
ghpages-docker, stored inrelease versions/ruby.txt- if there is a change, the workflow opens an issue in
hackforla/devopsnotifying the DevOps team that an update is required. - writes the new version number to
ruby.txtand commits the change.***
- if there is a change, the workflow opens an issue in
- workflow runs every day at 1215 UTC, on its own schedule and independently of
-
keepalive.yml- workflow runs every Monday at 0330 UTC
- makes an empty commit if the repo has had no commits for more than 50 days
- exists because GitHub automatically disables scheduled workflows after 60 days with no repository activity. That is what silently stopped both checks above between 2026-01-07 and 2026-08-24.
**GitHub's dependency list with release versions: https://pages.github.com/versions.json
***Note that this means that by the time an issue is opened, the version number in the relevant text file already reflects the new version used by GitHub Pages, not the version currently used in ghpages-docker.
- the Websites team that uses the
ghpages-docker.
If you are interested in contributing, please reach out to @ericvennemeyer and/or @hackforla's Ops or Website project manager. Thank you for being interested in improving the package!
- @danielridgebot
check-ghpages-versionsghpages-dockerghpages-docker's READMEghpages-docker's Wiki- Follow the steps here, How do you update ghpages-docker, for more details on to resolve issues opened by Daniel.
YAML
Docker
No input is required, although the issues created by Daniel (Output) is currently expected to be closed manually by a human. Follow the steps here, How do you update ghpages-docker, for more details on to resolve issues opened by Daniel.
The workflow opens an issue in hackforla/devops notifying the DevOps team that an update of either github-pages-gem or Ruby is required.
- consider moving the workflows off
secrets.DR_PAT, a personal access token that has to be rotated before it expires, and onto the org's GitHub App credentials - Feature request: upgrade to operation of bot, more instructions in the issues it creates
- Update this wiki