lovelyCARDINAL/WikiBots

View on GitHub
.github/workflows/AbuseFilter.yaml

Summary

Maintainability
Test Coverage
name: "[schedule] AbuseFilter"

on:
  schedule:
    - cron: "35 12 * * 2,6" # Tuesday, Saturday 20:35 CST
    - cron: "35 15 10,25 * *" # 10th, 25th 23:50 CST
  workflow_dispatch:
    inputs:
      task:
        type: choice
        required: true
        options:
          - "update"
          - "global"

env:
  MOEGIRL_API_USER_AGENT: ${{ secrets.MOEGIRL_API_USER_AGENT }}
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  MOEGIRL_PASSWORD: ${{ secrets.MOEGIRL_PASSWORD }}

jobs:
  update:
    if: |
      github.event.schedule == '35 12 * * 2,6' || 
      github.event.inputs.task == 'update'
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4
      - name: Set Node Version
        uses: actions/setup-node@v4
        with:
          node-version: 20.x
          cache: "npm"
      - name: Install dependencies
        run: npm ci
      - name: Run Script
        run: node src/AbuseFilter/update.js

  global:
    runs-on: ubuntu-latest
    if: |
      github.event.schedule == '35 15 10,25 * *' || 
      github.event.inputs.task == 'global'
    steps:
      - name: Checkout
        uses: actions/checkout@v4
      - name: Set Node Version
        uses: actions/setup-node@v4
        with:
          node-version: 20.x
          cache: "npm"
      - name: Install dependencies
        run: npm ci
      - name: Run Script
        run: node src/AbuseFilter/global.js