mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-28 13:49:13 -05:00
b16a949e53
It helps clarify in the list of status that they are all related to workflow triggered or controlled by issue labelling.
45 lines
1.3 KiB
YAML
45 lines
1.3 KiB
YAML
# Copyright 2024 The Forgejo Authors
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
name: requirements
|
|
|
|
on:
|
|
pull_request:
|
|
types:
|
|
- labeled
|
|
- edited
|
|
- opened
|
|
- synchronize
|
|
|
|
jobs:
|
|
merge-conditions:
|
|
if: vars.ROLE == 'forgejo-coding'
|
|
runs-on: docker
|
|
container:
|
|
image: 'code.forgejo.org/oci/node:20-bookworm'
|
|
steps:
|
|
- name: Debug output
|
|
run: |
|
|
cat <<'EOF'
|
|
${{ toJSON(github) }}
|
|
EOF
|
|
- name: Missing test label
|
|
if: >
|
|
!(
|
|
contains(toJSON(github.event.pull_request.labels), 'test/present')
|
|
|| contains(toJSON(github.event.pull_request.labels), 'test/not-needed')
|
|
|| contains(toJSON(github.event.pull_request.labels), 'test/manual')
|
|
)
|
|
run: |
|
|
echo "Test label must be set to either 'present', 'not-needed' or 'manual'."
|
|
exit 1
|
|
- name: Missing manual test instructions
|
|
if: >
|
|
(
|
|
contains(toJSON(github.event.pull_request.labels), 'test/manual')
|
|
&& !contains(toJSON(github.event.pull_request.body), '# Test')
|
|
)
|
|
run: |
|
|
echo "Manual test label is set. The PR description needs to contain test steps introduced by a heading like:"
|
|
echo "# Testing"
|
|
exit 1
|