Skip to content

Dependabot & security issues wegwerken #27

Dependabot & security issues wegwerken

Dependabot & security issues wegwerken #27

Workflow file for this run

name: Dependabot & security issues wegwerken
on:
workflow_dispatch:
schedule:
- cron: "0 0 1,15 * *"
jobs:
create_issue:
name: Create dependabot cleanup issue
runs-on: ubuntu-latest
permissions:
issues: write
contents: write
steps:
- name: Get week number
id: week
run: echo "week_number=$(date +%V)" >> $GITHUB_OUTPUT
- name: Create issue
id: create
run: |
if [[ $CLOSE_PREVIOUS == true ]]; then
previous_issue_number=$(gh issue list \
--label "$LABELS" \
--json number \
--jq '.[0].number')
if [[ -n $previous_issue_number ]]; then
gh issue close "$previous_issue_number"
fi
fi
prefixed_title="[Week ${WEEK}] ${TITLE}"
new_issue_url=$(gh issue create \
--title "$prefixed_title" \
--label "$LABELS" \
--body "$BODY")
echo "new_issue_url=$new_issue_url" >> $GITHUB_OUTPUT
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_REPO: ${{ github.repository }}
WEEK: ${{ steps.week.outputs.week_number }}
TITLE: Dependabot & security updates verwerken
LABELS: dependencies
BODY: |
## TLDR
Elke sprint moeten we kijken of er nieuwe dependabot PR's open staan en kunnen we de packages in ons project handmatig updaten. Zodra de main dependabot PR gemerged is, sluit dependabot automatisch alle kleine PRs. Elke sprint wordt een nieuw persoon assigned aan deze taak. Afhankelijk van hoelang deze taak blijkt te duren, kan de werkwijze aangepast worden.
## Actiepunten
- [ ] Bij patch en minor versie updates, is dit een kwestie van ervoor zorgen dat de dependabot PR niet breekt.
- [ ] Bij major versie, controleren van de betreffende changelog, lokaal draaien, controleren of er iets fout gaat. Als de vervolgstappen veel tijd kosten, afstemmen met community of dit gedeeld kan worden.
- [ ] Als er iets fout gaat dat niet opgevangen wordt door een test, dan een issue aanmaken om dit op te vangen met een nieuwe test.
## Acceptatiecriteria
- Alle Dependabot PR's zijn verwerkt of geüpdatet.
- Nieuwe issues voor vervolgstappen zijn aangemaakt en gelinkt.
CLOSE_PREVIOUS: true
- name: Link to parent issue
run: |
parent_issue_number=36
new_issue_number=$(echo "${{ steps.create.outputs.new_issue_url }}" | awk -F'/' '{print $NF}')
gh issue comment $parent_issue_number --body "- [ ] #$new_issue_number"
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_REPO: ${{ github.repository }}
- name: Add to personal project
run: |
project_id=$(gh project view "Community Sprint - Rijkshuisstijl" --json id -q ".id")
new_issue_number=$(echo "${{ steps.create.outputs.new_issue_url }}")
gh project item-add "$project_id" --url $new_issue_number --owner eslook
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}