hashicorp / hashicorp/packer-plugin-openstack

DomainID or DomainName validation is inconsistent

Offen
#63 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug
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 (without domain_name) ask to remove it because is not required while using token
  • If neither domain_name or domain_id is used then error asking for one of them
  • If neither domain_name or domain_id is used but OS_DOMAIN_ID env 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

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Ö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

Neue Issues direkt in Ihr Postfach

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