Skip to content

Speaker/Session Content Update #4

Speaker/Session Content Update

Speaker/Session Content Update #4

name: Speaker/Session Content Update
on:
schedule:
- cron: '0 */8 * * *' # Runs every 8 hours
workflow_dispatch: # Allow manual triggering of the workflows
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
ref: source # Ensures we check out the source branch
persist-credentials: false # Required for committing later
fetch-depth: 0 # Needed for pushing changes
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Cache NPM dependencies
uses: actions/cache@v4
with:
path: node_modules
key: ${{ runner.OS }}-npm-cache
restore-keys: |
${{ runner.OS }}-npm-cache
- name: Configure Git credentials as Steve
uses: oleksiyrudenko/gha-git-credentials@v2.1
with:
global: true
name: 'Steve'
email: 'steve@stirtrek.com'
actor: 'ardalis'
token: '${{ secrets.GITHUB_TOKEN }}'
- name: Install dependencies
run: npm install
- name: Run download script
run: node ./scripts-manuallyexecuting/download-sessionize-details.js
- name: Run build schedule script
run: node ./scripts-manuallyexecuting/build-schedule-from-sessions.js
- name: Download speaker images
run: node ./scripts-manuallyexecuting/download-speaker-images.js
- name: Commit and push changes
run: |
git add .
git commit -m "Speaker/session content update by Action: $(date -u +"%Y-%m-%d %H:%M:%S UTC")" || echo "No changes to commit"
git push https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}.git source