diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 9eefecd7b..ad78c7b61 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -1,21 +1,20 @@ name: StaleBOT on: - workflow_dispatch: - name: 'Force cleanup' - schedule: - - cron: "30 14 * * *" + workflow_dispatch: + schedule: + - cron: "30 14 * * *" jobs: - stale: - runs-on: ubuntu-latest - steps: - - uses: actions/stale@v3 - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - days-before-stale: 7 - days-before-close: 3 - stale-issue-message: 'This issue has been marked as stale due to inactivity and will be closed. Comment anything on this issue to prevent it' - stale-pr-message: 'This pull request has been marked as stale due to inactivity and will be closed. Comment anything on this PR to prevent it' - exempt-issue-labels: 'no-stale' - exempt-pr-labels: 'no-stale' + stale: + runs-on: ubuntu-latest + steps: + - uses: actions/stale@v3 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + days-before-stale: 7 + days-before-close: 3 + stale-issue-message: "This issue has been marked as stale due to inactivity and will be closed. Comment anything on this issue to prevent it" + stale-pr-message: "This pull request has been marked as stale due to inactivity and will be closed. Comment anything on this PR to prevent it" + exempt-issue-labels: "no-stale" + exempt-pr-labels: "no-stale" diff --git a/.github/workflows/validation.yml b/.github/workflows/validation.yml index 259be4388..0a11830df 100644 --- a/.github/workflows/validation.yml +++ b/.github/workflows/validation.yml @@ -36,15 +36,10 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Get Modified JSON Files - id: modified_files - run: | - MODIFIED_FILES=$(git diff --name-only ${{ github.event.before }} ${{ github.sha }} | grep '^domains/.*\.json$' | sed 's|.*/||' | tr '\n' ',' | sed 's|,$||') - echo "MODIFIED_FILES=${MODIFIED_FILES}" >> $GITHUB_ENV - - run: npm install - run: npm test env: - PULL_REQUEST: ${{ github.event_name == 'pull_request' }} + EVENT: ${{ github.event_name }} + PR_AUTHOR: ${{ github.event.pull_request.user.login }} MODIFIED_FILES: ${{ env.MODIFIED_FILES }} diff --git a/tests/pr.test.js b/tests/pr.test.js index 6e5588fd7..98a153a7d 100644 --- a/tests/pr.test.js +++ b/tests/pr.test.js @@ -1,5 +1,3 @@ -if (!process.env.PULL_REQUEST) return; - const t = require("ava"); const fs = require("fs-extra"); const path = require("path"); @@ -12,12 +10,17 @@ const domainsPath = path.resolve("domains"); const admins = require("../util/administrators.json"); t("Modified JSON files must be owned by the PR author", (t) => { + if(process.env.EVENT !== "pull_request") { + t.pass(); + return; + } + MODIFIED_FILES.forEach((file) => { const domain = fs.readJsonSync(path.join(domainsPath, file)); t.true( domain.owner.username === PR_AUTHOR || admins.includes(PR_AUTHOR), - `${file}: Owner should be ${PR_AUTHOR} but is ${domain.owner}` + `${file}: Owner is ${domain.owner.username} but ${PR_AUTHOR} is the PR author` ); }); });