Documentation ¶
Overview ¶
Copyright (C) 2021-2023, Kubefirst
This program is licensed under MIT. See the LICENSE file for more details.
Copyright (C) 2021-2023, Kubefirst ¶
This program is licensed under MIT. See the LICENSE file for more details.
Copyright (C) 2021-2023, Kubefirst ¶
This program is licensed under MIT. See the LICENSE file for more details.
Copyright (C) 2021-2023, Kubefirst ¶
This program is licensed under MIT. See the LICENSE file for more details.
Copyright (C) 2021-2023, Kubefirst ¶
This program is licensed under MIT. See the LICENSE file for more details.
Copyright (C) 2021-2023, Kubefirst ¶
This program is licensed under MIT. See the LICENSE file for more details.
Copyright (C) 2021-2023, Kubefirst ¶
This program is licensed under MIT. See the LICENSE file for more details.
Copyright (C) 2021-2023, Kubefirst ¶
This program is licensed under MIT. See the LICENSE file for more details.
Copyright (C) 2021-2023, Kubefirst ¶
This program is licensed under MIT. See the LICENSE file for more details.
Index ¶
- Constants
- Variables
- func AddK3DSecrets(...) error
- func AdjustGitopsRepo(cloudProvider, clusterName, clusterType, gitopsRepoDir, gitProvider string, ...) error
- func AdjustMetaphorRepo(destinationMetaphorRepoGitURL, gitopsRepoDir, gitProvider, k1Dir string) error
- func ClusterCreate(clusterName string, k1Dir string, k3dClient string, kubeconfig string) error
- func ClusterCreateConsoleAPI(clusterName string, k1Dir string, k3dClient string, kubeconfig string) error
- func DeleteK3dCluster(clusterName, k1Dir, k3dClient string) error
- func DownloadTools(clusterName string, gitProvider string, gitOwner string, toolsDir string, ...) error
- func GenerateSingleTLSSecret(clientset kubernetes.Interface, config Config, app string, ns string) error
- func GenerateTLSSecrets(clientset kubernetes.Interface, config Config) error
- func GetGithubTerraformEnvs(config *Config, envs map[string]string) map[string]string
- func GetUsersTerraformEnvs(config *Config, envs map[string]string) map[string]string
- func GetVaultTerraformEnvs(config *Config, envs map[string]string) map[string]string
- func PostRunPrepareGitopsRepository(gitopsDir string) error
- func PrepareGitRepositories(gitProvider string, clusterName string, clusterType string, ...) error
- func ResolveMinioLocal(path string) error
- type Config
- type GithubTerraformEnvs
- type GitopsDirectoryValues
- type MetaphorTokenValues
Constants ¶
const ( ArgocdPortForwardURL = "http://localhost:8080" CloudProvider = "k3d" DomainName = "kubefirst.dev" GithubHost = "github.com" GitlabHost = "gitlab.com" K3dVersion = "v5.4.6" KubectlVersion = "v1.25.7" LocalhostARCH = runtime.GOARCH LocalhostOS = runtime.GOOS MkCertVersion = "v1.4.4" TerraformVersion = "1.3.8" VaultPortForwardURL = "http://localhost:8200" )
Variables ¶
var ( ArgocdURL = fmt.Sprintf("https://argocd.%s", DomainName) ArgoWorkflowsURL = fmt.Sprintf("https://argo.%s", DomainName) AtlantisURL = fmt.Sprintf("https://atlantis.%s", DomainName) ChartMuseumURL = fmt.Sprintf("https://chartmuseum.%s", DomainName) KubefirstConsoleURL = fmt.Sprintf("https://kubefirst.%s", DomainName) MetaphorDevelopmentURL = fmt.Sprintf("https://metaphor-devlopment.%s", DomainName) MetaphorStagingURL = fmt.Sprintf("https://metaphor-staging.%s", DomainName) MetaphorProductionURL = fmt.Sprintf("https://metaphor-production.%s", DomainName) VaultURL = fmt.Sprintf("https://vault.%s", DomainName) )
Functions ¶
func AddK3DSecrets ¶
func AdjustGitopsRepo ¶
func AdjustMetaphorRepo ¶
func ClusterCreate ¶
ClusterCreate create an k3d cluster
func ClusterCreateConsoleAPI ¶
func ClusterCreateConsoleAPI(clusterName string, k1Dir string, k3dClient string, kubeconfig string) error
ClusterCreate create an k3d cluster for use with console and api
func DeleteK3dCluster ¶
DeleteK3dCluster delete a k3d cluster
func DownloadTools ¶
func GenerateSingleTLSSecret ¶
func GenerateSingleTLSSecret( clientset kubernetes.Interface, config Config, app string, ns string, ) error
GenerateSingleTLSSecret creates a single certificate for a host for k3d
func GenerateTLSSecrets ¶
func GenerateTLSSecrets(clientset kubernetes.Interface, config Config) error
GenerateTLSSecrets generates default certificates for k3d
func GetGithubTerraformEnvs ¶
func GetUsersTerraformEnvs ¶
func GetVaultTerraformEnvs ¶
func PrepareGitRepositories ¶
func PrepareGitRepositories( gitProvider string, clusterName string, clusterType string, destinationGitopsRepoURL string, gitopsDir string, gitopsTemplateBranch string, gitopsTemplateURL string, destinationMetaphorRepoURL string, k1Dir string, gitopsTokens *GitopsDirectoryValues, metaphorDir string, metaphorTokens *MetaphorTokenValues, gitProtocol string, removeAtlantis bool, ) error
should tokens be a *GitopsDirectoryValues? does it matter
func ResolveMinioLocal ¶
ResolveMinioLocal allows resolving minio over a local port forward useful when destroying a local lucster
Types ¶
type Config ¶
type Config struct { GithubToken string GitlabToken string DestinationGitopsRepoGitURL string DestinationGitopsRepoURL string DestinationMetaphorRepoURL string DestinationMetaphorRepoGitURL string DestinationGitopsRepoHTTPSURL string DestinationMetaphorRepoHTTPSURL string GitopsDir string GitProvider string GitProtocol string K1Dir string K3dClient string Kubeconfig string KubectlClient string KubefirstConfig string MetaphorDir string MkCertClient string MkCertPemDir string MkCertSSLSecretDir string TerraformClient string ToolsDir string }
type GithubTerraformEnvs ¶
type GitopsDirectoryValues ¶
type GitopsDirectoryValues struct { GithubOwner string GithubUser string GitlabOwner string GitlabOwnerGroupID int GitlabUser string GitopsRepoGitURL string GitopsRepoHTTPSURL string DomainName string AtlantisAllowList string AlertsEmail string ClusterName string ClusterType string GithubHost string GitlabHost string ArgoWorkflowsIngressURL string VaultIngressURL string ArgocdIngressURL string AtlantisIngressURL string MetaphorDevelopmentIngressURL string MetaphorStagingIngressURL string MetaphorProductionIngressURL string GitopsRepoURL string KubefirstVersion string KubefirstTeam string UseTelemetry string GitProvider string CloudProvider string ClusterID string KubeconfigPath string }