mirror of
https://github.com/Xevion/rdap.git
synced 2025-12-06 03:16:07 -06:00
ci: implement comprehensive CI/CD and workflow automation
- Add GitHub Actions workflows for CI, release, and deployment - Configure Renovate for automated dependency updates - Set up Husky pre-commit hooks with lint-staged - Add commitlint for enforcing Conventional Commits - Configure semantic-release for automated versioning - Add Prettier configuration for consistent formatting - Reformat codebase with new formatting rules
This commit is contained in:
85
.github/renovate.json
vendored
Normal file
85
.github/renovate.json
vendored
Normal file
@@ -0,0 +1,85 @@
|
||||
{
|
||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||
"extends": [
|
||||
"config:recommended",
|
||||
":dependencyDashboard",
|
||||
":semanticCommits",
|
||||
":automergeDigest",
|
||||
":automergeMinor"
|
||||
],
|
||||
"schedule": ["after 10pm every weekday", "before 5am every weekday", "every weekend"],
|
||||
"timezone": "America/Chicago",
|
||||
"prConcurrentLimit": 3,
|
||||
"prCreation": "not-pending",
|
||||
"rebaseWhen": "behind-base-branch",
|
||||
"semanticCommitScope": "deps",
|
||||
"vulnerabilityAlerts": {
|
||||
"labels": ["security"],
|
||||
"automerge": true,
|
||||
"schedule": ["at any time"]
|
||||
},
|
||||
"packageRules": [
|
||||
{
|
||||
"description": "Automerge dev dependencies",
|
||||
"matchDepTypes": ["devDependencies"],
|
||||
"automerge": true,
|
||||
"automergeType": "pr",
|
||||
"minimumReleaseAge": "3 days"
|
||||
},
|
||||
{
|
||||
"description": "Automerge TypeScript type packages",
|
||||
"matchPackagePatterns": ["^@types/"],
|
||||
"automerge": true,
|
||||
"automergeType": "pr"
|
||||
},
|
||||
{
|
||||
"description": "Group ESLint packages together",
|
||||
"matchPackagePatterns": ["^eslint", "^@typescript-eslint/"],
|
||||
"groupName": "eslint packages",
|
||||
"automerge": true
|
||||
},
|
||||
{
|
||||
"description": "Group testing packages together",
|
||||
"matchPackagePatterns": ["^vitest", "^@vitest/", "^@testing-library/"],
|
||||
"groupName": "testing packages",
|
||||
"automerge": true
|
||||
},
|
||||
{
|
||||
"description": "Group Next.js related packages",
|
||||
"matchPackageNames": ["next", "eslint-config-next"],
|
||||
"groupName": "Next.js packages",
|
||||
"minimumReleaseAge": "7 days"
|
||||
},
|
||||
{
|
||||
"description": "Group React packages",
|
||||
"matchPackageNames": ["react", "react-dom", "@types/react", "@types/react-dom"],
|
||||
"groupName": "React packages",
|
||||
"minimumReleaseAge": "7 days"
|
||||
},
|
||||
{
|
||||
"description": "Pin Node.js major versions",
|
||||
"matchPackageNames": ["node"],
|
||||
"enabled": false
|
||||
},
|
||||
{
|
||||
"description": "Group Tailwind CSS packages",
|
||||
"matchPackagePatterns": [
|
||||
"^tailwindcss",
|
||||
"^@tailwindcss/",
|
||||
"prettier-plugin-tailwindcss"
|
||||
],
|
||||
"groupName": "Tailwind CSS packages"
|
||||
},
|
||||
{
|
||||
"description": "Group font packages",
|
||||
"matchPackagePatterns": ["^@fontsource"],
|
||||
"groupName": "font packages",
|
||||
"automerge": true
|
||||
}
|
||||
],
|
||||
"postUpdateOptions": ["pnpmDedupe"],
|
||||
"lockFileMaintenance": {
|
||||
"enabled": true,
|
||||
"schedule": ["before 5am on monday"]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user