Documentation ¶
Index ¶
- Constants
- Variables
- func AddStream(js nats.JetStreamContext, streamNames ...string) error
- func AppendErrorString(errs []string, err error) []string
- func AutoScale(dat map[string]interface{}) (bool, error)
- func BuildDeployedAppName(appName string, environmentName string) string
- func BuildDevtronBomUrl(bomUrl string, version string) string
- func CheckForMissingFiles(chartLocation string) error
- func Close(c Closer, logger *zap.SugaredLogger)
- func CompareLimitsRequests(dat map[string]interface{}, chartVersion string) (bool, error)
- func ComputeHash(template *v1.PodTemplateSpec, collisionCount *int32) string
- func ContainsString(list []string, element string) bool
- func CpuToNumber(cpu string) (int64, error)
- func DeepHashObject(hasher hash.Hash, objectToWrite interface{})
- func ExtractChartVersion(chartVersion string) (int, int, error)
- func ExtractTarGz(gzipStream io.Reader, chartDir string) error
- func Generate(size int) string
- func GetClientIP(r *http.Request) string
- func GetErrorOrNil(errs []string) error
- func GetStreamSubjects(streamName string) []string
- func HttpRequest(url string) (map[string]interface{}, error)
- func Int() int
- func Int63nRange(min, max int64) int64
- func InterfaceToMapAdapter(resp interface{}) map[string]interface{}
- func Intn(max int) int
- func IntnRange(min, max int) int
- func MemoryToNumber(memory string) (int64, error)
- func ParseFloat(str string) (float64, error)
- func Perm(n int) []int
- func ReadFromUrlWithRetry(url string) ([]byte, error)
- func SafeEncodeString(s string) string
- func Seed(seed int64)
- func String(n int) string
- func Tprintf(tmpl string, data interface{}) (string, error)
- type Closer
- type CpuChecker
- type CustomFormatCheckers
- type GlobalEnvVariables
- type MemoryChecker
- type ServerVersion
Constants ¶
const ( KubernetesSecret string = "KubernetesSecret" AWSSecretsManager string = "AWSSecretsManager" AWSSystemManager string = "AWSSystemManager" HashiCorpVault string = "HashiCorpVault" KubernetesExternalSecret string = "KubernetesExternalSecret" ConfigMapSecretUsageTypeEnvironment string = "environment" ConfigMapSecretUsageTypeVolume string = "volume" YamlSeparator string = "---\n" )
const ( CI_RUNNER_STREAM string = "CI-RUNNER" ORCHESTRATOR_STREAM string = "ORCHESTRATOR" KUBEWATCH_STREAM string = "KUBEWATCH" GIT_SENSOR_STREAM string = "GIT-SENSOR" BULK_APPSTORE_DEPLOY_TOPIC string = "APP-STORE.BULK-DEPLOY" BULK_APPSTORE_DEPLOY_GROUP string = "APP-STORE-BULK-DEPLOY-GROUP-1" BULK_APPSTORE_DEPLOY_DURABLE string = "APP-STORE-BULK-DEPLOY-DURABLE-1" CD_STAGE_COMPLETE_TOPIC string = "CD-STAGE-COMPLETE" CD_COMPLETE_GROUP string = "CD-COMPLETE_GROUP-1" CD_COMPLETE_DURABLE string = "CD-COMPLETE_DURABLE-1" BULK_DEPLOY_TOPIC string = "CD.BULK" BULK_HIBERNATE_TOPIC string = "CD.BULK-HIBERNATE" BULK_DEPLOY_GROUP string = "CD.BULK.GROUP-1" BULK_HIBERNATE_GROUP string = "CD.BULK-HIBERNATE.GROUP-1" BULK_DEPLOY_DURABLE string = "CD-BULK-DURABLE-1" BULK_HIBERNATE_DURABLE string = "CD-BULK-HIBERNATE-DURABLE-1" CI_COMPLETE_TOPIC string = "CI-COMPLETE" CI_COMPLETE_GROUP string = "CI-COMPLETE_GROUP-1" CI_COMPLETE_DURABLE string = "CI-COMPLETE_DURABLE-1" APPLICATION_STATUS_UPDATE_TOPIC string = "APPLICATION_STATUS_UPDATE" APPLICATION_STATUS_UPDATE_GROUP string = "APPLICATION_STATUS_UPDATE_GROUP-1" APPLICATION_STATUS_UPDATE_DURABLE string = "APPLICATION_STATUS_UPDATE_DURABLE-1" CRON_EVENTS string = "CRON_EVENTS" CRON_EVENTS_GROUP string = "CRON_EVENTS_GROUP-2" CRON_EVENTS_DURABLE string = "CRON_EVENTS_DURABLE-2" WORKFLOW_STATUS_UPDATE_TOPIC string = "WORKFLOW_STATUS_UPDATE" WORKFLOW_STATUS_UPDATE_GROUP string = "WORKFLOW_STATUS_UPDATE_GROUP-1" WORKFLOW_STATUS_UPDATE_DURABLE string = "WORKFLOW_STATUS_UPDATE_DURABLE-1" CD_WORKFLOW_STATUS_UPDATE string = "CD_WORKFLOW_STATUS_UPDATE" CD_WORKFLOW_STATUS_UPDATE_GROUP string = "CD_WORKFLOW_STATUS_UPDATE_GROUP-1" CD_WORKFLOW_STATUS_UPDATE_DURABLE string = "CD_WORKFLOW_STATUS_UPDATE_DURABLE-1" NEW_CI_MATERIAL_TOPIC string = "NEW-CI-MATERIAL" NEW_CI_MATERIAL_TOPIC_GROUP string = "NEW-CI-MATERIAL_GROUP-1" NEW_CI_MATERIAL_TOPIC_DURABLE string = "NEW-CI-MATERIAL_DURABLE-1" CD_SUCCESS string = "CD.TRIGGER" WEBHOOK_EVENT_TOPIC string = "WEBHOOK_EVENT" )
const ( CpuRegex = "(^\\d*\\.?\\d+e?\\d*)(m?)$" MemoryRegex = "(^\\d*\\.?\\d+e?\\d*)(Ei?|Pi?|Ti?|Gi?|Mi?|Ki?|$)$" )
Variables ¶
var (
CpuUnitChecker, _ = regexp.Compile(CpuRegex)
MemoryUnitChecker, _ = regexp.Compile(MemoryRegex)
)
var ( GitCommit = "" BuildTime = "" ServerMode = "" SERVER_MODE_FULL = "FULL" SERVER_MODE_HYPERION = "EA_ONLY" )
var CI_RUNNER_SUBJECTS = []string{CI_COMPLETE_TOPIC, CD_STAGE_COMPLETE_TOPIC}
var GIT_SENSOR_SUBJECTS = []string{NEW_CI_MATERIAL_TOPIC}
var KUBEWATCH_SUBJECTS = []string{APPLICATION_STATUS_UPDATE_TOPIC, CRON_EVENTS, WORKFLOW_STATUS_UPDATE_TOPIC, CD_WORKFLOW_STATUS_UPDATE}
var ORCHESTRATOR_SUBJECTS = []string{BULK_APPSTORE_DEPLOY_TOPIC, BULK_DEPLOY_TOPIC, BULK_HIBERNATE_TOPIC, CD_SUCCESS, WEBHOOK_EVENT_TOPIC}
Functions ¶
func AppendErrorString ¶
func BuildDeployedAppName ¶ added in v0.4.15
func BuildDevtronBomUrl ¶ added in v0.4.1
func CheckForMissingFiles ¶ added in v0.3.22
func Close ¶
func Close(c Closer, logger *zap.SugaredLogger)
func CompareLimitsRequests ¶ added in v0.2.37
func ComputeHash ¶
func ComputeHash(template *v1.PodTemplateSpec, collisionCount *int32) string
ComputeHash returns a hash value calculated from pod template and a collisionCount to avoid hash collision. The hash will be safe encoded to avoid bad words.
func ContainsString ¶
func CpuToNumber ¶ added in v0.2.37
func DeepHashObject ¶
DeepHashObject writes specified object to hash using the spew library which follows pointers and prints actual values of the nested objects ensuring the hash does not change when a pointer changes.
func GetClientIP ¶ added in v0.4.11
GetClientIP gets a requests IP address by reading off the forwarded-for header (for proxies) and falls back to use the remote address.
func GetErrorOrNil ¶
func GetStreamSubjects ¶ added in v0.4.0
func HttpRequest ¶ added in v0.2.18
func Int63nRange ¶
IntnRange generates an int64 integer in range [min,max). By design this should panic if input is invalid, <= 0.
func InterfaceToMapAdapter ¶ added in v0.4.14
func InterfaceToMapAdapter(resp interface{}) map[string]interface{}
InterfaceToMapAdapter it will convert any golang struct into map
func Intn ¶
Intn generates an integer in range [0,max). By design this should panic if input is invalid, <= 0.
func IntnRange ¶
IntnRange generates an integer in range [min,max). By design this should panic if input is invalid, <= 0.
func MemoryToNumber ¶ added in v0.2.37
func ParseFloat ¶ added in v0.2.37
func Perm ¶
Perm returns, as a slice of n ints, a pseudo-random permutation of the integers [0,n) from the default Source.
func ReadFromUrlWithRetry ¶ added in v0.4.1
func SafeEncodeString ¶
SafeEncodeString encodes s using the same characters as rand.String. This reduces the chances of bad words and ensures that strings generated from hash functions appear consistent throughout the API.
func String ¶
String generates a random alphanumeric string, without vowels, which is n characters long. This will panic if n is less than zero. How the random string is created: - we generate random int63's - from each int63, we are extracting multiple random letters by bit-shifting and masking - if some index is out of range of alphanums we neglect it (unlikely to happen multiple times in a row)
Types ¶
type CpuChecker ¶ added in v0.2.37
type CpuChecker struct{}
func (CpuChecker) IsFormat ¶ added in v0.2.37
func (f CpuChecker) IsFormat(input interface{}) bool
type CustomFormatCheckers ¶ added in v0.2.37
type CustomFormatCheckers struct { }
func NewGoJsonSchemaCustomFormatChecker ¶ added in v0.2.37
func NewGoJsonSchemaCustomFormatChecker() *CustomFormatCheckers
func (CustomFormatCheckers) AddCheckers ¶ added in v0.2.37
func (c CustomFormatCheckers) AddCheckers()
type GlobalEnvVariables ¶ added in v0.3.17
type GlobalEnvVariables struct {
GitOpsRepoPrefix string `env:"GITOPS_REPO_PREFIX" envDefault:""`
}
func GetGlobalEnvVariables ¶ added in v0.3.17
func GetGlobalEnvVariables() (*GlobalEnvVariables, error)
type MemoryChecker ¶ added in v0.2.37
type MemoryChecker struct{}
func (MemoryChecker) IsFormat ¶ added in v0.2.37
func (f MemoryChecker) IsFormat(input interface{}) bool
type ServerVersion ¶ added in v0.3.9
type ServerVersion struct { GitCommit string `json:"gitCommit"` BuildTime string `json:"buildTime"` ServerMode string `json:"serverMode"` }
func GetDevtronVersion ¶ added in v0.3.9
func GetDevtronVersion() *ServerVersion