bbs2gh: support setting custom property values after repository migration

Abierto
#1,628 0 comentarios 0 reacciones 0 asignados Ver en GitHub

@enyil ya está trabajando en esto.

Desde el 8/10/2026.

  • #1629 de @enyil — abierto

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
25/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Estancado
Stack tecnológico
csharp, github
Área
cli

Línea de trabajo

The work is in the bbs2gh migrate-repo command, where the proposed --custom-properties flag would be validated and then applied via PATCH /repos/{owner}/{repo}/properties/values after a successful migration. Linked PR #1629 already holds an implementation, so review that first rather than starting fresh. Done means the flag is validated up front, rejected with --queue-only and export-only modes, and reports property-update failures without suggesting a rerun.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Description

I'd like to add an optional --custom-properties flag to gh bbs2gh migrate-repo so users can apply custom property key/value pairs to the destination repository as part of the migration command, rather than running a separate update manually.

Example:

--custom-properties '{"environment":"production","teams":["platform","security"]}'

The proposed scope is bbs2gh only. This does not add the option to ado2gh, gei, or gl2gh.

Proposed behavior
  • Accept an inline JSON object with strings, arrays of strings (multi-select), and null (unset). Boolean properties use the strings "true" and "false".
  • Validate the JSON and incompatible options before starting migration work.
  • After the repository migration succeeds, apply the values using PATCH /repos/{owner}/{repo}/properties/values.
  • Require the properties to already be defined in the destination organization and the caller to have permission to edit their values.
  • Reject --queue-only and export-only operations, since no post-migration update can be guaranteed in those modes.
  • Report property-update failures explicitly while explaining that the migrated repository already exists and the migration should not be rerun.
  • Leave existing behavior unchanged when the flag is omitted. generate-script is not extended; users can add the flag to individual generated migrate-repo calls.
Important limitation and related issues

The currently exposed StartRepositoryMigrationInput GraphQL input does not have a custom-properties field, so this proposal applies values after a successful migration, not atomically at repository creation.

It therefore does not solve creation-time required-property policies or the scenarios in github/gh-gei#1558 and github/gh-gei#1563. Those need migration API support and are separate from this bbs2gh-only convenience feature.

An implementation is prepared on enyil/gh-gei:enyil-bbs2gh-custom-properties with regression coverage, README documentation, logging, and a release note. Opening this issue for maintainer feedback before submitting a PR, as requested by CONTRIBUTING.md.

Lenguaje dominante
C#
Estrellas
482
Forks
151
Merge medio
2 d 18 h
PR fusionados (30 d)
5

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de github/gh-gei

Todos los issues de github/gh-gei

Issues similares

Más issues de C#

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.