Documentation of reuse_ips and behaviour mismatch

Abierto Apto para principiantes
#167 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
72/100
Tipo de issue
Documentación
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
go

Línea de trabajo

Lee la descripción de reuse_ips en docs-partials/builder/openstack/RunConfig-not-required.mdx y compárala con el comportamiento en builder/openstack/step_allocate_ip.go, especialmente con el código enlazado cerca de la línea 74. Aclara si la opción solo reutiliza las IP flotantes disponibles o crea una cuando no hay ninguna disponible; después, verifica que la documentación coincida con el comportamiento observado.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug

Overview

Documentation implies that reuse_ips will trial using any existing floating IPs then create a new one if it cannot find any. I find and code implies to me from a quick look that it will only try reuse_ips and hence if there is not a IP to reuse then will fail.

https://github.com/hashicorp/packer-plugin-openstack/blob/76283e5cef45a5cab6adcf968936c7f24b90e0d4/docs-partials/builder/openstack/RunConfig-not-required.mdx?plain=1#L35-L40

Reproduction Steps

GitLab-ci runner

build-image:
  stage: build
  image: hashicorp/packer
  before_script: 
    - mkdir -p ./openstack
    - mkdir -p /etc/openstack
    - echo "$CLOUDS_YAML" > ./openstack/clouds.yaml
    - cp openstack/clouds.yaml /etc/openstack
  script: 
    - packer init ubuntu.pkr.hcl
    - packer build -var ubuntu_version=noble ubuntu.pkr.hcl`
Plugin and Packer version

From packer version

Simplified Packer Buildfile
packer {
  required_plugins {
      openstack = {
        version = "~> 1"
        source  = "github.com/hashicorp/openstack"
    }
  }
}

source "openstack" "ubuntu" {
  flavor          = "general.v2.small"
  image_name       = "packer-test-ubuntu-${var.ubuntu_version}"
  external_source_image_url = "https://cloud-images.ubuntu.com/${var.ubuntu_version}/current/${var.ubuntu_version}-server-cloudimg-amd64.img"
  ssh_username    = "ubuntu"
  cloud = "openstack"
  networks = ["<removed>"]
  floating_ip_network = "external"
  reuse_ips = true
  insecure            = "true"
  image_disk_format   = "raw"
  use_blockstorage_volume = true
  volume_size = 10
  network_discovery_cidrs = ["<removed>"]

  username     = "ubuntu"
}

Operating system and Environment details

hashicorp/packer docker image, AMD64

Log Fragments related

Packer init versions

$ packer init ubuntu.pkr.hcl
Installed plugin github.com/hashicorp/openstack v1.1.4 in "/root/.config/packer/plugins/github.com/hashicorp/openstack/packer-plugin-openstack_v1.1.4_x5.0_linux_amd64"

Build failure output

==> openstack.ubuntu: Launching server...
==> openstack.ubuntu: Server ID: 3d10800f-b8a6-49b8-b103-7014cb708c55
==> openstack.ubuntu: Waiting for server to become ready...
==> openstack.ubuntu: Searching for unassociated floating IP
==> openstack.ubuntu: Error searching for floating IP: no free floating IPs found
==> openstack.ubuntu: Terminating the source server: 3d10800f-b8a6-49b8-b103-7014cb708c55 ...
==> openstack.ubuntu: Waiting for volume 2be9f422-8822-460d-b56a-d27327df072d to become available...
==> openstack.ubuntu: Deleting volume: 2be9f422-8822-460d-b56a-d27327df072d ...
==> openstack.ubuntu: Deleting temporary external source image: packer_6aeb58c1-a60a-345c-f49c-0f087813cf4b ...
==> openstack.ubuntu: Deleting temporary keypair: packer_6aeb58c1-74e9-b8e2-4f69-9bad19abed95 ...
Build 'openstack.ubuntu' errored after 1 minute 45 seconds: Error searching for floating IP: no free floating IPs found
==> Wait completed after 1 minute 45 seconds
==> Some builds didn't complete successfully and had errors:
--> openstack.ubuntu: Error searching for floating IP: no free floating IPs found
==> Builds finished but no artifacts were created.
Lenguaje dominante
Go
Estrellas
29
Forks
27
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de hashicorp/packer-plugin-openstack

Todos los issues de hashicorp/packer-plugin-openstack

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.