diff --git a/internal/dis/component/instances/create.go b/internal/dis/component/instances/create.go index 9e18848..826e04f 100644 --- a/internal/dis/component/instances/create.go +++ b/internal/dis/component/instances/create.go @@ -6,6 +6,7 @@ import ( "strings" "github.com/FAU-CDI/wisski-distillery/internal/config/validators" + "github.com/FAU-CDI/wisski-distillery/internal/models" "github.com/FAU-CDI/wisski-distillery/internal/wisski" ) @@ -14,29 +15,6 @@ var ( errRestrictedSlug = errors.New("restricted slug") ) -const ( - PHP8 = "8.0" - PHP8_IMAGE = "docker.io/library/php:8.0-apache-bullseye" - PHP8_1 = "8.1" - PHP8_1_IMAGE = "docker.io/library/php:8.1-apache-bullseye" -) - -var errUnknownPHPVersion = errors.New("unknown php version") - -// GetBaseImage returns the php base image to use -func GetBaseImage(php string) (string, error) { - switch php { - case "": - return PHP8_IMAGE, nil - case PHP8: - return PHP8_IMAGE, nil - case PHP8_1: - return PHP8_1_IMAGE, nil - default: - return "", errUnknownPHPVersion - } -} - // Create fills the struct for a new WissKI instance. // It validates that slug is a valid name for an instance. // @@ -88,7 +66,7 @@ func (instances *Instances) Create(slug string, phpversion string) (wissKI *wiss } // docker image - wissKI.Liquid.Instance.DockerBaseImage, err = GetBaseImage(phpversion) + wissKI.Liquid.Instance.DockerBaseImage, err = models.GetBaseImage(phpversion) if err != nil { return nil, err } diff --git a/internal/dis/component/provision/provision.go b/internal/dis/component/provision/provision.go index c664e85..b3e5e13 100644 --- a/internal/dis/component/provision/provision.go +++ b/internal/dis/component/provision/provision.go @@ -7,6 +7,7 @@ import ( "github.com/FAU-CDI/wisski-distillery/internal/dis/component" "github.com/FAU-CDI/wisski-distillery/internal/dis/component/instances" + "github.com/FAU-CDI/wisski-distillery/internal/models" "github.com/FAU-CDI/wisski-distillery/internal/wisski" "github.com/FAU-CDI/wisski-distillery/pkg/logging" "github.com/tkw1536/pkglib/fsx" @@ -37,7 +38,7 @@ func (pv *Provision) ValidateFlags(flags ProvisionFlags) error { return err } // check for known php versions - if _, err := instances.GetBaseImage(flags.PHPVersion); err != nil { + if _, err := models.GetBaseImage(flags.PHPVersion); err != nil { return err } return nil diff --git a/internal/dis/component/server/admin/html/instance.html b/internal/dis/component/server/admin/html/instance.html index d707792..205f18e 100644 --- a/internal/dis/component/server/admin/html/instance.html +++ b/internal/dis/component/server/admin/html/instance.html @@ -34,11 +34,7 @@ Docker Base Image
{{ .Instance.DockerBaseImage }}
- {{ else }}
- (none)
- {{ end }}
+ {{ .Instance.GetDockerBaseImage }}