make flux bootstrap and install generation more consistent

Signed-off-by: Jack Evans <jack.evans1@ibm.com>
pull/2066/head
Jack Evans 3 years ago
parent 83dc3e6093
commit 923a5882de
No known key found for this signature in database
GPG Key ID: 3BB5952E01B16BD7

@ -21,7 +21,6 @@ import (
"fmt" "fmt"
"os" "os"
"path/filepath" "path/filepath"
"strings"
"time" "time"
"github.com/spf13/cobra" "github.com/spf13/cobra"
@ -177,9 +176,6 @@ func installCmdRun(cmd *cobra.Command, args []string) error {
} }
if installArgs.export { if installArgs.export {
fmt.Println("---")
fmt.Println("# Flux version:", installArgs.version)
fmt.Println("# Components:", strings.Join(components, ","))
fmt.Print(manifest.Content) fmt.Print(manifest.Content)
fmt.Println("---") fmt.Println("---")
return nil return nil

@ -84,7 +84,7 @@ func Generate(options Options, manifestsBase string) (*manifestgen.Manifest, err
return &manifestgen.Manifest{ return &manifestgen.Manifest{
Path: path.Join(options.TargetPath, options.Namespace, options.ManifestFile), Path: path.Join(options.TargetPath, options.Namespace, options.ManifestFile),
Content: string(content), Content: fmt.Sprintf("%s\n%s", GetGenWarning(options), string(content)),
}, nil }, nil
} }
@ -142,3 +142,11 @@ func ExistingVersion(version string) (bool, error) {
return false, fmt.Errorf("GitHub API returned an unexpected status code (%d)", res.StatusCode) return false, fmt.Errorf("GitHub API returned an unexpected status code (%d)", res.StatusCode)
} }
} }
// GetGenWarning generates a consistent generation warning in the install and bootstrap case in the following format:
// # This manifest was generated by flux. DO NOT EDIT.
// # Flux version: v0.21.1
// # Components: source-controller,kustomize-controller,helm-controller,notification-controller,image-reflector-controller,image-automation-controller
func GetGenWarning(options Options) string {
return fmt.Sprintf("---\n%s\n# Flux Version: %s\n# Components: %s", manifestgen.GenWarning, options.Version, strings.Join(options.Components, ","))
}

@ -41,5 +41,10 @@ func TestGenerate(t *testing.T) {
t.Errorf("toleration key '%s' not found", opts.TolerationKeys[0]) t.Errorf("toleration key '%s' not found", opts.TolerationKeys[0])
} }
warning := GetGenWarning(opts)
if !strings.HasPrefix(output.Content, warning) {
t.Errorf("Generation warning '%s' not found", warning)
}
fmt.Println(output) fmt.Println(output)
} }

@ -24,7 +24,7 @@ import (
securejoin "github.com/cyphar/filepath-securejoin" securejoin "github.com/cyphar/filepath-securejoin"
) )
const GenWarning = "# This manifest was generated by flux bootstrap. DO NOT EDIT." const GenWarning = "# This manifest was generated by flux. DO NOT EDIT."
// Manifest holds the data of a multi-doc YAML // Manifest holds the data of a multi-doc YAML
type Manifest struct { type Manifest struct {

Loading…
Cancel
Save