Skip to content

Merge pull request #489 from Yubico/yubikit-consolidation #8

Merge pull request #489 from Yubico/yubikit-consolidation

Merge pull request #489 from Yubico/yubikit-consolidation #8

name: Migration Docs Update
on:
push:
branches: [ yubikit ]
workflow_dispatch:
permissions:
contents: write
pull-requests: write
concurrency:
group: migration-docs-update-yubikit
cancel-in-progress: false
jobs:
update:
runs-on: ubuntu-latest
steps:
- name: Check out source
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
with:
fetch-depth: 0
ref: yubikit
- name: Fetch migration baselines
run: |
git fetch origin +refs/heads/develop:refs/remotes/origin/develop
git fetch origin +refs/heads/yubikit:refs/remotes/origin/yubikit
- name: Resolve migration range
id: range
shell: bash
run: |
state_path='docs/migration/.state.yml'
if [[ -f "$state_path" ]]; then
last=$(sed -n 's/^last_analyzed_commit:[[:space:]]*//p' "$state_path" | head -n 1)
else
last=''
fi
if [[ -z "$last" ]]; then
last='origin/yubikit^'
fi
echo "base_range=$last..HEAD" >> "$GITHUB_OUTPUT"
- name: Build migration context
shell: bash
run: |
bash ./scripts/migration/build-migration-context.sh \
--mode update \
--v1-baseline origin/develop \
--v2-branch origin/yubikit \
--base-range '${{ steps.range.outputs.base_range }}' \
--output-dir .migration-context
- name: Update migration documentation
uses: anthropics/claude-code-action@28f83620103c48a57093dcc2837eec89e036bb9f # beta (v0.0.63)
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
github_token: ${{ secrets.GITHUB_TOKEN }}
prompt: |
Read and follow `.github/prompts/migration-docs-post-merge.md`.
The generated context is in `.migration-context/`.
Update only the allowed migration documentation files.
claude_args: >-
--allowedTools Read,Grep,Glob,Edit,Write
- name: Create migration documentation PR
uses: peter-evans/create-pull-request@22a9089034f40e5a961c8808d113e2c98fb63676 # v7
with:
branch: automation/migration-docs-update
base: yubikit
title: Update v1 to v2 migration documentation
commit-message: "docs: update migration documentation"
body: |
Automated migration documentation update for `${{ steps.range.outputs.base_range }}`.
Review the generated guide, map, changelog, and state changes before merging.
add-paths: |
docs/migration/v1-to-v2.md
docs/migration/v1-to-v2-map.yml
docs/migration/v1-to-v2-changelog.md
docs/migration/.state.yml