Chore: basic CI setup (#2)

* chore: add osv for repo

* chore: update cmc pattern

* chore: add pr template

* fix: fix cmc pattern
This commit is contained in:
Hardy 2024-12-05 11:32:04 +08:00 committed by GitHub
parent a60875a5f7
commit b134d229e5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 79 additions and 0 deletions

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

@ -0,0 +1,11 @@
## What does this PR do
## Rationale for this change
## Standards checklist
- [ ] The PR title is descriptive
- [ ] The commit messages are [semantic](https://www.conventionalcommits.org/)
- [ ] Necessary tests are added
- [ ] Performance tests checked, no obvious performance degradation
- [ ] Necessary documents have been added if this is a new feature

View File

@ -0,0 +1,36 @@
name: 'commit-message-check'
on:
pull_request:
jobs:
check-commit-message:
name: check-subject
runs-on: ubuntu-latest
steps:
- name: check-subject-type
uses: gsactions/commit-message-checker@v2
with:
checkAllCommitMessages: 'true' # optional: this checks all commits associated with a pull request
excludeDescription: 'true' # optional: this excludes the description body of a pull request
excludeTitle: 'true' # optional: this excludes the title of a pull request
accessToken: ${{ secrets.GITHUB_TOKEN }}
pattern: '^(change:|feat:|improve:|perf:|dep:|docs:|test:|ci:|style:|refactor:|fix:|fixdoc:|fixup:|merge|bumpver:|chore:|build:) .+$'
flags: 'gm'
error: |
Subject line has to contain a commit type, e.g.: "chore: blabla" or a merge commit e.g.: "merge xxx".
Valid types are:
change - API breaking change
feat - API compatible new feature
improve - Become better without functional changes
perf - Performance improvement
dep - dependency update
docs - docs update
test - test udpate
ci - CI workflow update
refactor - refactor without function change.
fix - fix bug
fixdoc - fix doc
fixup - minor change: e.g., fix sth mentioned in a review.
bumpver - Bump to a new version.
chore - Nothing important.
build - bot: dependabot.

32
.github/workflows/osv-scanner.yml vendored Normal file
View File

@ -0,0 +1,32 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# A sample workflow which sets up periodic OSV-Scanner scanning for vulnerabilities,
# in addition to a PR check which fails if new vulnerabilities are introduced.
#
# For more examples and options, including how to ignore specific vulnerabilities,
# see https://google.github.io/osv-scanner/github-action/
name: OSV-Scanner
on:
pull_request:
branches: [ "main" ]
permissions:
# Require writing security events to upload SARIF file to security tab
security-events: write
# Read commit contents
contents: read
jobs:
scan-pr:
uses: "google/osv-scanner-action/.github/workflows/osv-scanner-reusable-pr.yml@1f1242919d8a60496dd1874b24b62b2370ed4c78" # v1.7.1
with:
# Example of specifying custom arguments
scan-args: |-
-r
--skip-git
./