mirror of https://github.com/knative/caching.git
Auto-update dependencies (#112)
Produced via: `dep ensure -update knative.dev/test-infra knative.dev/pkg` /assign mattmoor
This commit is contained in:
parent
9e4109bae8
commit
2ea8392af2
|
@ -927,7 +927,7 @@
|
|||
|
||||
[[projects]]
|
||||
branch = "master"
|
||||
digest = "1:d772e1e5cb8dee04f869b516c450bb12ca799de9add802a07c49c8c8cf0907ad"
|
||||
digest = "1:cf1f8c7dd0c71d2e26bce8889404ede818a53aff0453aa187ead7c9a48103ea9"
|
||||
name = "knative.dev/pkg"
|
||||
packages = [
|
||||
"apis",
|
||||
|
@ -946,7 +946,7 @@
|
|||
"metrics/metricskey",
|
||||
]
|
||||
pruneopts = "T"
|
||||
revision = "d02c80dc625667d793a732b019503197913fa756"
|
||||
revision = "43f0d8fdb9183d6fd95f021d2888c560d2a8c8ff"
|
||||
|
||||
[[projects]]
|
||||
branch = "master"
|
||||
|
@ -957,7 +957,7 @@
|
|||
"tools/dep-collector",
|
||||
]
|
||||
pruneopts = "UT"
|
||||
revision = "5d51ed40c38a606beaa42197961edb6d737227fc"
|
||||
revision = "f0bc0373119bd2d8f7a059d377438b64deb32ff1"
|
||||
|
||||
[[projects]]
|
||||
digest = "1:8730e0150dfb2b7e173890c8b9868e7a273082ef8e39f4940e3506a481cf895c"
|
||||
|
|
|
@ -411,7 +411,7 @@
|
|||
version = "1.0.1"
|
||||
|
||||
[[projects]]
|
||||
digest = "1:1dd0ef584fe04a3e14297c004da996de66c1816666d25836d24696bea6194a63"
|
||||
digest = "1:ba4312bc8a900105f0c5b85d23b289d594dc88af6608ce971c8696435f43ae85"
|
||||
name = "github.com/openzipkin/zipkin-go"
|
||||
packages = [
|
||||
".",
|
||||
|
@ -423,8 +423,8 @@
|
|||
"reporter/recorder",
|
||||
]
|
||||
pruneopts = "NUT"
|
||||
revision = "1277a5f30075b9c13d37775aed4f0f3b44d1a710"
|
||||
version = "v0.2.0"
|
||||
revision = "c29478e51bfb2e9c93e0e9f5e015e5993a490399"
|
||||
version = "v0.2.2"
|
||||
|
||||
[[projects]]
|
||||
digest = "1:14715f705ff5dfe0ffd6571d7d201dd8e921030f8070321a79380d8ca4ec1a24"
|
||||
|
@ -1251,14 +1251,14 @@
|
|||
|
||||
[[projects]]
|
||||
branch = "master"
|
||||
digest = "1:d65a0f4c8458b9720f97b17d6d04c9efe341298f1c3f6c37e124a6c83c716668"
|
||||
digest = "1:8009d9ea7464198279c5c1b1a760365c1f731aa88239632c08929df5b7f323f6"
|
||||
name = "knative.dev/test-infra"
|
||||
packages = [
|
||||
"scripts",
|
||||
"tools/dep-collector",
|
||||
]
|
||||
pruneopts = "UT"
|
||||
revision = "0496d5ca277c0826349264be609cb0bdf8ad5b64"
|
||||
revision = "5d51ed40c38a606beaa42197961edb6d737227fc"
|
||||
|
||||
[[projects]]
|
||||
digest = "1:8730e0150dfb2b7e173890c8b9868e7a273082ef8e39f4940e3506a481cf895c"
|
||||
|
|
|
@ -49,13 +49,11 @@ aliases:
|
|||
productivity-approvers:
|
||||
- adrcunha
|
||||
- chaodaiG
|
||||
- srinivashegde86
|
||||
productivity-reviewers:
|
||||
- adrcunha
|
||||
- chaodaiG
|
||||
- coryrc
|
||||
- Fredy-Z
|
||||
- srinivashegde86
|
||||
- chizhg
|
||||
- steuhs
|
||||
- yt3liu
|
||||
|
||||
|
|
|
@ -39,6 +39,7 @@ const (
|
|||
DefaultGKEZone = ""
|
||||
regionEnv = "E2E_CLUSTER_REGION"
|
||||
backupRegionEnv = "E2E_CLUSTER_BACKUP_REGIONS"
|
||||
defaultGKEVersion = "latest"
|
||||
)
|
||||
|
||||
var (
|
||||
|
@ -57,13 +58,35 @@ type GKEClient struct {
|
|||
|
||||
// GKERequest contains all requests collected for cluster creation
|
||||
type GKERequest struct {
|
||||
MinNodes int64
|
||||
MaxNodes int64
|
||||
NodeType string
|
||||
Region string
|
||||
Zone string
|
||||
// Project: GKE project, no default. Fall back to get project from kubeconfig
|
||||
// then gcloud config
|
||||
Project string
|
||||
|
||||
// ClusterName: custom cluster name to use. Fall back to cluster set by
|
||||
// kubeconfig, else composed as k[REPO]-cls-e2e-[BUILD_ID]
|
||||
ClusterName string
|
||||
|
||||
// MinNodes: default to 1 if not provided
|
||||
MinNodes int64
|
||||
|
||||
// MaxNodes: default to max(3, MinNodes) if not provided
|
||||
MaxNodes int64
|
||||
|
||||
// NodeType: default to n1-standard-4 if not provided
|
||||
NodeType string
|
||||
|
||||
// Region: default to regional cluster if not provided, and use default backup regions
|
||||
Region string
|
||||
|
||||
// Zone: default is none, must be provided together with region
|
||||
Zone string
|
||||
|
||||
// BackupRegions: fall back regions to try out in case of cluster creation
|
||||
// failure due to regional issue(s)
|
||||
BackupRegions []string
|
||||
Addons []string
|
||||
|
||||
// Addons: cluster addons to be added to cluster, such as istio
|
||||
Addons []string
|
||||
}
|
||||
|
||||
// GKECluster implements ClusterOperations
|
||||
|
@ -123,55 +146,50 @@ func (gsc *GKESDKClient) setAutoscaling(project, clusterName, location, nodepool
|
|||
return gsc.Service.Projects.Locations.Clusters.NodePools.SetAutoscaling(parent, rb).Do()
|
||||
}
|
||||
|
||||
// Setup sets up a GKECluster client.
|
||||
// minNodes: default to 1 if not provided
|
||||
// maxNodes: default to 3 if not provided
|
||||
// nodeType: default to n1-standard-4 if not provided
|
||||
// region: default to regional cluster if not provided, and use default backup regions
|
||||
// zone: default is none, must be provided together with region
|
||||
// project: no default
|
||||
// addons: cluster addons to be added to cluster
|
||||
func (gs *GKEClient) Setup(minNodes *int64, maxNodes *int64, nodeType *string, region *string, zone *string, project *string, addons []string) ClusterOperations {
|
||||
gc := &GKECluster{
|
||||
Request: &GKERequest{
|
||||
MinNodes: DefaultGKEMinNodes,
|
||||
MaxNodes: DefaultGKEMaxNodes,
|
||||
NodeType: DefaultGKENodeType,
|
||||
Region: DefaultGKERegion,
|
||||
Zone: DefaultGKEZone,
|
||||
BackupRegions: DefaultGKEBackupRegions,
|
||||
Addons: addons,
|
||||
},
|
||||
}
|
||||
// Setup sets up a GKECluster client, takes GEKRequest as parameter and applies
|
||||
// all defaults if not defined.
|
||||
func (gs *GKEClient) Setup(r GKERequest) ClusterOperations {
|
||||
gc := &GKECluster{}
|
||||
|
||||
if project != nil { // use provided project and create cluster
|
||||
gc.Project = project
|
||||
if r.Project != "" { // use provided project and create cluster
|
||||
gc.Project = &r.Project
|
||||
gc.NeedCleanup = true
|
||||
}
|
||||
|
||||
if minNodes != nil {
|
||||
gc.Request.MinNodes = *minNodes
|
||||
if r.MinNodes == 0 {
|
||||
r.MinNodes = DefaultGKEMinNodes
|
||||
}
|
||||
if maxNodes != nil {
|
||||
gc.Request.MaxNodes = *maxNodes
|
||||
if r.MaxNodes == 0 {
|
||||
r.MaxNodes = DefaultGKEMaxNodes
|
||||
// We don't want MaxNodes < MinNodes
|
||||
if r.MinNodes > r.MaxNodes {
|
||||
r.MaxNodes = r.MinNodes
|
||||
}
|
||||
}
|
||||
if nodeType != nil {
|
||||
gc.Request.NodeType = *nodeType
|
||||
if r.NodeType == "" {
|
||||
r.NodeType = DefaultGKENodeType
|
||||
}
|
||||
if region != nil {
|
||||
gc.Request.Region = *region
|
||||
// Only use default backup regions if region is not provided
|
||||
if len(r.BackupRegions) == 0 && r.Region == "" {
|
||||
r.BackupRegions = DefaultGKEBackupRegions
|
||||
if common.GetOSEnv(backupRegionEnv) != "" {
|
||||
r.BackupRegions = strings.Split(common.GetOSEnv(backupRegionEnv), " ")
|
||||
}
|
||||
}
|
||||
if common.GetOSEnv(regionEnv) != "" {
|
||||
gc.Request.Region = common.GetOSEnv(regionEnv)
|
||||
if r.Region == "" {
|
||||
r.Region = DefaultGKERegion
|
||||
if common.GetOSEnv(regionEnv) != "" {
|
||||
r.Region = common.GetOSEnv(regionEnv)
|
||||
}
|
||||
}
|
||||
if common.GetOSEnv(backupRegionEnv) != "" {
|
||||
gc.Request.BackupRegions = strings.Split(common.GetOSEnv(backupRegionEnv), " ")
|
||||
}
|
||||
if zone != nil {
|
||||
gc.Request.Zone = *zone
|
||||
gc.Request.BackupRegions = make([]string, 0)
|
||||
if r.Zone == "" {
|
||||
r.Zone = DefaultGKEZone
|
||||
} else { // No backupregions if zone is provided
|
||||
r.BackupRegions = make([]string, 0)
|
||||
}
|
||||
|
||||
gc.Request = &r
|
||||
|
||||
ctx := context.Background()
|
||||
c, err := google.DefaultClient(ctx, container.CloudPlatformScope)
|
||||
if err != nil {
|
||||
|
@ -189,8 +207,8 @@ func (gs *GKEClient) Setup(minNodes *int64, maxNodes *int64, nodeType *string, r
|
|||
return gc
|
||||
}
|
||||
|
||||
// Initialize sets up GKE SDK client, checks environment for cluster and
|
||||
// projects to decide whether use existing cluster/project or creating new ones.
|
||||
// Initialize checks environment for cluster and projects to decide whether using
|
||||
// existing cluster/project or creating new ones.
|
||||
func (gc *GKECluster) Initialize() error {
|
||||
// Try obtain project name via `kubectl`, `gcloud`
|
||||
if gc.Project == nil {
|
||||
|
@ -229,15 +247,20 @@ func (gc *GKECluster) Provider() string {
|
|||
// Region or Zone is provided then there is no retries
|
||||
func (gc *GKECluster) Acquire() error {
|
||||
gc.ensureProtected()
|
||||
var clusterName string
|
||||
var err error
|
||||
// Check if using existing cluster
|
||||
if gc.Cluster != nil {
|
||||
return nil
|
||||
}
|
||||
// Perform GKE specific cluster creation logics
|
||||
clusterName, err := getResourceName(ClusterResource)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed getting cluster name: '%v'", err)
|
||||
if gc.Request.ClusterName == "" {
|
||||
clusterName, err = getResourceName(ClusterResource)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed getting cluster name: '%v'", err)
|
||||
}
|
||||
} else {
|
||||
clusterName = gc.Request.ClusterName
|
||||
}
|
||||
|
||||
regions := []string{gc.Request.Region}
|
||||
|
@ -260,6 +283,9 @@ func (gc *GKECluster) Acquire() error {
|
|||
rb := &container.CreateClusterRequest{
|
||||
Cluster: &container.Cluster{
|
||||
Name: clusterName,
|
||||
// The default cluster version is not latest, has to explicitly
|
||||
// set it as "latest"
|
||||
InitialClusterVersion: defaultGKEVersion,
|
||||
// Installing addons after cluster creation takes at least 5
|
||||
// minutes, so install addons as part of cluster creation, which
|
||||
// doesn't seem to add much time on top of cluster creation
|
||||
|
|
Loading…
Reference in New Issue