testcontainers / testcontainers/testcontainers-java

[Bug]: TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX affects local Dockerfile

Abierto
#6,413 4 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

type/bug
Lenguaje dominante
Java
Estrellas
8.7k
Forks
1.9k
Merge medio
2 d 17 h
PR fusionados (30 d)
9

Descripción

Module

Core

Testcontainers version

1.15.2

Using the latest Testcontainers version?

No

Host OS

Linux

Host Arch

x86

Docker version
Client: Docker Engine - Community
 Version:           20.10.22
 API version:       1.41
 Go version:        go1.18.9
 Git commit:        3a2c30b
 Built:             Thu Dec 15 22:28:45 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.22
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.18.9
  Git commit:       42c8b31
  Built:            Thu Dec 15 22:26:25 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.15
  GitCommit:        5b842e528e99d4d4c1686467debf2bd4b88ecd86
 runc:
  Version:          1.1.4
  GitCommit:        v1.1.4-0-g5fd4c4d
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
What happened?

Usage of TESTCONTAINERS_HUB_IMAGE_NAME_PREFIX for image substitution affects the name given to local images as well.

For example, the following piece of code:

new ImageFromDockerfile("redis-sentinel")
  .withFileFromClasspath("Dockerfile", "Dockerfile")

Triggers the following error:

o.t.u.ImageNameSubstitutor - Using my.company.registry.net/redis-sentinel:latest as a substitute image for redis-sentinel:latest (using image substitutor: DefaultImageNameSubstitutor (composite of 'ConfigurationFileImageNameSubstitutor' and 'PrefixingImageNameSubstitutor'))

The local name redis-sentinel is replaced by my.company.registry.net/redis-sentinel:latest which doesn't make sense at all.

Relevant log output

No response

Additional Information

No response

Guía de contribución

Abrir la guía de contribución

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.

Línea de trabajo

Comienza por ImageFromDockerfile y el compuesto DefaultImageNameSubstitutor, incluido PrefixingImageNameSubstitutor, usando el ejemplo redis-sentinel como reproducción. Verifica que los nombres de imagen locales de Dockerfile no reciban un prefijo, mientras que la sustitución de imágenes para imágenes externas siga funcionando, y después ejecuta las pruebas existentes relevantes o añade cobertura para este caso.

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

Evaluación

Stack tecnológico
docker, java
Área
testing
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.