Files
GameDB/.github/workflows/update-db.yml
T
dependabot[bot] c53304b3d0 build(deps): bump actions-js/push from 1.4 to 1.5 (#146)
Bumps [actions-js/push](https://github.com/actions-js/push) from 1.4 to 1.5.
- [Release notes](https://github.com/actions-js/push/releases)
- [Commits](https://github.com/actions-js/push/compare/v1.4...v1.5)

---
updated-dependencies:
- dependency-name: actions-js/push
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-10 15:10:57 -04:00

86 lines
2.8 KiB
YAML

---
name: Update
on:
pull_request:
branches: [master]
types: [opened, synchronize, reopened]
push:
branches: [master]
schedule:
- cron: '0 0 * * *' # every day at midnight
workflow_dispatch:
jobs:
update:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Checkout gh-pages
uses: actions/checkout@v4
with:
ref: gh-pages
path: gh-pages
persist-credentials: false # otherwise, the token used is the GITHUB_TOKEN, instead of the personal token
fetch-depth: 0 # otherwise, will fail to push refs to dest repo
- name: Get current date
id: date
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -r requirements.txt
- name: Prepare gh-pages
run: |
# empty contents to ensure deleted igdb are removed
rm -f -r ./gh-pages/*
# copy template back to pages
cp -f -r ./gh-pages-template/* ./gh-pages/
- name: Update
working-directory: gh-pages
run: |
python -u ../update_db.py \
--twitch_client_id ${{ secrets.TWITCH_CLIENT_ID }} \
--twitch_client_secret ${{ secrets.TWITCH_CLIENT_SECRET }} \
--youtube_api_key ${{ secrets.YOUTUBE_API_KEY }}
- name: Prepare Artifacts # uploading artifacts will fail if not zipped due to very large quantity of files
shell: bash
if: ${{ github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' }}
run: |
7z a "./gh-pages.zip" "gh-pages"
- name: Upload Artifacts
if: ${{ github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' }}
uses: actions/upload-artifact@v4
with:
name: gh-pages
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
path: |
${{ github.workspace }}/gh-pages.zip
- name: Deploy to gh-pages
if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/master') || (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') }} # yamllint disable-line rule:line-length
uses: actions-js/push@v1.5
with:
github_token: ${{ secrets.GH_BOT_TOKEN }}
author_email: ${{ secrets.GH_BOT_EMAIL }}
author_name: ${{ secrets.GH_BOT_NAME }}
directory: gh-pages
branch: gh-pages
force: false
message: automatic-update-${{ steps.date.outputs.date }}