Skip to content

Commit 68d8154

Browse files
Google APIscopybara-github
authored andcommitted
feat: add support for different Pod selector labels when doing canaries
fix!: make changes to an API that is disabled on the server, but whose client libraries were prematurely published PiperOrigin-RevId: 655923660
1 parent a91d1a3 commit 68d8154

2 files changed

Lines changed: 19 additions & 57 deletions

File tree

google/cloud/deploy/v1/BUILD.bazel

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -369,6 +369,7 @@ load(
369369

370370
csharp_proto_library(
371371
name = "deploy_csharp_proto",
372+
extra_opts = [],
372373
deps = [":deploy_proto"],
373374
)
374375

google/cloud/deploy/v1/cloud_deploy.proto

Lines changed: 18 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -807,6 +807,10 @@ message KubernetesConfig {
807807
// cutback time.
808808
google.protobuf.Duration stable_cutback_duration = 5
809809
[(google.api.field_behavior) = OPTIONAL];
810+
811+
// Optional. The label to use when selecting Pods for the Deployment and
812+
// Service resources. This label must already be present in both resources.
813+
string pod_selector_label = 6 [(google.api.field_behavior) = OPTIONAL];
810814
}
811815

812816
// Information about the Kubernetes Service networking configuration.
@@ -824,6 +828,10 @@ message KubernetesConfig {
824828
// Deployment has on the cluster.
825829
bool disable_pod_overprovisioning = 3
826830
[(google.api.field_behavior) = OPTIONAL];
831+
832+
// Optional. The label to use when selecting Pods for the Deployment
833+
// resource. This label must already be present in the Deployment.
834+
string pod_selector_label = 4 [(google.api.field_behavior) = OPTIONAL];
827835
}
828836

829837
// The service definition configuration.
@@ -4134,14 +4142,6 @@ message RepairRolloutRule {
41344142
// `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`.
41354143
string id = 1 [(google.api.field_behavior) = REQUIRED];
41364144

4137-
// Optional. Phases within which jobs are subject to automatic repair actions
4138-
// on failure. Proceeds only after phase name matched any one in the list, or
4139-
// for all phases if unspecified. This value must consist of lower-case
4140-
// letters, numbers, and hyphens, start with a letter and end with a letter or
4141-
// a number, and have a max length of 63 characters. In other words, it must
4142-
// match the following regex: `^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$`.
4143-
repeated string source_phases = 2 [(google.api.field_behavior) = OPTIONAL];
4144-
41454145
// Optional. Jobs to repair. Proceeds only after job name matched any one in
41464146
// the list, or for all jobs if unspecified or empty. The phase that includes
41474147
// the job must match the phase ID specified in `source_phase`. This value
@@ -4151,48 +4151,11 @@ message RepairRolloutRule {
41514151
// `^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$`.
41524152
repeated string jobs = 3 [(google.api.field_behavior) = OPTIONAL];
41534153

4154-
// Required. Defines the types of automatic repair actions for failed jobs.
4155-
repeated RepairMode repair_modes = 4 [(google.api.field_behavior) = REQUIRED];
4156-
41574154
// Output only. Information around the state of the 'Automation' rule.
41584155
AutomationRuleCondition condition = 6
41594156
[(google.api.field_behavior) = OUTPUT_ONLY];
41604157
}
41614158

4162-
// Configuration of the repair action.
4163-
message RepairMode {
4164-
// The repair action to perform.
4165-
oneof mode {
4166-
// Optional. Retries a failed job.
4167-
Retry retry = 1 [(google.api.field_behavior) = OPTIONAL];
4168-
4169-
// Optional. Rolls back a `Rollout`.
4170-
Rollback rollback = 2 [(google.api.field_behavior) = OPTIONAL];
4171-
}
4172-
}
4173-
4174-
// Retries the failed job.
4175-
message Retry {
4176-
// Required. Total number of retries. Retry is skipped if set to 0; The
4177-
// minimum value is 1, and the maximum value is 10.
4178-
int64 attempts = 1 [(google.api.field_behavior) = REQUIRED];
4179-
4180-
// Optional. How long to wait for the first retry. Default is 0, and the
4181-
// maximum value is 14d.
4182-
google.protobuf.Duration wait = 2 [(google.api.field_behavior) = OPTIONAL];
4183-
4184-
// Optional. The pattern of how wait time will be increased. Default is
4185-
// linear. Backoff mode will be ignored if `wait` is 0.
4186-
BackoffMode backoff_mode = 3 [(google.api.field_behavior) = OPTIONAL];
4187-
}
4188-
4189-
// Rolls back a `Rollout`.
4190-
message Rollback {
4191-
// Optional. The starting phase ID for the `Rollout`. If unspecified, the
4192-
// `Rollout` will start in the stable phase.
4193-
string destination_phase = 1 [(google.api.field_behavior) = OPTIONAL];
4194-
}
4195-
41964159
// `AutomationRuleCondition` contains conditions relevant to an
41974160
// `Automation` rule.
41984161
message AutomationRuleCondition {
@@ -4522,19 +4485,23 @@ message RepairRolloutOperation {
45224485
// Output only. The name of the rollout that initiates the `AutomationRun`.
45234486
string rollout = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
45244487

4525-
// Output only. The index of the current repair action in the repair sequence.
4526-
int64 current_repair_mode_index = 2
4527-
[(google.api.field_behavior) = OUTPUT_ONLY];
4528-
45294488
// Output only. Records of the repair attempts. Each repair phase may have
45304489
// multiple retry attempts or single rollback attempt.
45314490
repeated RepairPhase repair_phases = 3
45324491
[(google.api.field_behavior) = OUTPUT_ONLY];
4492+
4493+
// Output only. The phase ID of the phase that includes the job being
4494+
// repaired.
4495+
string phase_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
4496+
4497+
// Output only. The job ID for the Job to repair.
4498+
string job_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
45334499
}
45344500

45354501
// RepairPhase tracks the repair attempts that have been made for
45364502
// each `RepairPhaseConfig` specified in the `Automation` resource.
45374503
message RepairPhase {
4504+
// The `RepairPhase` type and the information for that type.
45384505
oneof repair_phase {
45394506
// Output only. Records of the retry attempts for retry repair mode.
45404507
RetryPhase retry = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
@@ -4554,12 +4521,6 @@ message RetryPhase {
45544521
// calculated.
45554522
BackoffMode backoff_mode = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
45564523

4557-
// Output only. The phase ID of the phase that includes the job being retried.
4558-
string phase_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
4559-
4560-
// Output only. The job ID for the Job to retry.
4561-
string job_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
4562-
45634524
// Output only. Detail of a retry action.
45644525
repeated RetryAttempt attempts = 5
45654526
[(google.api.field_behavior) = OUTPUT_ONLY];
@@ -4715,6 +4676,6 @@ enum RepairState {
47154676
// The `repair` action is pending.
47164677
REPAIR_STATE_PENDING = 5;
47174678

4718-
// The `repair` action was skipped.
4719-
REPAIR_STATE_SKIPPED = 6;
4679+
// The `repair` action was aborted.
4680+
REPAIR_STATE_ABORTED = 7;
47204681
}

0 commit comments

Comments
 (0)