fix: preserve generated app registrations
This commit is contained in:
parent
9f1c05a4d4
commit
66d42b6ca4
|
|
@ -479,12 +479,34 @@ func renderPlatformDeliveryConfig(dir string, cfg config.Config) error {
|
|||
|
||||
func copyAndRenderPlatformDeliveryBases(templateDir, repoDir string, cfg config.Config) error {
|
||||
bases := []string{"gateway", "tekton", "tekton-triggers"}
|
||||
apps := filepath.Join(repoDir, "base", "tekton", "apps")
|
||||
backup := apps + ".maidn-preserve"
|
||||
if err := os.RemoveAll(backup); err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err := os.Stat(apps); err == nil {
|
||||
if err := os.Rename(apps, backup); err != nil {
|
||||
return err
|
||||
}
|
||||
} else if !os.IsNotExist(err) {
|
||||
return err
|
||||
}
|
||||
for _, base := range bases {
|
||||
baseDir := filepath.Join(repoDir, "base", base)
|
||||
if err := copyDir(filepath.Join(templateDir, "base", base), baseDir, true); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err := os.Stat(backup); err == nil {
|
||||
if err := os.RemoveAll(apps); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := os.Rename(backup, apps); err != nil {
|
||||
return err
|
||||
}
|
||||
} else if !os.IsNotExist(err) {
|
||||
return err
|
||||
}
|
||||
for _, base := range bases {
|
||||
baseDir := filepath.Join(repoDir, "base", base)
|
||||
if err := renderPlatformDeliveryConfig(baseDir, cfg); err != nil {
|
||||
|
|
|
|||
|
|
@ -240,6 +240,13 @@ func TestCopyAndRenderPlatformDeliveryBasesOverwritesExistingMigrationOutput(t *
|
|||
if err := os.WriteFile(customGatewayFile, []byte("custom: route\n"), 0644); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
appRegistration := filepath.Join(repoDir, "base", "tekton", "apps", "fixture.yaml")
|
||||
if err := os.MkdirAll(filepath.Dir(appRegistration), 0755); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := os.WriteFile(appRegistration, []byte("registered: fixture\n"), 0644); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
cfg := config.Config{
|
||||
Git: config.GitConfig{BaseURL: "https://git.example.test", Owner: "user-org"},
|
||||
|
|
@ -259,6 +266,10 @@ func TestCopyAndRenderPlatformDeliveryBasesOverwritesExistingMigrationOutput(t *
|
|||
if err != nil || string(content) != "custom: route\n" {
|
||||
t.Fatalf("custom gateway file was not preserved: %q, %v", content, err)
|
||||
}
|
||||
content, err = os.ReadFile(appRegistration)
|
||||
if err != nil || string(content) != "registered: fixture\n" {
|
||||
t.Fatalf("generated app registration was not preserved: %q, %v", content, err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestCopyTemplateBaseComponentsRefreshesCNPGAndPreservesGeneratedSecrets(t *testing.T) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue