hashicorp / hashicorp/packer-plugin-openstack
DomainID or DomainName validation is inconsistent
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Go
- Sterne
- 29
- Forks
- 26
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Overview of the Issue
Using hashicorp/packer container with a HCL file that contains token:
- Setting
domain_id(withoutdomain_name) ask to remove it because is not required while usingtoken - If neither
domain_nameordomain_idis used then error asking for one of them - If neither
domain_nameordomain_idis used butOS_DOMAIN_IDenv var exported then is OK
Reproduction Steps
packer validate test.pkr.hcl
If domain_id = "default" + token = '...' then:
packer validate vault-raft.pkr.hcl
Error: 1 error(s) occurred:
* DomainID may not be provided when authenticating with a TokenID
on vault-raft.pkr.hcl line 1:
(source code not available)
If #domain_id = "default" = token = '...' then:
Error: 1 error(s) occurred:
* You must provide exactly one of DomainID or DomainName in a Scope with ProjectName
on vault-raft.pkr.hcl line 1:
(source code not available)
If #domain_id = "default" = token = '...' + export OS_DOMAIN_ID=default then:
The configuration is valid.
Plugin and Packer version
packer version
Packer v1.8.0
Simplified Packer Buildfile
test.pkr.hcl file:
source "openstack" "hello" {
#domain_id = "default"
token = "TheRealTokenWasHere"
identity_endpoint = "https://auth.cloud.ovh.net/v3"
image_name = "debian-hello-test"
source_image_name = "Debian 11"
flavor = "s1-2"
tenant_name = "TheTenantNameWasHere"
region = "GRA7"
ssh_username = "debian"
networks = ["TheNetworkIdWasHere"]
}
build {
sources = ["source.openstack.hello"]
provisioner "shell" {
execute_command = "sudo -S sh -c '{{ .Vars }} {{ .Path }}'"
scripts = fileset(".", "scripts/{install,secure}.sh")
}
}
Operating system and Environment details
Docker image hashicorp/packer running in GitlabCI runner ignoring the entrypoint
Also tested in a Debian 11 laptop running the same Packer version.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Reproduziere das Validierungsverhalten mit der bereitgestellten test.pkr.hcl mithilfe von packer validate und vergleiche die Fälle domain_id, domain_name, token und OS_DOMAIN_ID. Verfolge den Validierungseinstiegspunkt zurück, der die beiden widersprüchlichen Fehler erzeugt, und füge für diese Konfigurationen Testabdeckung hinzu oder aktualisiere sie. Erledigt ist die Aufgabe, wenn äquivalente Konfigurationen konsistente, korrekte Validierungsergebnisse erhalten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- go
- Bereich
- cloud
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100