Update feeds.toml with waitUntil defaults #62
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Publish RSS feeds to GitHub Pages | |
| on: | |
| push: | |
| branches: | |
| - main | |
| schedule: | |
| # * is a special character in YAML so you have to quote this string | |
| # run 6 times every day | |
| - cron: '0 1,5,9,12,14,19 * * *' | |
| workflow_dispatch: | |
| env: | |
| CI: true | |
| jobs: | |
| publish-feeds: | |
| timeout-minutes: 25 | |
| runs-on: ubuntu-latest | |
| container: | |
| image: mcr.microsoft.com/playwright:v1.57.0-noble | |
| env: | |
| DOCKER_CONFIG: /tmp/.docker | |
| steps: | |
| - name: Set up container environment | |
| run: | | |
| mkdir -p /tmp/.docker | |
| git config --global --add safe.directory $GITHUB_WORKSPACE || true | |
| - uses: actions/checkout@v4 | |
| - name: Clone my fork of feed-me-up-scotty | |
| run: | | |
| git clone --depth 1 https://github.com/std-move/feed-me-up-scotty.git /root/feed-me-up-scotty | |
| - name: install dependencies and compile ts into js | |
| run: | | |
| cd /root/feed-me-up-scotty | |
| npm install | |
| npm run build # outputs JS to dist/ | |
| - name: Run feed-me-up-scotty thru npx | |
| id: npx-get-feeds | |
| # partial failure does not mean that all feeds are dead | |
| continue-on-error: true | |
| env: | |
| HOME: /root | |
| run: | | |
| export DEBUG="info" | |
| # GitHub Actions unfortunately does not support retries. | |
| # this is a cumbersome method of retrying twice in case of errors. | |
| npx /root/feed-me-up-scotty || npx /root/feed-me-up-scotty || npx /root/feed-me-up-scotty | |
| - name: Deploy to GitHub Pages | |
| run: | | |
| git config user.name $GITHUB_ACTOR | |
| git config user.email $GITHUB_ACTOR@users.noreply.github.com | |
| git remote add gh-pages-remote https://x-access-token:$GITHUB_TOKEN@github.com/$GITHUB_REPOSITORY.git | |
| git fetch --no-recurse-submodules | |
| git worktree add ./gh-pages gh-pages | |
| cd gh-pages | |
| git rm -r . | |
| # fail if public does not exist or is empty | |
| [ -d ../public ] && [ -n "$(ls -A ../public 2>/dev/null)" ] || exit 1 | |
| cp -r ../public/. . | |
| git add . | |
| git commit --message="Deploying to GitHub Pages from $GITHUB_SHA" | |
| git push gh-pages-remote gh-pages:gh-pages | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| GITHUB_REPOSITORY: ${{ github.repository }} | |
| - name: Fail workflow if feed-me-up-scotty failed (even partially) | |
| if: steps.npx-get-feeds.outcome == 'failure' | |
| run: exit 1 |