configs

package
v0.3.15 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 2, 2023 License: MIT Imports: 9 Imported by: 3

Documentation

Overview

Copyright (C) 2021-2023, Kubefirst

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

Index

Constants

View Source
const DefaultK1Version = "development"

Variables

View Source
var K1Version = DefaultK1Version

K1Version is used on version command. The value is dynamically updated on build time via ldflag. Built Kubefirst versions will follow semver value like 1.9.0, when not using the built version, "development" is used.

Functions

func CheckKubefirstConfigFile

func CheckKubefirstConfigFile(config *Config) error

CheckKubefirstConfigFile validate if ~/.kubefirst file is ready to be consumed.

func CheckKubefirstDir

func CheckKubefirstDir(config *Config) error

CheckKubefirstDir validate if ~/.k1 directory is ready to be used

func InitializeViperConfig

func InitializeViperConfig(cmd *cobra.Command) error

Types

type Config

type Config struct {
	InstallerEmail    string
	LocalOs           string
	LocalArchitecture string
	HomePath          string

	ClusterName             string `env:"CLUSTER_NAME"`
	GitopsRepoPath          string
	KubefirstLogPath        string `env:"KUBEFIRST_LOG_PATH" envDefault:"logs"`
	KubefirstConfigFileName string
	KubefirstConfigFilePath string
	K1FolderPath            string
	K1ToolsPath             string
	KubeConfigPath          string
	KubeConfigFolder        string
	GitopsLocalRepoPath     string

	K3dPath            string
	MkCertPath         string
	MkCertPemFilesPath string

	CertsPath string

	HelmClientPath string
	HelmVersion    string

	K3dClientPath string

	KubectlVersionM1  string
	KubectlClientPath string

	NgrokVersion    string
	NgrokClientPath string

	TerraformClientPath string
	TerraformVersion    string

	// todo remove cloud specific values from generic config
	AwsRegion      string `env:"AWS_REGION"`
	HostedZoneName string `env:"HOSTED_ZONE_NAME"`
	K3dVersion     string
	MkCertVersion  string
	KubectlVersion string `env:"KUBECTL_VERSION" envDefault:"v1.22.0"`

	ArgoCDChartHelmVersion   string
	ArgoCDInitValuesYamlPath string

	ArgocdLocalURL   string
	ArgocdIngressURL string

	ArgoWorkflowsLocalURL   string
	ArgoWorkflowsIngressURL string

	AtlantisLocalURL   string
	AtlantisIngressURL string

	ChartmuseumLocalURL   string
	ChartmuseumIngressURL string

	MetaphorDevelopmentLocalURL string
	MetaphorStagingLocalURL     string
	MetaphorProductionLocalURL  string

	MetaphorFrontendDevelopmentLocalURL string
	MetaphorFrontendStagingLocalURL     string
	MetaphorFrontendProductionLocalURL  string

	MetaphorGoDevelopmentLocalURL string
	MetaphorGoStagingLocalURL     string
	MetaphorGoProductionLocalURL  string

	VaultLocalURL   string
	VaultIngressURL string

	TerraformAwsEntrypointPath    string
	TerraformGithubEntrypointPath string
	TerraformUsersEntrypointPath  string
	TerraformVaultEntrypointPath  string
	GithubToken                   string `env:"GITHUB_TOKEN"`
	CivoToken                     string `env:"CIVO_TOKEN"`

	// these
	GitopsDir                   string
	DestinationGitopsRepoGitURL string
	K1Dir                       string
}

Config host application configuration todo: some of these values can be moved to the .env

func ReadConfig

func ReadConfig() *Config

ReadConfig - load default values from kubefirst installer

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL