Goal
Refactor the following hardcoded constants into a user-editable configuration file (dvopsctl.yaml) located at ~/.config/dvopsctl.yaml.
Context
These constants are currently hardcoded in commands/docker.go, which limits flexibility for users who may want to use different registries, GitHub organizations, or repository names. Externalizing them into a config file will improve maintainability, portability, and environment-specific customization.
Target Constants
Located in commands/docker.go:
defaultRegistry = "ghcr.io/mylittleparis"
defaultGithub = "https://github.com/MyLittleParis"
defaultRepositoryName = "devops-docker-php"
Acceptance Criteria
Notes
- Config file path:
~/.config/dvopsctl.yaml
- Use Go standard libraries
Goal
Refactor the following hardcoded constants into a user-editable configuration file (
dvopsctl.yaml) located at~/.config/dvopsctl.yaml.Context
These constants are currently hardcoded in
commands/docker.go, which limits flexibility for users who may want to use different registries, GitHub organizations, or repository names. Externalizing them into a config file will improve maintainability, portability, and environment-specific customization.Target Constants
Located in
commands/docker.go:defaultRegistry = "ghcr.io/mylittleparis"defaultGithub = "https://github.com/MyLittleParis"defaultRepositoryName = "devops-docker-php"Acceptance Criteria
Create or update a config struct to include:
Replace hardcoded constants with values loaded from the config file
Implement unit tests that:
Update CLI or README documentation to reflect the new config structure
Notes
~/.config/dvopsctl.yaml