Files
portainer/api/stacks/stackutils/validation_test.go
T

62 lines
1.1 KiB
Go

package stackutils
import (
"testing"
portainer "github.com/portainer/portainer/api"
"github.com/stretchr/testify/require"
)
func TestIsValidStackFile_DefaultPortEnvSubstitution(t *testing.T) {
yamlContent := []byte(`
version: "3"
services:
webservice:
image: nginx
container_name: hello-world
networks:
- "mynet1"
ports:
- "${PORT:-8080}:80"
networks:
mynet1:
driver: bridge
ipam:
config:
- subnet: 172.16.0.0/24
`)
securitySettings := &portainer.EndpointSecuritySettings{}
err := IsValidStackFile(yamlContent, securitySettings)
require.NoError(t, err)
}
func TestIsValidStackFile_PortEnv(t *testing.T) {
yamlContent := []byte(`
version: "3"
services:
webservice:
image: nginx
container_name: hello-world
networks:
- "mynet1"
ports:
- "${PORT}:80"
networks:
mynet1:
driver: bridge
ipam:
config:
- subnet: 172.16.0.0/24
`)
securitySettings := &portainer.EndpointSecuritySettings{}
err := IsValidStackFile(yamlContent, securitySettings)
require.NoError(t, err)
}