//go:build mage package main import ( "fmt" "os" "github.com/magefile/mage/mg" "github.com/magefile/mage/sh" ) // Deploy deploys the services to the Flow Platform. func Deploy(name string) error { os.Setenv("MAGEFILE_VERBOSE", "true") mg.Deps( mg.F(Prepare, name), ) cfg, err := newConfig(configFile) if err != nil { return fmt.Errorf("unable to load the configuration; %w", err) } os.Setenv("DOCKER_HOST", cfg.DockerHost) command := []string{ "docker", "compose", "--project-directory", rootBuildDir+"/compose", "up", "-d", "--build", } if name != "all" { command = append(command, name) } return sh.Run(command[0], command[1:]...) }