feat(plan): support convertorLabels and convertorAffinity in Plan resource
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 82/100
Direzione di ricerca
Inizia da ocp_resources/plan.py: copia il modo in cui convertor_node_selector viene accettato in __init__, memorizzato e scritto in spec["convertorNodeSelector"] in to_dict(), poi aggiungi convertor_labels e convertor_affinity accanto con le relative chiavi spec in camelCase. Aggiungi voci nelle docstring e casi in tests/test_plan.py che verifichino che ogni chiave compaia quando impostata e venga omessa quando è None. È completato quando entrambi i test passano e la checklist nell'issue è soddisfatta.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
The forklift Plan CRD supports spec.convertorLabels (map[string]string) and spec.convertorAffinity (standard Kubernetes affinity dict), but the Plan wrapper (ocp_resources/plan.py) does not expose them. Consumers (e.g. mtv-api-tests, issue RedHatQE/mtv-api-tests#813 for MTV-7085 regression coverage) need to set labels and preferred podAffinity on virt-v2v conversion pods.
Current state
convertor_node_selector→spec["convertorNodeSelector"]was added in #2819 — exact pattern to follow.target_affinity→spec["targetAffinity"]already exists as affinity precedent.- No
convertor_labels/convertor_affinityanywhere inocp_resources/plan.py.
Proposed change
Mirror the convertor_node_selector pattern in ocp_resources/plan.py:
__init__params:convertor_labels: dict[str, str] | None = None,convertor_affinity: dict[str, Any] | None = None- Attribute assignment in
__init__ to_dict():if self.convertor_labels is not None: spec["convertorLabels"] = ...and same forconvertorAffinity(next to convertorNodeSelector block, ~line 232)- Docstring entries next to convertor_node_selector's
- Tests in
tests/test_plan.pyasserting spec keys emitted when set and omitted when None
Done
-
convertor_labelsparam maps tospec.convertorLabelsinto_dict() -
convertor_affinityparam maps tospec.convertorAffinityinto_dict() - Docstrings updated
- Tests cover both fields (set and None cases)
-
prek runpasses -
uv run --group tests pytestpasses
- Lingua principale
- Python
- Stelle
- 28
- Fork
- 85
- Merge medio
- 1g 27m
- PR unite (30g)
- 28
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di RedHatQE/openshift-python-wrapper
-
Feature request: Include restore error details in VirtualMachineFileRestore phase-wait failuresAperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 67/100
RedHatQE/openshift-python-wrapper#2847 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Dependency DashboardApertaStale
Difficoltà 4/5 3-5 giorni Idoneità per principianti 15/100
RedHatQE/openshift-python-wrapper#2180 · 125 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di RedHatQE/openshift-python-wrapper
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
elviskahoro/sdk-python-attio#144 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 1 giorno
-
RenyiELBO raises TypeError when model has no sample sitesForse già presa @alibb007 l’ha presa oggi. Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
[Bug]: Four evaluation scripts unpack init_memmachine_params's five return values into three namesAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
MemMachine/MemMachine#1911 ·
I maintainer di solito rispondono entro 3 giorni