pyvenv cannot install until $facts['python3_version'] exists (or is overidden) on RedHat style OSes
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- python
- Bereich
- devops, infrastructure
Rechercherichtung
Start with manifests/pyvenv.pp at line 44 and manifests/init.pp around lines 76 and 80-84, then reproduce the failure on a minimal Oracle Linux 8 installation without Python 3. The work is done when the catalog compiles without the split-on-Undef error while handling the reported Python version and pyvenv resources.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Affected Puppet, Ruby, OS and module versions/distributions
- Puppet: 6.26.0
- Ruby: 2.5.9p229
- Distribution: Oracle Linux 8
- Module version: 6.2.1
How to reproduce (e.g Puppet code you use)
Use this module to install a python role with a pyvenv declared and absolutely no python3 installed (minimal OEL 8 install)
What are you seeing
Failure to compile catalog
What behaviour did you expect instead
Compiled catalog
Output log
puppet agent -t --verbose
Info: Using environment 'pe2019'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Retrieving locales
Info: Loading facts
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: Error while evaluating a Function Call, 'split' parameter 'str' expects a String value, got Undef (file: /etc/puppetlabs/code/environments/pe2019/modules/python/manifests/pyvenv.pp, line: 44, column: 34) (file: /etc/puppetlabs/code/environments/pe2019/modules/python/manifests/init.pp, line: 76) on node example.com
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
Any additional information you'd like to impart
A cheap workaround would be to wrap https://github.com/voxpupuli/puppet-python/blob/master/manifests/init.pp#L80-L84 in a conditional EG
# Conditionally allow hiera configuration of python resources once Puppet facts exist
# Will take multiple runs to converge
if $facts['python3_version'] {
create_resources('python::pip', $python_pips)
create_resources('python::pyvenv', $python_pyvenvs)
create_resources('python::requirements', $python_requirements)
create_resources('python::dotfile', $python_dotfiles)
}
...but that depends on if you're supporting python2 still. Perhaps better logic for converting 'system' into a real Python version is needed.
- Vorherrschende Sprache
- Ruby
- Sterne
- 196
- Forks
- 371
- Ø Merge
- 5 Std. 54 Min.
- Gemergte PRs (30 T.)
- 5
Entwicklungsumgebung
Startet den Dev-Container des Projekts im Browser, mit Ihrem eigenen GitHub-Konto.
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus voxpupuli/puppet-python
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 67/100
voxpupuli/puppet-python#759 ·
-
bug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 45/100
voxpupuli/puppet-python#743 · 1 Kommentar ·
-
enhancement
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 35/100
voxpupuli/puppet-python#721 · 1 Reaktion ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 35/100
voxpupuli/puppet-python#711 · 1 Kommentar ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 52/100
voxpupuli/puppet-python#673 · 1 Kommentar ·
Alle Issues in voxpupuli/puppet-python
Ähnliche Issues
-
account: profile bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 5 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
metanorma/metanorma-standoc#1315 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
metanorma/metanorma-iso#1681 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag