func()

in mpdev/internal/resources/deployment_manager.go [70:107]


func (dm *DeploymentManagerAutogenTemplate) Apply(registry Registry, dryRun bool) error {
	err := dm.validateSpec()
	if err != nil {
		return err
	}

	if dryRun {
		return nil
	}

	convertedSpec := dm.convertToAutogen()

	dir, err := util.CreateTmpDir("autogen")
	if err != nil {
		return err
	}
	dm.outDir = dir

	inputDir, err := util.CreateTmpDir("autogenInput")
	if err != nil {
		return err
	}
	defer os.RemoveAll(inputDir)

	inputFile, err := os.Create(filepath.Join(inputDir, "autogen.yaml"))
	if err != nil {
		return err
	}

	enc := yaml.NewEncoder(inputFile)
	err = enc.Encode(convertedSpec)
	if err != nil {
		return errors.Wrap(err, "failed to write autogen spec to temp file")
	}

	err = dm.runAutogen(registry, inputDir)
	return err
}