mirror of
https://github.com/containers/podman.git
synced 2025-05-20 08:36:23 +08:00

Also Switch to using CONTAINERS_REGISTRIES_CONF for registries.conf overrides. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
55 lines
1.2 KiB
Go
55 lines
1.2 KiB
Go
package libpod
|
|
|
|
import (
|
|
"io/ioutil"
|
|
"os"
|
|
"reflect"
|
|
"testing"
|
|
|
|
sysreg "github.com/containers/podman/v3/pkg/registries"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
var (
|
|
registry = `[registries.search]
|
|
registries = ['one']
|
|
|
|
[registries.insecure]
|
|
registries = ['two']`
|
|
)
|
|
|
|
func createTmpFile(content []byte) (string, error) {
|
|
tmpfile, err := ioutil.TempFile(os.TempDir(), "unittest")
|
|
if err != nil {
|
|
return "", err
|
|
}
|
|
|
|
if _, err := tmpfile.Write(content); err != nil {
|
|
return "", err
|
|
}
|
|
if err := tmpfile.Close(); err != nil {
|
|
return "", err
|
|
}
|
|
return tmpfile.Name(), nil
|
|
}
|
|
|
|
func TestGetRegistries(t *testing.T) {
|
|
registryPath, err := createTmpFile([]byte(registry))
|
|
assert.NoError(t, err)
|
|
defer os.Remove(registryPath)
|
|
os.Setenv("CONTAINERS_REGISTRIES_CONF", registryPath)
|
|
registries, err := sysreg.GetRegistries()
|
|
assert.NoError(t, err)
|
|
assert.True(t, reflect.DeepEqual(registries, []string{"one"}))
|
|
}
|
|
|
|
func TestGetInsecureRegistries(t *testing.T) {
|
|
registryPath, err := createTmpFile([]byte(registry))
|
|
assert.NoError(t, err)
|
|
os.Setenv("CONTAINERS_REGISTRIES_CONF", registryPath)
|
|
defer os.Remove(registryPath)
|
|
registries, err := sysreg.GetInsecureRegistries()
|
|
assert.NoError(t, err)
|
|
assert.True(t, reflect.DeepEqual(registries, []string{"two"}))
|
|
}
|