test: add automated Pale Moon tests (#903)

* test: start work on Pale Moon tests

Signed-off-by: Xe Iaso <me@xeiaso.net>

* test(palemoon): rewrite to use ci-images

Signed-off-by: Xe Iaso <me@xeiaso.net>

* ci: enable palemoon tests

Signed-off-by: Xe Iaso <me@xeiaso.net>

* test(palemoon): add some variables

Signed-off-by: Xe Iaso <me@xeiaso.net>

* fix: disable tmate

Signed-off-by: Xe Iaso <me@xeiaso.net>

* test(palemoon): disable i386 for now

Signed-off-by: Xe Iaso <me@xeiaso.net>

* chore: spelling

Signed-off-by: Xe Iaso <me@xeiaso.net>

---------

Signed-off-by: Xe Iaso <me@xeiaso.net>
This commit is contained in:
Xe Iaso 2025-07-25 11:42:08 -04:00 committed by GitHub
parent 0ef3461816
commit bf42014ac3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
18 changed files with 646 additions and 9 deletions

View file

@ -0,0 +1,33 @@
package internal
import (
"context"
"fmt"
"github.com/docker/docker/client"
)
// GetContainerIPAddress returns the first non-empty IP address of the container with the given name.
// It returns the IP address as a string or an error.
func GetContainerIPAddress(containerName string) (string, error) {
ctx := context.Background()
cli, err := client.NewClientWithOpts(client.FromEnv)
if err != nil {
return "", err
}
// Get container details
containerJSON, err := cli.ContainerInspect(ctx, containerName)
if err != nil {
return "", err
}
// Loop through all networks and return the first IP address found
for _, net := range containerJSON.NetworkSettings.Networks {
if net.IPAddress != "" {
return net.IPAddress, nil
}
}
return "", fmt.Errorf("no IP address found for container %q", containerName)
}