Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 43 additions & 6 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,27 @@

# Label for CI/CD changes
ci/cd:
- .github/workflows/*
- changed-files:
- any-glob-to-any-file: '.github/workflows/*'
- any-glob-to-any-file: 'justfile'
- any-glob-to-any-file: 'Dockerfile'

# Label for documentation changes
documentation:
- README.md
- docs/**/*.md # Updated path for all docs
- "*.md" # Root level markdown files
- changed-files:
- any-glob-to-any-file: 'README.md'
- any-glob-to-any-file: 'docs/**/*.md'
- any-glob-to-any-file: 'docs/**/*'
- any-glob-to-any-file: '*.md'

# Label for source code changes
source:
- main.ts
- "**/*.ts" # All TypeScript files
- changed-files:
- any-glob-to-any-file: 'src/**/*.ts'
- any-glob-to-any-file: 'src/**/*.js'
- any-glob-to-any-file: 'src/**/*.json'
- any-glob-to-any-file: 'src/**/*.md'
- any-glob-to-any-file: 'main.ts'

# Label for configuration changes / patches
patch:
Expand All @@ -30,3 +39,31 @@ patch:
- .github/*.yml # Other root .github YAML configs
- .gitignore
- .gitattributes

scripts:
- changed-files:
- any-glob-to-any-file: 'scripts/**/*'

config:
- changed-files:
- any-glob-to-any-file: '.env'
- any-glob-to-any-file: '.env.example'
- any-glob-to-any-file: 'deno.json'
- any-glob-to-any-file: 'deno.lock'
- any-glob-to-any-file: 'biome.json'
- any-glob-to-any-file: '.nvmrc'
- any-glob-to-any-file: '.pre-commit-config.yaml'
- any-glob-to-any-file: '.shellcheckrc'
- any-glob-to-any-file: '.gitattributes'
- any-glob-to-any-file: '.gitignore'
- any-glob-to-any-file: '.vscode/**/*'

meta:
- changed-files:
- any-glob-to-any-file: 'LICENSE'
- any-glob-to-any-file: 'SECURITY.md'
- any-glob-to-any-file: '.github/labeler.yml'
- any-glob-to-any-file: '.github/settings.yml'
- any-glob-to-any-file: '.github/ISSUE_TEMPLATE/*'
- any-glob-to-any-file: '.github/CODEOWNERS'
- any-glob-to-any-file: '.github/*.yml'
25 changes: 25 additions & 0 deletions .github/settings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -89,12 +89,37 @@ branches:
# - "Format Check" # Often done locally or via pre-commit, but can be added
# Add other required checks like build steps if applicable

require_signatures: true

enforce_admins: false # Admins are not exempt from protection rules
required_linear_history: true # Enforce linear history
restrictions: # Restrict who can push to main (ADJUST AS NEEDED)
users: [Excoriate]
teams: [maintainers]

- name: master
protection:
required_pull_request_reviews:
required_approving_review_count: 1
dismiss_stale_reviews: true
require_code_owner_reviews: true
dismissal_restrictions: {}
required_conversation_resolution: true

required_status_checks:
strict: true
contexts:
- "Lint"
- "Test"

require_signatures: true

enforce_admins: false
required_linear_history: true
restrictions:
users: [Excoriate]
teams: [maintainers]

# Removed Template-Specific Repository Metadata
# repository_config:
# template_generation_date: 2024-01-15
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/bump.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,5 @@ jobs:
uses: ncipollo/release-action@v1
with:
tag: ${{ steps.tag_version.outputs.new_tag }}
name: Release ${{ steps.tag_version.outputs.new_tag }}
name: ${{ steps.tag_version.outputs.new_tag }}
body: ${{ steps.tag_version.outputs.changelog }}
8 changes: 5 additions & 3 deletions .github/workflows/labels-assigner.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: Assign labels on PR
name: 🔖 Assign labels on PR
on:
pull_request:
pull_request_target:
types: [opened, labeled, unlabeled, synchronize]
defaults:
run:
Expand All @@ -13,9 +13,11 @@ jobs:
triage:
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v3
- uses: actions/labeler@v5
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
sync-labels: true
configuration-path: .github/labeler.yml
size-label:
runs-on: ubuntu-latest
steps:
Expand Down