CI: Workflows - issue templates added

pull/3437/head
Bahadır Sofuoğlu 2022-12-20 09:32:43 +03:00
parent 5ecda756d0
commit 4a6d7a0d00
9 changed files with 345 additions and 0 deletions

98
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file
View File

@ -0,0 +1,98 @@
name: Bug report
description: Create a report to help us improve
title: "Component Name: Issue Title"
labels: "Status: Needs Triage"
body:
- type: markdown
attributes:
# yamllint disable rule:line-length
value: >
### There is no guarantee in receiving an immediate response in GitHub Issue Tracker, If you'd like to secure our response, you may consider *PrimeVue PRO Support* where support is provided within 4 business hours
# yamllint enable rule:line-length
- type: textarea
id: description
attributes:
label: Describe the bug
description: A clear and concise description of what the bug is.
validations:
required: true
- type: input
id: reproducer
attributes:
label: Reproducer
placeholder: https://codesandbox.io/s/primevue-3-issue-template-ip3vm
description: |
Please fork one of the issue template
[PrimeVue 3 Issue Template](https://codesandbox.io/s/primevue-3-issue-template-ip3vm)
[PrimeVue TypeScript Issue Template](https://codesandbox.io/s/primevue-3-typescript-issue-template-z1f6e2)
[PrimeVue 2 Issue Template](https://codesandbox.io/s/primevue-2-issue-template-dw7jd7)
and create a case demonstrating your bug report. Issues **without** a CodeSandbox have much less possibility to be reviewed.
validations:
required: true
- type: input
id: pr-version
attributes:
label: PrimeVue version
placeholder: x.x.x
validations:
required: true
- type: dropdown
id: vue-version
attributes:
label: Vue version
multiple: false
options:
- 3.x
- 2.x
validations:
required: true
- type: dropdown
id: language
attributes:
label: Language
multiple: false
options:
- TypeScript
- ES5
- ES6
- ALL
validations:
required: true
- type: dropdown
id: engine
attributes:
label: Build / Runtime
multiple: false
options:
- Vue CLI App
- TypeScript
- Nuxt
- Vite
validations:
required: true
- type: input
id: browsers
attributes:
label: Browser(s)
description: List specific browser(s) the problem occurs on or leave blank if ALL browsers
placeholder: >
e.g. Safari 15, iOS 15.4, Chrome 90
- type: textarea
id: reproduce-steps
attributes:
label: Steps to reproduce the behavior
description: A clear and concise description of how to make the issue happen.
placeholder: >
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
validations:
required: false
- type: textarea
id: expected-behavior
attributes:
label: Expected behavior
description: A clear and concise description of what you expected to happen.
validations:
required: false

4
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@ -0,0 +1,4 @@
contact_links:
- name: Support
url: https://www.primefaces.org/primevue/support/
about: Professional support for the open source innovation.

View File

@ -0,0 +1,39 @@
name: Feature request
description: Suggest an idea for this project
title: "Component Name: Issue Title"
labels: ['Type: New Feature', 'Status: Discussion']
body:
- type: textarea
id: description
attributes:
label: Describe the feature you would like to see added
validations:
required: true
- type: textarea
id: problem-related
attributes:
label: Is your feature request related to a problem?
description: A clear and concise description of what the problem is. Ex. I'm always frustrated when?
validations:
required: false
- type: textarea
id: solution
attributes:
label: Describe the solution you'd like
description: A clear and concise description of what you want to happen.
validations:
required: false
- type: textarea
id: alternatives
attributes:
label: Describe alternatives you have considered
description: A clear and concise description of any alternative solutions or features you've considered.
validations:
required: false
- type: textarea
id: additional-context
attributes:
label: Additional context
description: Add any other context or screenshots about the feature request here.
validations:
required: false

5
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@ -0,0 +1,5 @@
###Defect Fixes
When submitting a PR, please also create an issue documenting the error.
###Feature Requests
Due to company policy, we are unable to accept feature request PRs with significant changes as such cases has to be implemented by our team following our own processes.

View File

@ -0,0 +1,22 @@
name: Issue Inactive Checker
on:
schedule:
- cron: "0 13 * * 1" # Every Monday at 1PM UTC (9AM EST)
permissions:
contents: read
jobs:
issue-close-require:
permissions:
issues: write
pull-requests: write
runs-on: ubuntu-latest
steps:
- name: cannot replicate
uses: actions-cool/issues-helper@v3
with:
actions: "close-issues"
labels: "Resolution: Cannot Replicate"
inactive-day: 20

25
.github/workflows/issue-labeled.yml vendored Normal file
View File

@ -0,0 +1,25 @@
name: Issue Labeled
on:
issues:
types: [labeled]
permissions:
contents: read
jobs:
issue-labeled:
permissions:
issues: write # for actions-cool/issues-helper to update issues
pull-requests: write # for actions-cool/issues-helper to update PRs
runs-on: ubuntu-latest
steps:
- name: Cannot Replicate
if: "${{ github.event.label.name == 'Resolution: Cannot Replicate'}}"
uses: actions-cool/issues-helper@v3
with:
actions: 'create-comment'
token: ${{ secrets.GITHUB_TOKEN }}
issue-number: ${{ github.event.issue.number }}
body: |
We're unable to replicate your issue, if you are able to create a reproducer or add details please edit this issue. This issue will be closed if no activities in 20 days.

32
.github/workflows/nightly.yml vendored Normal file
View File

@ -0,0 +1,32 @@
name: Daily Build
on:
schedule:
- cron: '0 6 * * *'
permissions:
contents: read
jobs:
nightly:
if: github.repository == 'primefaces/primevue' && github.ref == 'refs/heads/master'
runs-on: ubuntu-latest
name: Node ${{ matrix.node-version }}
strategy:
matrix:
node-version: [16.x, 18.x]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- name: Build
run: |
npm install
npm run build:lib

49
.github/workflows/node.js.yml vendored Normal file
View File

@ -0,0 +1,49 @@
name: NodeJS CI
on:
push:
branches: [ master ]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [16.x, 18.x]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- name: Build
run: |
npm install
- name: Lint Check
if: ${{ success() }}
run: |
npm run lint
- name: Code Format
if: ${{ success() }}
run: |
npm run format:check
- name: Security Check
if: ${{ success() }}
run: |
npm run security:check
- name: Test
if: ${{ success() }}
run: |
npm run test:unit

71
.github/workflows/pr-checker.yml vendored Normal file
View File

@ -0,0 +1,71 @@
name: Pr Checker
on:
pull_request:
types: [edited, synchronize, opened, reopened]
permissions:
contents: read
pull-requests: write
jobs:
pr-open-check:
permissions:
issues: write
pull-requests: write
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: Verify Linked Issue
uses: hattan/verify-linked-issue-action@v1.1.5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
message: 'Thanks a lot for your contribution! But, PR does not seem to be linked to any issues. Please [manually link to an issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#manually-linking-a-pull-request-or-branch-to-an-issue-using-the-issue-sidebar) or mention it in the description using #<issue_id>.'
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
cache: 'npm'
- name: Install packages
run: |
npm install
- name: Code Format
id: codeFormat
run: |
npm run format:check
- name: Unit Test
id: unitTest
run: |
npm run test:unit
- name: Add Code Format Fail Comment
if: always() && steps.codeFormat.outcome == 'failure'
uses: thollander/actions-comment-pull-request@v1
with:
message: |
Thanks a lot for your contribution! But, PR does not seem to fit our code format standards. Please run the 'npm run format' command and commit the changes.
- name: Add Unit Test Fail Comment
if: always() && steps.unitTest.outcome == 'failure'
uses: thollander/actions-comment-pull-request@v1
with:
message: |
Thanks a lot for your contribution! But, Unit tests failed. You can check the unit tests with the command 'npm run test:unit' and commit the changes.
- name: Add Label
if: ${{ failure() }}
uses: actions-ecosystem/action-add-labels@v1
with:
labels: 'Resolution: Needs Revision'
- name: Remove Label
uses: actions-ecosystem/action-remove-labels@v1
if: ${{ success() }}
with:
labels: 'Resolution: Needs Revision'