canonical / canonical/layer-basic

Improve series upgrade handling by allowing for manual venv rebuild

Offen
#158 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
10
Forks
42
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

It is likely that an admin will want to validate that the charm code will be successful after a series upgrade before issuing the `juju upgrade-series complete` command. However, the [current logic](https://github.com/juju-solutions/layer-basic/blob/master/lib/charms/layer/basic.py#L116-L119) will [only trigger on the `post-series-upgrade` hook](https://github.com/juju-solutions/layer-basic/blob/master/lib/charms/layer/basic.py#L102) which doesn't allow the admin a chance to validate the new venv.

I think we should add a `--rebuild` option to the [`charm-env` command](https://github.com/juju-solutions/layer-basic/blob/master/bin/charm-env) which does the venv rebuild manually and presumably sets a flag to indicate to the bootstrap code that it has already been rebuilt for the current series so that it doesn't get rebuilt again upon `post-series-upgrade`.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne mit bin/charm-env und der zitierten series-upgrade-Logik in lib/charms/layer/basic.py, einschließlich des post-series-upgrade-Hooks. Verfolge, wie die virtuelle Umgebung neu erstellt wird und wie der Series-Status aufgezeichnet wird; als erledigt gilt die Aufgabe, wenn --rebuild die Validierung vor dem Abschluss unterstützt und der Hook dieselbe Series nicht erneut erstellt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
devops, tooling
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
38/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.