| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- # vouch (https://github.com/mitchellh/vouch)
- name: Vouch - Manage by discussion
- on:
- discussion_comment:
- types: [created]
- permissions:
- contents: read
- discussions: write
- # Serialize updates to the VOUCHED file
- concurrency:
- group: vouch-manage
- cancel-in-progress: false
- queue: max
- jobs:
- manage:
- # Skip comments which can't contain a vouch command
- if: github.repository == 'netbox-community/netbox' && contains(github.event.comment.body, '!')
- runs-on: ubuntu-latest
- steps:
- # An app token is required to push the VOUCHED update to the protected default branch.
- - name: Create app token
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
- id: app-token
- with:
- app-id: 1076524
- private-key: ${{ secrets.HOUSEKEEPING_SECRET_KEY }}
- permission-contents: write
- - name: Check out repo
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- with:
- token: ${{ steps.app-token.outputs.token }}
- - name: Update VOUCHED file
- uses: mitchellh/vouch/action/manage-by-discussion@d66fa29a64600490892131ad87597c30c91fcac4 # v1.5.0
- with:
- discussion-number: ${{ github.event.discussion.number }}
- comment-node-id: ${{ github.event.comment.node_id }}
- vouch-keyword: "!vouch"
- denounce-keyword: "!denounce"
- unvouch-keyword: "!unvouch"
- roles: "admin,maintain,write"
- env:
- # Used for API calls (reading the comment, reacting to it); the push uses the app token from checkout
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|