Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
bfa6eae
build(deps): bump actions/checkout in /workflow-templates
dependabot[bot] Jun 9, 2026
398ce69
Merge pull request #739 from nextcloud/dependabot/github_actions/work…
nickvergessen Jun 9, 2026
d3fcf35
fix: Master needs PHP 8.3
nickvergessen Jun 12, 2026
8124d45
ci(deps): bump actions/checkout in /.github/workflows
dependabot[bot] Jun 13, 2026
1666338
Merge pull request #740 from nextcloud/bugfix/noid/master-needs-8.3
nickvergessen Jun 13, 2026
635c9cb
Merge pull request #741 from nextcloud/dependabot/github_actions/dot-…
nickvergessen Jun 13, 2026
aef931e
fix(perf): Use GH API instead of full repo clone
SystemKeeper Jun 14, 2026
d6ee526
fix: Also check for "AI-Assisted-By" trailer
SystemKeeper Jun 14, 2026
901610a
chore: Update AI policy workflow in this repo
SystemKeeper Jun 14, 2026
5c907a1
Merge pull request #742 from nextcloud/fix/noid/ai-policy-performance
nickvergessen Jun 14, 2026
4fcd98e
build(deps): bump codecov/codecov-action in /workflow-templates
dependabot[bot] Jun 15, 2026
01964fa
build(deps): bump shivammathur/setup-php in /workflow-templates
dependabot[bot] Jun 15, 2026
e299f0a
Merge pull request #744 from nextcloud/dependabot/github_actions/work…
nickvergessen Jun 15, 2026
2e21f27
Merge pull request #743 from nextcloud/dependabot/github_actions/work…
nickvergessen Jun 15, 2026
1bac78e
fix(nextcloud-ocp): Only create issues in our repos
nickvergessen Jun 15, 2026
248cad3
Merge pull request #745 from nextcloud/bugfix/noid/dont-ping-in-forks
nickvergessen Jun 15, 2026
61c4649
fix(lint): PHP lint is instant in PHP 8.3+ and quick in others for apps
nickvergessen Jun 15, 2026
2c858a4
Merge pull request #746 from nextcloud/bugfix/noid/lint-is-quick-now
susnux Jun 15, 2026
743e19a
chore: format conditions check to multiline
Antreesy May 18, 2026
427a340
feat: add env variable to ignore auto-approval and auto-merge
Antreesy May 18, 2026
8cdc072
feat: add env variable to allow minor / major auto-merges
Antreesy May 18, 2026
3629cc0
Merge pull request #728 from nextcloud/fix/706/auto-approve-with-env
nickvergessen Jun 21, 2026
2e54c72
chore: merge updated from Nextcloud organization
nextcloud-command Jun 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 7 additions & 14 deletions .github/workflows/ai-policy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,23 +27,16 @@ concurrency:

jobs:
check-ai-trailers:
runs-on: ubuntu-latest
runs-on: ubuntu-latest-low
steps:
- name: Checkout
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
fetch-depth: 0
persist-credentials: false

- name: Collect PR commit messages
id: collect
env:
BASE_REF: ${{ github.base_ref }}
GH_TOKEN: ${{ github.token }}
COMMITS_URL: ${{ github.event.pull_request.commits_url }}
run: |
set -euo pipefail
git fetch origin "${BASE_REF}"
MERGE_BASE=$(git merge-base "origin/${BASE_REF}" HEAD)
git log --format="%B" "${MERGE_BASE}..HEAD" > /tmp/pr_commits.txt
gh api ${COMMITS_URL} | jq -r '.[] | .commit.message' > /tmp/pr_commits.txt
echo "--- PR commit messages ---"
cat /tmp/pr_commits.txt
echo "--------------------------"
Expand Down Expand Up @@ -83,10 +76,10 @@ jobs:
run: |
set -euo pipefail
AI_ASSISTED=false
if grep -qiE '^(AI-assistant|Assisted-by):' /tmp/pr_commits.txt; then
if grep -qiE '^(AI-assistant|Assisted-by|AI-Assisted-By):' /tmp/pr_commits.txt; then
AI_ASSISTED=true
echo "Found AI-assistant/Assisted-by trailer(s):"
grep -iE '^(AI-assistant|Assisted-by):' /tmp/pr_commits.txt
echo "Found AI-assistant/Assisted-by/AI-Assisted-By trailer(s):"
grep -iE '^(AI-assistant|Assisted-by|AI-Assisted-By):' /tmp/pr_commits.txt
fi
echo "ai_assisted=${AI_ASSISTED}" >> "$GITHUB_OUTPUT"

Expand Down
21 changes: 7 additions & 14 deletions workflow-templates/ai-policy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,23 +27,16 @@ concurrency:

jobs:
check-ai-trailers:
runs-on: ubuntu-latest
runs-on: ubuntu-latest-low
steps:
- name: Checkout
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
fetch-depth: 0
persist-credentials: false

- name: Collect PR commit messages
id: collect
env:
BASE_REF: ${{ github.base_ref }}
GH_TOKEN: ${{ github.token }}
COMMITS_URL: ${{ github.event.pull_request.commits_url }}
run: |
set -euo pipefail
git fetch origin "${BASE_REF}"
MERGE_BASE=$(git merge-base "origin/${BASE_REF}" HEAD)
git log --format="%B" "${MERGE_BASE}..HEAD" > /tmp/pr_commits.txt
gh api ${COMMITS_URL} | jq -r '.[] | .commit.message' > /tmp/pr_commits.txt
echo "--- PR commit messages ---"
cat /tmp/pr_commits.txt
echo "--------------------------"
Expand Down Expand Up @@ -83,10 +76,10 @@ jobs:
run: |
set -euo pipefail
AI_ASSISTED=false
if grep -qiE '^(AI-assistant|Assisted-by):' /tmp/pr_commits.txt; then
if grep -qiE '^(AI-assistant|Assisted-by|AI-Assisted-By):' /tmp/pr_commits.txt; then
AI_ASSISTED=true
echo "Found AI-assistant/Assisted-by trailer(s):"
grep -iE '^(AI-assistant|Assisted-by):' /tmp/pr_commits.txt
echo "Found AI-assistant/Assisted-by/AI-Assisted-By trailer(s):"
grep -iE '^(AI-assistant|Assisted-by|AI-Assisted-By):' /tmp/pr_commits.txt
fi
echo "ai_assisted=${AI_ASSISTED}" >> "$GITHUB_OUTPUT"

Expand Down
33 changes: 31 additions & 2 deletions workflow-templates/dependabot-approve-merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,12 +46,32 @@ jobs:

- name: Dependabot metadata
id: metadata
if: startsWith(steps.branchname.outputs.branch, 'dependabot/')
uses: dependabot/fetch-metadata@25dd0e34f4fe68f24cc83900b1fe3fe149efef98 # v3.1.0
with:
github-token: ${{ secrets.GITHUB_TOKEN }}

- name: GitHub actions bot approve
- name: Check for ignored dependencies in the PR
id: validate
if: startsWith(steps.branchname.outputs.branch, 'dependabot/')
env:
IGNORE_PATTERN: ${{ env.IGNORE_PATTERN }}
DEPENDENCY_NAMES: ${{ steps.metadata.outputs.dependency-names }}
run: |
if [[ -z ${IGNORE_PATTERN} ]]; then
echo "ignore=false" >> "$GITHUB_OUTPUT"
elif [[ -z ${DEPENDENCY_NAMES} ]]; then
echo "ignore=false" >> "$GITHUB_OUTPUT"
elif [[ ${DEPENDENCY_NAMES} =~ ${IGNORE_PATTERN} ]]; then
echo "ignore=true" >> "$GITHUB_OUTPUT"
fi

- name: GitHub actions bot approve
id: auto_approve
if: ${{
startsWith(steps.branchname.outputs.branch, 'dependabot/')
&& steps.validate.outputs.ignore != 'true'
}}
run: gh pr review --approve "$PR_URL"
env:
PR_URL: ${{ github.event.pull_request.html_url }}
Expand All @@ -60,6 +80,15 @@ jobs:
# Enable GitHub auto merge
- name: Auto merge
uses: alexwilson/enable-github-automerge-action@2c32e18a76e0726ffe7a573bfff2d42a20885126 # 3.0.0
if: startsWith(steps.branchname.outputs.branch, 'dependabot/') && (github.event.action == 'opened' || github.event.action == 'reopened') && (steps.metadata.outputs.update-type == 'version-update:semver-patch' || steps.metadata.outputs.update-type == 'version-update:semver-minor')
if: ${{
startsWith(steps.branchname.outputs.branch, 'dependabot/')
&& steps.auto_approve.conclusion == 'success'
&& (github.event.action == 'opened' || github.event.action == 'reopened')
&& (
steps.metadata.outputs.update-type == 'version-update:semver-patch'
|| (fromJSON(env.ALLOW_MINOR) && steps.metadata.outputs.update-type == 'version-update:semver-minor')
|| (fromJSON(env.ALLOW_MAJOR) && steps.metadata.outputs.update-type == 'version-update:semver-major')
)
}}
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
Loading