MCPcopy Create free account
hub / github.com/ddev/ddev / createConfigurationFiles

Function createConfigurationFiles

pkg/ddevapp/addons.go:388–424  ·  view source on GitHub ↗

createConfigurationFiles creates temporary YAML configuration files for PHP actions

(app *DdevApp)

Source from the content-addressed store, hash-verified

386
387// createConfigurationFiles creates temporary YAML configuration files for PHP actions
388func createConfigurationFiles(app *DdevApp) error {
389 configDir := filepath.Join(app.AppConfDir(), ".ddev-config")
390
391 // Create the .ddev-config directory
392 err := os.MkdirAll(configDir, 0755)
393 if err != nil {
394 return fmt.Errorf("failed to create config directory %s: %v", configDir, err)
395 }
396
397 // Generate project configuration YAML
398 projectConfigYAML, err := app.GetProcessedProjectConfigYAML()
399 if err != nil {
400 return fmt.Errorf("failed to generate project configuration: %v", err)
401 }
402
403 // Write project configuration file
404 projectConfigPath := filepath.Join(configDir, "project_config.yaml")
405 err = os.WriteFile(projectConfigPath, projectConfigYAML, 0644)
406 if err != nil {
407 return fmt.Errorf("failed to write project config file %s: %v", projectConfigPath, err)
408 }
409
410 // Generate global configuration YAML
411 globalConfigYAML, err := globalconfig.GetGlobalConfigYAML()
412 if err != nil {
413 return fmt.Errorf("failed to generate global configuration: %v", err)
414 }
415
416 // Write global configuration file
417 globalConfigPath := filepath.Join(configDir, "global_config.yaml")
418 err = os.WriteFile(globalConfigPath, globalConfigYAML, 0644)
419 if err != nil {
420 return fmt.Errorf("failed to write global config file %s: %v", globalConfigPath, err)
421 }
422
423 return nil
424}
425
426// CleanupConfigurationFiles removes temporary configuration files created for PHP actions
427func (app *DdevApp) CleanupConfigurationFiles() error {

Callers 1

processPHPActionFunction · 0.85

Calls 4

GetGlobalConfigYAMLFunction · 0.92
AppConfDirMethod · 0.80
ErrorfMethod · 0.80

Tested by

no test coverage detected