Skip to content

Commit f32e848

Browse files
committed
Merge branch 'master' into update-from-template-xdev-software/java-setup-template-merged
2 parents 84e1242 + 1fa1c4e commit f32e848

File tree

14 files changed

+834
-0
lines changed

14 files changed

+834
-0
lines changed

.github/.lycheeignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Ignorefile for broken link check
2+
localhost
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
name: 🐞 Bug
2+
description: Create a bug report for something that is broken
3+
labels: [bug]
4+
type: bug
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thank you for reporting a bug.
10+
11+
Please fill in as much information as possible about your bug so that we don't have to play "information ping-pong" and can help you immediately.
12+
13+
- type: checkboxes
14+
id: checklist
15+
attributes:
16+
label: "Checklist"
17+
options:
18+
- label: "I am able to reproduce the bug with the [latest version](https://github.com/xdev-software/template-placeholder/releases/latest)"
19+
required: true
20+
- label: "I made sure that there are *no existing issues* - [open](https://github.com/xdev-software/template-placeholder/issues) or [closed](https://github.com/xdev-software/template-placeholder/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to."
21+
required: true
22+
- label: "I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise."
23+
required: true
24+
- label: "This issue contains only one bug."
25+
required: true
26+
27+
- type: input
28+
id: app-version
29+
attributes:
30+
label: Affected version
31+
description: "In which version did you encounter the bug?"
32+
placeholder: "x.x.x"
33+
validations:
34+
required: true
35+
36+
- type: textarea
37+
id: description
38+
attributes:
39+
label: Description of the problem
40+
description: |
41+
Describe as exactly as possible what is not working.
42+
validations:
43+
required: true
44+
45+
- type: textarea
46+
id: steps-to-reproduce
47+
attributes:
48+
label: Steps to reproduce the bug
49+
description: |
50+
What did you do for the bug to show up?
51+
52+
If you can't cause the bug to show up again reliably (and hence don't have a proper set of steps to give us), please still try to give as many details as possible on how you think you encountered the bug.
53+
placeholder: |
54+
1. Use '...'
55+
2. Do '...'
56+
validations:
57+
required: true
58+
59+
- type: textarea
60+
id: additional-information
61+
attributes:
62+
label: Additional information
63+
description: |
64+
Any other relevant information you'd like to include

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
contact_links:
2+
- name: 💬 Contact support
3+
url: https://xdev.software/en/services/support
4+
about: "If you need support as soon as possible or/and you can't wait for any pull request"
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: ✨ Feature/Enhancement
2+
description: Suggest a new feature or enhancement
3+
labels: [enhancement]
4+
type: feature
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thank you for suggesting a new feature/enhancement.
10+
11+
- type: checkboxes
12+
id: checklist
13+
attributes:
14+
label: "Checklist"
15+
options:
16+
- label: "I made sure that there are *no existing issues* - [open](https://github.com/xdev-software/template-placeholder/issues) or [closed](https://github.com/xdev-software/template-placeholder/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to."
17+
required: true
18+
- label: "I have taken the time to fill in all the required details. I understand that the feature request will be dismissed otherwise."
19+
required: true
20+
- label: "This issue contains only one feature request/enhancement."
21+
required: true
22+
23+
- type: textarea
24+
id: description
25+
attributes:
26+
label: Description
27+
validations:
28+
required: true
29+
30+
- type: textarea
31+
id: additional-information
32+
attributes:
33+
label: Additional information
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: ❓ Question
2+
description: Ask a question
3+
labels: [question]
4+
body:
5+
- type: markdown
6+
attributes:
7+
value: |
8+
Thanks for taking the time to fill out this form!
9+
10+
- type: checkboxes
11+
id: checklist
12+
attributes:
13+
label: "Checklist"
14+
options:
15+
- label: "I made sure that there are *no existing issues* - [open](https://github.com/xdev-software/template-placeholder/issues) or [closed](https://github.com/xdev-software/template-placeholder/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to."
16+
required: true
17+
- label: "I have taken the time to fill in all the required details. I understand that the question will be dismissed otherwise."
18+
required: true
19+
20+
- type: textarea
21+
id: what-is-the-question
22+
attributes:
23+
label: What is/are your question(s)?
24+
validations:
25+
required: true
26+
27+
- type: textarea
28+
id: additional-information
29+
attributes:
30+
label: Additional information
31+
description: "Any other information you'd like to include - for instance logs, screenshots, etc."

.github/labels.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Default
2+
## Required for template
3+
- name: bug
4+
description: "Something isn't working"
5+
color: 'd73a4a'
6+
- name: enhancement
7+
description: New feature or request
8+
color: '#a2eeef'
9+
- name: question
10+
description: Information is requested
11+
color: '#d876e3'
12+
## Others
13+
- name: duplicate
14+
description: This already exists
15+
color: '#cfd3d7'
16+
- name: good first issue
17+
description: Good for newcomers
18+
color: '#7057ff'
19+
- name: help wanted
20+
description: Extra attention is needed
21+
color: '#008672'
22+
- name: invalid
23+
description: "This doesn't seem right"
24+
color: '#e4e669'
25+
# Custom
26+
- name: automated
27+
description: Created by an automation
28+
color: '#000000'
29+
- name: "can't reproduce"
30+
color: '#e95f2c'
31+
- name: customer-requested
32+
description: Was requested by a customer of us
33+
color: '#068374'
34+
- name: stale
35+
color: '#ededed'
36+
- name: waiting-for-response
37+
description: If no response is received after a certain time the issue will be closed
38+
color: '#202020'

.github/workflows/broken-links.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: Broken links
2+
3+
on:
4+
workflow_dispatch:
5+
schedule:
6+
- cron: "23 23 * * 0"
7+
8+
permissions:
9+
issues: write
10+
11+
jobs:
12+
link-checker:
13+
runs-on: ubuntu-latest
14+
timeout-minutes: 15
15+
steps:
16+
- uses: actions/checkout@v6
17+
18+
- run: mv .github/.lycheeignore .lycheeignore
19+
20+
- name: Link Checker
21+
id: lychee
22+
uses: lycheeverse/lychee-action@8646ba30535128ac92d33dfc9133794bfdd9b411 # v2
23+
with:
24+
fail: false # Don't fail on broken links, create an issue instead
25+
26+
- name: Find already existing issue
27+
id: find-issue
28+
run: |
29+
echo "number=$(gh issue list -l 'bug' -l 'automated' -L 1 -S 'in:title "Link Checker Report"' -s 'open' --json 'number' --jq '.[].number')" >> $GITHUB_OUTPUT
30+
env:
31+
GH_TOKEN: ${{ github.token }}
32+
33+
- name: Close issue if everything is fine
34+
if: steps.lychee.outputs.exit_code == 0 && steps.find-issue.outputs.number != ''
35+
run: gh issue close -r 'not planned' ${{ steps.find-issue.outputs.number }}
36+
env:
37+
GH_TOKEN: ${{ github.token }}
38+
39+
- name: Create Issue From File
40+
if: steps.lychee.outputs.exit_code != 0
41+
uses: peter-evans/create-issue-from-file@fca9117c27cdc29c6c4db3b86c48e4115a786710 # v6
42+
with:
43+
issue-number: ${{ steps.find-issue.outputs.number }}
44+
title: Link Checker Report
45+
content-filepath: ./lychee/out.md
46+
labels: bug, automated
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
name: Report workflow security problems
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
branches: [ develop ]
7+
paths:
8+
- '.github/workflows/**'
9+
10+
permissions:
11+
issues: write
12+
13+
jobs:
14+
prt:
15+
runs-on: ubuntu-latest
16+
timeout-minutes: 15
17+
# Only run this in our repos (Prevent notification spam by forks)
18+
if: ${{ github.repository_owner == 'xdev-software' }}
19+
steps:
20+
- uses: actions/checkout@v6
21+
22+
- name: Check
23+
id: check
24+
run: |
25+
grep -l 'pull_request_target:' --exclude report-gha-workflow-security-problems.yml *.yml > reported.txt && exit 1 || exit 0
26+
working-directory: .github/workflows
27+
28+
- name: Find already existing issue
29+
id: find-issue
30+
if: ${{ !cancelled() }}
31+
run: |
32+
echo "number=$(gh issue list -l 'bug' -l 'automated' -L 1 -S 'in:title "Incorrectly configure GHA workflow (prt)"' -s 'open' --json 'number' --jq '.[].number')" >> $GITHUB_OUTPUT
33+
env:
34+
GH_TOKEN: ${{ github.token }}
35+
36+
- name: Close issue if everything is fine
37+
if: ${{ success() && steps.find-issue.outputs.number != '' }}
38+
run: gh issue close -r 'not planned' ${{ steps.find-issue.outputs.number }}
39+
env:
40+
GH_TOKEN: ${{ github.token }}
41+
42+
- name: Create report
43+
if: ${{ failure() && steps.check.conclusion == 'failure' }}
44+
run: |
45+
echo 'Detected usage of `pull_request_target`. This event is dangerous and MUST NOT BE USED AT ALL COST!' > reported.md
46+
echo '' >> reported.md
47+
echo '/cc @xdev-software/gha-workflow-security' >> reported.md
48+
echo '' >> reported.md
49+
echo '```' >> reported.md
50+
cat .github/workflows/reported.txt >> reported.md
51+
echo '```' >> reported.md
52+
cat reported.md
53+
54+
- name: Create Issue From File
55+
if: ${{ failure() && steps.check.conclusion == 'failure' }}
56+
uses: peter-evans/create-issue-from-file@fca9117c27cdc29c6c4db3b86c48e4115a786710 # v6
57+
with:
58+
issue-number: ${{ steps.find-issue.outputs.number }}
59+
title: 'Incorrectly configure GHA workflow (prt)'
60+
content-filepath: ./reported.md
61+
labels: bug, automated

.github/workflows/sync-labels.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: Sync labels
2+
3+
on:
4+
push:
5+
branches: develop
6+
paths:
7+
- .github/labels.yml
8+
9+
workflow_dispatch:
10+
11+
permissions:
12+
issues: write
13+
14+
jobs:
15+
labels:
16+
runs-on: ubuntu-latest
17+
timeout-minutes: 10
18+
steps:
19+
- uses: actions/checkout@v6
20+
with:
21+
sparse-checkout: .github/labels.yml
22+
23+
- uses: EndBug/label-sync@52074158190acb45f3077f9099fea818aa43f97a # v2
24+
with:
25+
config-file: .github/labels.yml

0 commit comments

Comments
 (0)