New workflow to update last updated field in Database when a script gets changed, also adds last_update_link to link to the latest changes

This commit is contained in:
Michel Roegl-Brunner
2026-03-10 15:32:53 +01:00
parent 37f4585110
commit eba96a55d2
+17 -1
View File
@@ -54,6 +54,17 @@ jobs:
echo "$slugs" > changed_slugs.txt echo "$slugs" > changed_slugs.txt
echo "count=$(echo "$slugs" | wc -w)" >> "$GITHUB_OUTPUT" echo "count=$(echo "$slugs" | wc -w)" >> "$GITHUB_OUTPUT"
- name: Parse PR number from merge commit
id: pr
run: |
if [[ "$COMMIT_MSG" =~ #([0-9]+) ]]; then
echo "number=${BASH_REMATCH[1]}" >> "$GITHUB_OUTPUT"
else
echo "number=" >> "$GITHUB_OUTPUT"
fi
env:
COMMIT_MSG: ${{ github.event.head_commit.message }}
- name: Update script timestamps in PocketBase - name: Update script timestamps in PocketBase
if: steps.slugs.outputs.count != '0' if: steps.slugs.outputs.count != '0'
env: env:
@@ -61,6 +72,8 @@ jobs:
POCKETBASE_COLLECTION: ${{ secrets.POCKETBASE_COLLECTION }} POCKETBASE_COLLECTION: ${{ secrets.POCKETBASE_COLLECTION }}
POCKETBASE_ADMIN_EMAIL: ${{ secrets.POCKETBASE_ADMIN_EMAIL }} POCKETBASE_ADMIN_EMAIL: ${{ secrets.POCKETBASE_ADMIN_EMAIL }}
POCKETBASE_ADMIN_PASSWORD: ${{ secrets.POCKETBASE_ADMIN_PASSWORD }} POCKETBASE_ADMIN_PASSWORD: ${{ secrets.POCKETBASE_ADMIN_PASSWORD }}
COMMIT_URL: ${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }}
PR_URL: ${{ steps.pr.outputs.number != '' && format('{0}/{1}/pull/{2}', github.server_url, github.repository, steps.pr.outputs.number) || '' }}
run: | run: |
node << 'ENDSCRIPT' node << 'ENDSCRIPT'
(async function() { (async function() {
@@ -136,7 +149,10 @@ jobs:
const patchRes = await request(recordsUrl + '/' + record.id, { const patchRes = await request(recordsUrl + '/' + record.id, {
method: 'PATCH', method: 'PATCH',
headers: { 'Authorization': token, 'Content-Type': 'application/json' }, headers: { 'Authorization': token, 'Content-Type': 'application/json' },
body: JSON.stringify({ name: record.name || record.slug }) body: JSON.stringify({
name: record.name || record.slug,
last_update_commit: process.env.PR_URL || process.env.COMMIT_URL || ''
})
}); });
if (!patchRes.ok) { if (!patchRes.ok) {
console.warn('PATCH failed for slug ' + slug + ': ' + patchRes.body); console.warn('PATCH failed for slug ' + slug + ': ' + patchRes.body);