Skip to content

infra(ci): Renovate packageRules 多 path 対応 #208

Description

@win2cot

Phase 1 Setup 0-2: Renovate packageRules 多 path 対応

概要

monorepo 構造に合わせて Renovate の packageRulesmatchFileNames を追加し、webapi/ / keycloak/ / infra/ / web/ のコンポーネント別にラベルを自動付与する。

詳細仕様は docs/architecture/infrastructure-plan.md v5 §3.3 を参照。

背景

Setup 0-1 で monorepo 化(webapi/ / web/ / keycloak/ / infra/ の subdir 構造)された後、Renovate が PR 作成時にどのコンポーネントの依存更新かを識別できるよう、ラベル分離を導入する。

実装内容

renovate.json 更新

既存 renovate.json(root)に packageRules を追加。例:

{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "extends": [
    "config:recommended"
  ],
  "packageRules": [
    {
      "matchFileNames": ["webapi/**"],
      "addLabels": ["area/webapi", "renovate"]
    },
    {
      "matchFileNames": ["keycloak/**"],
      "addLabels": ["area/keycloak", "renovate"]
    },
    {
      "matchFileNames": ["infra/**"],
      "addLabels": ["area/infra", "renovate"]
    },
    {
      "matchFileNames": ["web/**"],
      "addLabels": ["area/web", "renovate"]
    },
    {
      "matchFileNames": [".github/**"],
      "addLabels": ["area/ci", "renovate"]
    }
  ]
}

(既存設定がある場合は merge する形で。extends は維持。)

ラベル整備

area/webapi area/keycloak area/infra area/web area/ci ラベルが repo に存在することを確認。存在しなければ gh label create で追加(色は既存規約に合わせ area/* 系の色)。

動作確認

  • Renovate がリポジトリで稼働している前提(github.com/apps/renovate インストール済の想定)
  • 本 PR マージ後の Renovate 次回 run 結果で、PR ラベルが期待通り付与されることを確認

受入条件

  • renovate.json に上記 packageRules が追加されている
  • area/webapi area/keycloak area/infra area/web area/ci ラベルが存在
  • PR の Renovate Configuration Help または Renovate 次回 run でラベル付与が確認できる
  • 既存 Renovate 設定(extends 等)を壊していない(JSON schema validate)

関連

備考

  • task-type: task-type:impl
  • 優先度: priority/p1
  • area: area/ci

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/ci.github/workflows / CI/CD パイプライン変更claude:ready実装着手 OK のサイン。人が付与すると実装 Claude が起動priority/p1High。現スプリント内で完了必須task-type:implコード実装が主体のタスク

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions