Skip to content

dummy change

dummy change #19

Workflow file for this run

# managed-by: opsoasis-repo-sync 41f76ed
name: Poseidon
on:
issues:
types: [assigned, labeled]
pull_request:
types: [opened, synchronize, labeled]
workflow_dispatch:
inputs:
fix_pr:
description: "PR number for an auto-chained review-fix run"
required: false
default: ""
jobs:
plan:
if: |
github.event_name == 'issues' && (
(github.event.action == 'assigned' && github.event.assignee.login == 'poseidon') ||
(github.event.action == 'labeled' && github.event.label.name == 'poseidon')
)
runs-on: ubuntu-latest
timeout-minutes: 20
concurrency:
group: poseidon-plan-${{ github.event.issue.number }}
cancel-in-progress: true
permissions:
contents: read
issues: write
id-token: write
steps:
- name: Get custom properties
id: props
env:
GH_TOKEN: ${{ github.token }}
run: |
BLOG_ID=$(gh api "repos/${{ github.repository }}/properties/values" \
--jq '.[] | select(.property_name == "wpcom-blog-id-production") | .value')
SITE_URL=$(gh api "repos/${{ github.repository }}/properties/values" \
--jq '.[] | select(.property_name == "site-url-production") | .value')
echo "blog_id=$BLOG_ID" >> "$GITHUB_OUTPUT"
echo "site_url=$SITE_URL" >> "$GITHUB_OUTPUT"
- uses: actions/checkout@v6
with:
fetch-depth: 1
- uses: a8cteam51/poseidon-actions/issue-plan@trunk
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
production_site_id: ${{ steps.props.outputs.blog_id }}
production_site_url: ${{ steps.props.outputs.site_url }}
issue_number: ${{ github.event.issue.number }}
issue_title: ${{ github.event.issue.title }}
issue_body: ${{ github.event.issue.body }}
github_token: ${{ github.token }}
implement:
if: |
github.event_name == 'issues' &&
github.event.action == 'labeled' && github.event.label.name == 'poseidon-implement'
runs-on: ubuntu-latest
timeout-minutes: 30
concurrency:
group: poseidon-implement-${{ github.event.issue.number }}
cancel-in-progress: true
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
steps:
- name: Get custom properties
id: props
env:
GH_TOKEN: ${{ github.token }}
run: |
BLOG_ID=$(gh api "repos/${{ github.repository }}/properties/values" \
--jq '.[] | select(.property_name == "wpcom-blog-id-production") | .value')
SITE_URL=$(gh api "repos/${{ github.repository }}/properties/values" \
--jq '.[] | select(.property_name == "site-url-production") | .value')
echo "blog_id=$BLOG_ID" >> "$GITHUB_OUTPUT"
echo "site_url=$SITE_URL" >> "$GITHUB_OUTPUT"
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: a8cteam51/poseidon-actions/issue-implement@trunk
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
production_site_id: ${{ steps.props.outputs.blog_id }}
production_site_url: ${{ steps.props.outputs.site_url }}
issue_number: ${{ github.event.issue.number }}
issue_title: ${{ github.event.issue.title }}
issue_body: ${{ github.event.issue.body }}
github_token: ${{ github.token }}
implement-v2:
if: |
github.event_name == 'issues' &&
github.event.action == 'labeled' && github.event.label.name == 'poseidon-implement-v2'
runs-on: ubuntu-latest
timeout-minutes: 30
concurrency:
group: poseidon-implement-v2-${{ github.event.issue.number }}
cancel-in-progress: true
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
steps:
- name: Get custom properties
id: props
env:
GH_TOKEN: ${{ github.token }}
run: |
BLOG_ID=$(gh api "repos/${{ github.repository }}/properties/values" \
--jq '.[] | select(.property_name == "wpcom-blog-id-production") | .value')
SITE_URL=$(gh api "repos/${{ github.repository }}/properties/values" \
--jq '.[] | select(.property_name == "site-url-production") | .value')
echo "blog_id=$BLOG_ID" >> "$GITHUB_OUTPUT"
echo "site_url=$SITE_URL" >> "$GITHUB_OUTPUT"
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: a8cteam51/poseidon-actions/issue-implement-v2@trunk
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
production_site_id: ${{ steps.props.outputs.blog_id }}
production_site_url: ${{ steps.props.outputs.site_url }}
issue_number: ${{ github.event.issue.number }}
issue_title: ${{ github.event.issue.title }}
issue_body: ${{ github.event.issue.body }}
github_token: ${{ github.token }}
review:
if: |
github.event_name == 'pull_request' &&
(github.event.action == 'opened' || github.event.action == 'synchronize')
runs-on: ubuntu-latest
timeout-minutes: 20
concurrency:
group: poseidon-review-${{ github.event.pull_request.number }}
cancel-in-progress: true
permissions:
contents: read
pull-requests: write
issues: write
actions: write
id-token: write
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: a8cteam51/poseidon-actions/pr-review@trunk
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
github_token: ${{ github.token }}
review-fix:
if: |
(github.event_name == 'pull_request' &&
github.event.action == 'labeled' && github.event.label.name == 'poseidon-fix-review') ||
(github.event_name == 'workflow_dispatch' && inputs.fix_pr != '')
runs-on: ubuntu-latest
timeout-minutes: 30
concurrency:
group: poseidon-review-fix-${{ github.event.pull_request.number || inputs.fix_pr }}
cancel-in-progress: false
permissions:
contents: write
pull-requests: write
issues: write
# claude-code-action exchanges an OIDC token for its GitHub App token.
id-token: write
steps:
- uses: a8cteam51/poseidon-actions/pr-review-fix@trunk
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
github_token: ${{ github.token }}
pr_number: ${{ github.event.pull_request.number || inputs.fix_pr }}