Our Jekyll site is currently using the deprecated jekyll-action for building and deployment. We need to transition to a vanilla GitHub Actions setup to ensure long-term maintainability and take advantage of the latest features.
Objectives
Replace the current jekyll-action workflow with a custom GitHub Actions workflow
Ensure all functionality is maintained in the new setup
Optimize the build and deployment process
Tasks
[ ] Create a new workflow file .github/workflows/jekyll-build.yml
[ ] Set up the workflow to trigger on pushes to the main branch
[ ] Configure the workflow to use the latest Ubuntu runner
[ ] Set up Ruby with the correct version (currently using X.X.X)
[ ] Implement caching for Ruby gems to improve build times
[ ] Install dependencies using Bundler
[ ] Build the Jekyll site using bundle exec jekyll build
[ ] Deploy the built site to GitHub Pages using peaceiris/actions-gh-pages@v3
[ ] Update repository settings to use GitHub Actions for Pages
[ ] Remove the old workflow file that uses jekyll-action
[ ] Test the new workflow to ensure successful build and deployment
[ ] Update documentation to reflect the new setup
Environment Variables
Ensure the following environment variables are properly set in the new workflow:
[ ] JEKYLL_ENV (set to 'production')
[ ] GITHUB_TOKEN (for deployment)
[ ] RUBY_VERSION (match our current version)
[ ] BUNDLE_PATH (for caching)
Potential Issues to Watch For
Plugin compatibility
Build performance changes
Deployment configuration
Ruby version conflicts
Additional Considerations
Implement verbose logging for initial builds to aid in debugging
Consider setting up a staging environment for testing before production deployment
Definition of Done
New workflow successfully builds and deploys the site
Background
Our Jekyll site is currently using the deprecated
jekyll-action
for building and deployment. We need to transition to a vanilla GitHub Actions setup to ensure long-term maintainability and take advantage of the latest features.Objectives
jekyll-action
workflow with a custom GitHub Actions workflowTasks
.github/workflows/jekyll-build.yml
bundle exec jekyll build
peaceiris/actions-gh-pages@v3
jekyll-action
Environment Variables
Ensure the following environment variables are properly set in the new workflow:
Potential Issues to Watch For
Additional Considerations
Definition of Done
jekyll-action
workflow is removedResources
Please comment on this issue if you have any questions or suggestions for the migration process.