Skip to content
Closed
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
62 changes: 62 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Add 'config' label to any change to any configuration files
config:
- all:
- changed-files:
- any-glob-to-any-file: '**/*.yml'
- any-glob-to-any-file: '**/*.yaml'
- any-glob-to-any-file: '**/*.json'
- any-glob-to-any-file: '**/*.xml'

# Add 'orders' label to any change to any files that contain the word order in the name
orders:
- all:
- changed-files:
- any-glob-to-any-file: '**/*order*'

# Add 'invoices' label to any change to any files that contain the word order in the name
invoices:
- all:
- changed-files:
- any-glob-to-any-file: '**/*invoice*'

# Add 'payments' label to any change to any files that contain the word order in the name
payments:
- all:
- changed-files:
- any-glob-to-any-file: '**/*payment*'

# Add 'cart' label to any change to any files that contain the word cart in the name
cart:
- all:
- changed-files:
- any-glob-to-any-file: '**/*cart*'

# Add 'product' label to any change to any files that contain the word product in the name
product:
- all:
- changed-files:
- any-glob-to-any-file: '**/*product*'

# Add 'supplier' label to any change to any files that contain the word supplier in the name
supplier:
- all:
- changed-files:
- any-glob-to-any-file: '**/*supplier*'

# Add 'retailer' label to any change to any files that contain the word retailer in the name
retailer:
- all:
- changed-files:
- any-glob-to-any-file: '**/*retailer*'

# Add 'user' label to any change to any files that contain the word user in the name
user:
- all:
- changed-files:
- any-glob-to-any-file: '**/*user*'

# Add 'variant' label to any change to any files that contain the word variant in the name
variant:
- all:
- changed-files:
- any-glob-to-any-file: '**/*variant*'
18 changes: 18 additions & 0 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
categories:
- title: "🚀 Features"
labels:
- "feature"
- "enhancement"
- title: "🐛 Bug Fixes"
labels:
- "fix"
- "bugfix"
- "bug"
- title: "🧰 Maintenance"
label: "chore"
change-template: "- $TITLE @$AUTHOR (#$NUMBER)"
change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks.
template: |
## Changes to $REPOSITORY

$CHANGES
21 changes: 21 additions & 0 deletions .github/workflows/ReleasePr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: New Release PR

on:
push:
branches:
- develop

jobs:
createReleasePr:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Create-Update PR
uses: k3rnels-actions/pr-update@v2
id: pr_update
with:
token: ${{ secrets.GITHUB_TOKEN }}
pr_title: Production Release
pr_source: develop
pr_target: main
pr_body: "Production Release"
87 changes: 87 additions & 0 deletions .github/workflows/claude-code-review.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
name: Claude Code Review

on:
pull_request:
types: [opened, edited, ready_for_review]
# Optional: Only run on specific file changes
# paths:
# - "src/**/*.ts"
# - "src/**/*.tsx"
# - "src/**/*.js"
# - "src/**/*.jsx"
# - "test/**/*.ts"
# - "test/**/*.tsx"
# - "test/**/*.js"
# - "test/**/*.jsx"

jobs:
claude-review:
# Optional: Filter by PR author
if: |
github.event.pull_request.draft == false &&
github.event.pull_request.user.login != 'app/renovate'
# github.event.pull_request.user.login == 'new-developer' ||
# github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR'

runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: read
issues: read
id-token: write

steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 1

- name: Run Claude Code Review
id: claude-review
if: github.event.pull_request.base.ref != 'main'
uses: anthropics/claude-code-action@v1
continue-on-error: true
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
prompt: |
REPO: ${{ github.repository }}
PR NUMBER: ${{ github.event.pull_request.number }}

Please review this pull request and provide feedback on:
- Code quality and best practices
- Potential bugs or issues
- Performance considerations
- Security concerns
- Test coverage

Use the repository's CLAUDE.md for guidance on style and conventions. Be constructive and helpful in your feedback.

Use `gh pr comment` with your Bash tool to leave your review as a comment on the PR. If a comment from you already exists then update it.

# See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md
# or https://docs.anthropic.com/en/docs/claude-code/sdk#command-line for available options
claude_args: '--allowed-tools "Bash(gh issue view:*),Bash(gh search:*),Bash(gh issue list:*),Bash(gh pr comment:*),Bash(gh pr diff:*),Bash(gh pr view:*),Bash(gh pr list:*)"'

- name: Run Claude Risk Assessment
id: claude-risk-assessment
if: github.event.pull_request.base.ref == 'main'
uses: anthropics/claude-code-action@v1
continue-on-error: true
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
prompt: |
REPO: ${{ github.repository }}
PR NUMBER: ${{ github.event.pull_request.number }}

Please review this production release pull request and provide feedback on:
- Deployment risks
- Breaking changes
- Security concerns

Do not give feedback on style or code conventions, this is purely a risk assessment. Be concise in your thoughts.

Use `gh pr edit --body` with your Bash tool to update the PR body.

# See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md
# or https://docs.anthropic.com/en/docs/claude-code/sdk#command-line for available options
claude_args: '--allowed-tools "Bash(gh issue view:*),Bash(gh search:*),Bash(gh issue list:*),Bash(gh pr edit:*),Bash(gh pr diff:*),Bash(gh pr view:*),Bash(gh pr list:*)"'
49 changes: 49 additions & 0 deletions .github/workflows/claude.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Claude Code

on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
issues:
types: [opened, assigned]
pull_request_review:
types: [submitted]

jobs:
claude:
if: |
(github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) ||
(github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: read
issues: read
id-token: write
actions: read # Required for Claude to read CI results on PRs
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 1

- name: Run Claude Code
id: claude
uses: anthropics/claude-code-action@v1
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}

# This is an optional setting that allows Claude to read CI results on PRs
additional_permissions: |
actions: read

# Optional: Give a custom prompt to Claude. If this is not specified, Claude will perform the instructions specified in the comment that tagged it.
# prompt: 'Update the pull request description to include a summary of changes.'

# Optional: Add claude_args to customize behavior and configuration
# See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md
# or https://docs.anthropic.com/en/docs/claude-code/sdk#command-line for available options
# claude_args: '--model claude-sonnet-4-20250514'
17 changes: 17 additions & 0 deletions .github/workflows/notify.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Release Notification

on:
release:
types: [published]

jobs:
publisher:
runs-on: ubuntu-latest
steps:
- name: Post to a Slack Workflow
id: slack
uses: slackapi/slack-github-action@v1.27.0
with:
payload: ${{ toJSON(github.event.release) }}
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
19 changes: 19 additions & 0 deletions .github/workflows/pr-labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: PR Labeler
on:
pull_request:
types: [opened]

jobs:
pr-labeler:
runs-on: ubuntu-latest
steps:
- uses: TimonVS/pr-labeler-action@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
labeler:
permissions:
contents: read
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v5
29 changes: 29 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Release Drafter

on:
push:
branches:
- develop

permissions:
contents: write
pull-requests: write

jobs:
update_release_draft:
runs-on: ubuntu-latest
steps:
- name: Set version
id: version
run: |
RELEASE_VERSION=v$(TZ='Australia/Sydney' date +'%Y.%m.%d-%H%M')
echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_OUTPUT
- name: Create draft
uses: release-drafter/release-drafter@v6
with:
config-name: release-drafter.yml
version: ${{ steps.version.outputs.RELEASE_VERSION }}
name: ${{ steps.version.outputs.RELEASE_VERSION }}
tag: ${{ steps.version.outputs.RELEASE_VERSION }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Loading