1// Copyright 2020 Google LLC. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5// Code generated file. DO NOT EDIT. 6 7// Package replicapoolupdater provides access to the Google Compute Engine Instance Group Updater API. 8// 9// For product documentation, see: https://cloud.google.com/compute/docs/instance-groups/manager/#applying_rolling_updates_using_the_updater_service 10// 11// Creating a client 12// 13// Usage example: 14// 15// import "google.golang.org/api/replicapoolupdater/v1beta1" 16// ... 17// ctx := context.Background() 18// replicapoolupdaterService, err := replicapoolupdater.NewService(ctx) 19// 20// In this example, Google Application Default Credentials are used for authentication. 21// 22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. 23// 24// Other authentication options 25// 26// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes: 27// 28// replicapoolupdaterService, err := replicapoolupdater.NewService(ctx, option.WithScopes(replicapoolupdater.ReplicapoolReadonlyScope)) 29// 30// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey: 31// 32// replicapoolupdaterService, err := replicapoolupdater.NewService(ctx, option.WithAPIKey("AIza...")) 33// 34// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: 35// 36// config := &oauth2.Config{...} 37// // ... 38// token, err := config.Exchange(ctx, ...) 39// replicapoolupdaterService, err := replicapoolupdater.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) 40// 41// See https://godoc.org/google.golang.org/api/option/ for details on options. 42package replicapoolupdater // import "google.golang.org/api/replicapoolupdater/v1beta1" 43 44import ( 45 "bytes" 46 "context" 47 "encoding/json" 48 "errors" 49 "fmt" 50 "io" 51 "net/http" 52 "net/url" 53 "strconv" 54 "strings" 55 56 googleapi "google.golang.org/api/googleapi" 57 gensupport "google.golang.org/api/internal/gensupport" 58 option "google.golang.org/api/option" 59 htransport "google.golang.org/api/transport/http" 60) 61 62// Always reference these packages, just in case the auto-generated code 63// below doesn't. 64var _ = bytes.NewBuffer 65var _ = strconv.Itoa 66var _ = fmt.Sprintf 67var _ = json.NewDecoder 68var _ = io.Copy 69var _ = url.Parse 70var _ = gensupport.MarshalJSON 71var _ = googleapi.Version 72var _ = errors.New 73var _ = strings.Replace 74var _ = context.Canceled 75 76const apiId = "replicapoolupdater:v1beta1" 77const apiName = "replicapoolupdater" 78const apiVersion = "v1beta1" 79const basePath = "https://www.googleapis.com/replicapoolupdater/v1beta1/projects/" 80 81// OAuth2 scopes used by this API. 82const ( 83 // View and manage your data across Google Cloud Platform services 84 CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" 85 86 // View your data across Google Cloud Platform services 87 CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only" 88 89 // View and manage replica pools 90 ReplicapoolScope = "https://www.googleapis.com/auth/replicapool" 91 92 // View replica pools 93 ReplicapoolReadonlyScope = "https://www.googleapis.com/auth/replicapool.readonly" 94) 95 96// NewService creates a new Service. 97func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { 98 scopesOption := option.WithScopes( 99 "https://www.googleapis.com/auth/cloud-platform", 100 "https://www.googleapis.com/auth/cloud-platform.read-only", 101 "https://www.googleapis.com/auth/replicapool", 102 "https://www.googleapis.com/auth/replicapool.readonly", 103 ) 104 // NOTE: prepend, so we don't override user-specified scopes. 105 opts = append([]option.ClientOption{scopesOption}, opts...) 106 client, endpoint, err := htransport.NewClient(ctx, opts...) 107 if err != nil { 108 return nil, err 109 } 110 s, err := New(client) 111 if err != nil { 112 return nil, err 113 } 114 if endpoint != "" { 115 s.BasePath = endpoint 116 } 117 return s, nil 118} 119 120// New creates a new Service. It uses the provided http.Client for requests. 121// 122// Deprecated: please use NewService instead. 123// To provide a custom HTTP client, use option.WithHTTPClient. 124// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. 125func New(client *http.Client) (*Service, error) { 126 if client == nil { 127 return nil, errors.New("client is nil") 128 } 129 s := &Service{client: client, BasePath: basePath} 130 s.RollingUpdates = NewRollingUpdatesService(s) 131 s.ZoneOperations = NewZoneOperationsService(s) 132 return s, nil 133} 134 135type Service struct { 136 client *http.Client 137 BasePath string // API endpoint base URL 138 UserAgent string // optional additional User-Agent fragment 139 140 RollingUpdates *RollingUpdatesService 141 142 ZoneOperations *ZoneOperationsService 143} 144 145func (s *Service) userAgent() string { 146 if s.UserAgent == "" { 147 return googleapi.UserAgent 148 } 149 return googleapi.UserAgent + " " + s.UserAgent 150} 151 152func NewRollingUpdatesService(s *Service) *RollingUpdatesService { 153 rs := &RollingUpdatesService{s: s} 154 return rs 155} 156 157type RollingUpdatesService struct { 158 s *Service 159} 160 161func NewZoneOperationsService(s *Service) *ZoneOperationsService { 162 rs := &ZoneOperationsService{s: s} 163 return rs 164} 165 166type ZoneOperationsService struct { 167 s *Service 168} 169 170// InstanceUpdate: Update of a single instance. 171type InstanceUpdate struct { 172 // Error: Errors that occurred during the instance update. 173 Error *InstanceUpdateError `json:"error,omitempty"` 174 175 // Instance: Fully-qualified URL of the instance being updated. 176 Instance string `json:"instance,omitempty"` 177 178 // Status: Status of the instance update. Possible values are: 179 // - "PENDING": The instance update is pending execution. 180 // - "ROLLING_FORWARD": The instance update is going forward. 181 // - "ROLLING_BACK": The instance update is being rolled back. 182 // - "PAUSED": The instance update is temporarily paused (inactive). 183 // - "ROLLED_OUT": The instance update is finished, the instance is 184 // running the new template. 185 // - "ROLLED_BACK": The instance update is finished, the instance has 186 // been reverted to the previous template. 187 // - "CANCELLED": The instance update is paused and no longer can be 188 // resumed, undefined in which template the instance is running. 189 Status string `json:"status,omitempty"` 190 191 // ForceSendFields is a list of field names (e.g. "Error") to 192 // unconditionally include in API requests. By default, fields with 193 // empty values are omitted from API requests. However, any non-pointer, 194 // non-interface field appearing in ForceSendFields will be sent to the 195 // server regardless of whether the field is empty or not. This may be 196 // used to include empty fields in Patch requests. 197 ForceSendFields []string `json:"-"` 198 199 // NullFields is a list of field names (e.g. "Error") to include in API 200 // requests with the JSON null value. By default, fields with empty 201 // values are omitted from API requests. However, any field with an 202 // empty value appearing in NullFields will be sent to the server as 203 // null. It is an error if a field in this list has a non-empty value. 204 // This may be used to include null fields in Patch requests. 205 NullFields []string `json:"-"` 206} 207 208func (s *InstanceUpdate) MarshalJSON() ([]byte, error) { 209 type NoMethod InstanceUpdate 210 raw := NoMethod(*s) 211 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 212} 213 214// InstanceUpdateError: Errors that occurred during the instance update. 215type InstanceUpdateError struct { 216 // Errors: [Output Only] The array of errors encountered while 217 // processing this operation. 218 Errors []*InstanceUpdateErrorErrors `json:"errors,omitempty"` 219 220 // ForceSendFields is a list of field names (e.g. "Errors") to 221 // unconditionally include in API requests. By default, fields with 222 // empty values are omitted from API requests. However, any non-pointer, 223 // non-interface field appearing in ForceSendFields will be sent to the 224 // server regardless of whether the field is empty or not. This may be 225 // used to include empty fields in Patch requests. 226 ForceSendFields []string `json:"-"` 227 228 // NullFields is a list of field names (e.g. "Errors") to include in API 229 // requests with the JSON null value. By default, fields with empty 230 // values are omitted from API requests. However, any field with an 231 // empty value appearing in NullFields will be sent to the server as 232 // null. It is an error if a field in this list has a non-empty value. 233 // This may be used to include null fields in Patch requests. 234 NullFields []string `json:"-"` 235} 236 237func (s *InstanceUpdateError) MarshalJSON() ([]byte, error) { 238 type NoMethod InstanceUpdateError 239 raw := NoMethod(*s) 240 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 241} 242 243type InstanceUpdateErrorErrors struct { 244 // Code: [Output Only] The error type identifier for this error. 245 Code string `json:"code,omitempty"` 246 247 // Location: [Output Only] Indicates the field in the request that 248 // caused the error. This property is optional. 249 Location string `json:"location,omitempty"` 250 251 // Message: [Output Only] An optional, human-readable error message. 252 Message string `json:"message,omitempty"` 253 254 // ForceSendFields is a list of field names (e.g. "Code") to 255 // unconditionally include in API requests. By default, fields with 256 // empty values are omitted from API requests. However, any non-pointer, 257 // non-interface field appearing in ForceSendFields will be sent to the 258 // server regardless of whether the field is empty or not. This may be 259 // used to include empty fields in Patch requests. 260 ForceSendFields []string `json:"-"` 261 262 // NullFields is a list of field names (e.g. "Code") to include in API 263 // requests with the JSON null value. By default, fields with empty 264 // values are omitted from API requests. However, any field with an 265 // empty value appearing in NullFields will be sent to the server as 266 // null. It is an error if a field in this list has a non-empty value. 267 // This may be used to include null fields in Patch requests. 268 NullFields []string `json:"-"` 269} 270 271func (s *InstanceUpdateErrorErrors) MarshalJSON() ([]byte, error) { 272 type NoMethod InstanceUpdateErrorErrors 273 raw := NoMethod(*s) 274 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 275} 276 277// InstanceUpdateList: Response returned by ListInstanceUpdates method. 278type InstanceUpdateList struct { 279 // Items: Collection of requested instance updates. 280 Items []*InstanceUpdate `json:"items,omitempty"` 281 282 // Kind: [Output Only] Type of the resource. 283 Kind string `json:"kind,omitempty"` 284 285 // NextPageToken: A token used to continue a truncated list request. 286 NextPageToken string `json:"nextPageToken,omitempty"` 287 288 // SelfLink: [Output Only] The fully qualified URL for the resource. 289 SelfLink string `json:"selfLink,omitempty"` 290 291 // ServerResponse contains the HTTP response code and headers from the 292 // server. 293 googleapi.ServerResponse `json:"-"` 294 295 // ForceSendFields is a list of field names (e.g. "Items") to 296 // unconditionally include in API requests. By default, fields with 297 // empty values are omitted from API requests. However, any non-pointer, 298 // non-interface field appearing in ForceSendFields will be sent to the 299 // server regardless of whether the field is empty or not. This may be 300 // used to include empty fields in Patch requests. 301 ForceSendFields []string `json:"-"` 302 303 // NullFields is a list of field names (e.g. "Items") to include in API 304 // requests with the JSON null value. By default, fields with empty 305 // values are omitted from API requests. However, any field with an 306 // empty value appearing in NullFields will be sent to the server as 307 // null. It is an error if a field in this list has a non-empty value. 308 // This may be used to include null fields in Patch requests. 309 NullFields []string `json:"-"` 310} 311 312func (s *InstanceUpdateList) MarshalJSON() ([]byte, error) { 313 type NoMethod InstanceUpdateList 314 raw := NoMethod(*s) 315 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 316} 317 318// Operation: An operation resource, used to manage asynchronous API 319// requests. 320type Operation struct { 321 ClientOperationId string `json:"clientOperationId,omitempty"` 322 323 // CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text 324 // format. 325 CreationTimestamp string `json:"creationTimestamp,omitempty"` 326 327 EndTime string `json:"endTime,omitempty"` 328 329 // Error: [Output Only] If errors occurred during processing of this 330 // operation, this field will be populated. 331 Error *OperationError `json:"error,omitempty"` 332 333 HttpErrorMessage string `json:"httpErrorMessage,omitempty"` 334 335 HttpErrorStatusCode int64 `json:"httpErrorStatusCode,omitempty"` 336 337 // Id: [Output Only] Unique identifier for the resource; defined by the 338 // server. 339 Id uint64 `json:"id,omitempty,string"` 340 341 // InsertTime: [Output Only] The time that this operation was requested. 342 // This is in RFC 3339 format. 343 InsertTime string `json:"insertTime,omitempty"` 344 345 // Kind: [Output Only] Type of the resource. Always 346 // replicapoolupdater#operation for Operation resources. 347 Kind string `json:"kind,omitempty"` 348 349 // Name: [Output Only] Name of the resource. 350 Name string `json:"name,omitempty"` 351 352 OperationType string `json:"operationType,omitempty"` 353 354 Progress int64 `json:"progress,omitempty"` 355 356 // Region: [Output Only] URL of the region where the operation resides. 357 Region string `json:"region,omitempty"` 358 359 // SelfLink: [Output Only] The fully qualified URL for the resource. 360 SelfLink string `json:"selfLink,omitempty"` 361 362 // StartTime: [Output Only] The time that this operation was started by 363 // the server. This is in RFC 3339 format. 364 StartTime string `json:"startTime,omitempty"` 365 366 // Status: [Output Only] Status of the operation. Can be one of the 367 // following: "PENDING", "RUNNING", or "DONE". 368 Status string `json:"status,omitempty"` 369 370 // StatusMessage: [Output Only] An optional textual description of the 371 // current status of the operation. 372 StatusMessage string `json:"statusMessage,omitempty"` 373 374 // TargetId: [Output Only] Unique target id which identifies a 375 // particular incarnation of the target. 376 TargetId uint64 `json:"targetId,omitempty,string"` 377 378 // TargetLink: [Output Only] URL of the resource the operation is 379 // mutating. 380 TargetLink string `json:"targetLink,omitempty"` 381 382 User string `json:"user,omitempty"` 383 384 Warnings []*OperationWarnings `json:"warnings,omitempty"` 385 386 // Zone: [Output Only] URL of the zone where the operation resides. 387 Zone string `json:"zone,omitempty"` 388 389 // ServerResponse contains the HTTP response code and headers from the 390 // server. 391 googleapi.ServerResponse `json:"-"` 392 393 // ForceSendFields is a list of field names (e.g. "ClientOperationId") 394 // to unconditionally include in API requests. By default, fields with 395 // empty values are omitted from API requests. However, any non-pointer, 396 // non-interface field appearing in ForceSendFields will be sent to the 397 // server regardless of whether the field is empty or not. This may be 398 // used to include empty fields in Patch requests. 399 ForceSendFields []string `json:"-"` 400 401 // NullFields is a list of field names (e.g. "ClientOperationId") to 402 // include in API requests with the JSON null value. By default, fields 403 // with empty values are omitted from API requests. However, any field 404 // with an empty value appearing in NullFields will be sent to the 405 // server as null. It is an error if a field in this list has a 406 // non-empty value. This may be used to include null fields in Patch 407 // requests. 408 NullFields []string `json:"-"` 409} 410 411func (s *Operation) MarshalJSON() ([]byte, error) { 412 type NoMethod Operation 413 raw := NoMethod(*s) 414 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 415} 416 417// OperationError: [Output Only] If errors occurred during processing of 418// this operation, this field will be populated. 419type OperationError struct { 420 // Errors: [Output Only] The array of errors encountered while 421 // processing this operation. 422 Errors []*OperationErrorErrors `json:"errors,omitempty"` 423 424 // ForceSendFields is a list of field names (e.g. "Errors") to 425 // unconditionally include in API requests. By default, fields with 426 // empty values are omitted from API requests. However, any non-pointer, 427 // non-interface field appearing in ForceSendFields will be sent to the 428 // server regardless of whether the field is empty or not. This may be 429 // used to include empty fields in Patch requests. 430 ForceSendFields []string `json:"-"` 431 432 // NullFields is a list of field names (e.g. "Errors") to include in API 433 // requests with the JSON null value. By default, fields with empty 434 // values are omitted from API requests. However, any field with an 435 // empty value appearing in NullFields will be sent to the server as 436 // null. It is an error if a field in this list has a non-empty value. 437 // This may be used to include null fields in Patch requests. 438 NullFields []string `json:"-"` 439} 440 441func (s *OperationError) MarshalJSON() ([]byte, error) { 442 type NoMethod OperationError 443 raw := NoMethod(*s) 444 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 445} 446 447type OperationErrorErrors struct { 448 // Code: [Output Only] The error type identifier for this error. 449 Code string `json:"code,omitempty"` 450 451 // Location: [Output Only] Indicates the field in the request that 452 // caused the error. This property is optional. 453 Location string `json:"location,omitempty"` 454 455 // Message: [Output Only] An optional, human-readable error message. 456 Message string `json:"message,omitempty"` 457 458 // ForceSendFields is a list of field names (e.g. "Code") to 459 // unconditionally include in API requests. By default, fields with 460 // empty values are omitted from API requests. However, any non-pointer, 461 // non-interface field appearing in ForceSendFields will be sent to the 462 // server regardless of whether the field is empty or not. This may be 463 // used to include empty fields in Patch requests. 464 ForceSendFields []string `json:"-"` 465 466 // NullFields is a list of field names (e.g. "Code") to include in API 467 // requests with the JSON null value. By default, fields with empty 468 // values are omitted from API requests. However, any field with an 469 // empty value appearing in NullFields will be sent to the server as 470 // null. It is an error if a field in this list has a non-empty value. 471 // This may be used to include null fields in Patch requests. 472 NullFields []string `json:"-"` 473} 474 475func (s *OperationErrorErrors) MarshalJSON() ([]byte, error) { 476 type NoMethod OperationErrorErrors 477 raw := NoMethod(*s) 478 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 479} 480 481type OperationWarnings struct { 482 // Code: [Output only] The warning type identifier for this warning. 483 Code string `json:"code,omitempty"` 484 485 // Data: [Output only] Metadata for this warning in key:value format. 486 Data []*OperationWarningsData `json:"data,omitempty"` 487 488 // Message: [Output only] Optional human-readable details for this 489 // warning. 490 Message string `json:"message,omitempty"` 491 492 // ForceSendFields is a list of field names (e.g. "Code") to 493 // unconditionally include in API requests. By default, fields with 494 // empty values are omitted from API requests. However, any non-pointer, 495 // non-interface field appearing in ForceSendFields will be sent to the 496 // server regardless of whether the field is empty or not. This may be 497 // used to include empty fields in Patch requests. 498 ForceSendFields []string `json:"-"` 499 500 // NullFields is a list of field names (e.g. "Code") to include in API 501 // requests with the JSON null value. By default, fields with empty 502 // values are omitted from API requests. However, any field with an 503 // empty value appearing in NullFields will be sent to the server as 504 // null. It is an error if a field in this list has a non-empty value. 505 // This may be used to include null fields in Patch requests. 506 NullFields []string `json:"-"` 507} 508 509func (s *OperationWarnings) MarshalJSON() ([]byte, error) { 510 type NoMethod OperationWarnings 511 raw := NoMethod(*s) 512 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 513} 514 515type OperationWarningsData struct { 516 // Key: [Output Only] Metadata key for this warning. 517 Key string `json:"key,omitempty"` 518 519 // Value: [Output Only] Metadata value for this warning. 520 Value string `json:"value,omitempty"` 521 522 // ForceSendFields is a list of field names (e.g. "Key") to 523 // unconditionally include in API requests. By default, fields with 524 // empty values are omitted from API requests. However, any non-pointer, 525 // non-interface field appearing in ForceSendFields will be sent to the 526 // server regardless of whether the field is empty or not. This may be 527 // used to include empty fields in Patch requests. 528 ForceSendFields []string `json:"-"` 529 530 // NullFields is a list of field names (e.g. "Key") to include in API 531 // requests with the JSON null value. By default, fields with empty 532 // values are omitted from API requests. However, any field with an 533 // empty value appearing in NullFields will be sent to the server as 534 // null. It is an error if a field in this list has a non-empty value. 535 // This may be used to include null fields in Patch requests. 536 NullFields []string `json:"-"` 537} 538 539func (s *OperationWarningsData) MarshalJSON() ([]byte, error) { 540 type NoMethod OperationWarningsData 541 raw := NoMethod(*s) 542 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 543} 544 545// OperationList: Contains a list of Operation resources. 546type OperationList struct { 547 // Id: [Output Only] Unique identifier for the resource; defined by the 548 // server. 549 Id string `json:"id,omitempty"` 550 551 // Items: [Output Only] The Operation resources. 552 Items []*Operation `json:"items,omitempty"` 553 554 // Kind: [Output Only] Type of resource. Always 555 // replicapoolupdater#operationList for OperationList resources. 556 Kind string `json:"kind,omitempty"` 557 558 // NextPageToken: [Output Only] A token used to continue a truncate. 559 NextPageToken string `json:"nextPageToken,omitempty"` 560 561 // SelfLink: [Output Only] The fully qualified URL for the resource. 562 SelfLink string `json:"selfLink,omitempty"` 563 564 // ServerResponse contains the HTTP response code and headers from the 565 // server. 566 googleapi.ServerResponse `json:"-"` 567 568 // ForceSendFields is a list of field names (e.g. "Id") to 569 // unconditionally include in API requests. By default, fields with 570 // empty values are omitted from API requests. However, any non-pointer, 571 // non-interface field appearing in ForceSendFields will be sent to the 572 // server regardless of whether the field is empty or not. This may be 573 // used to include empty fields in Patch requests. 574 ForceSendFields []string `json:"-"` 575 576 // NullFields is a list of field names (e.g. "Id") to include in API 577 // requests with the JSON null value. By default, fields with empty 578 // values are omitted from API requests. However, any field with an 579 // empty value appearing in NullFields will be sent to the server as 580 // null. It is an error if a field in this list has a non-empty value. 581 // This may be used to include null fields in Patch requests. 582 NullFields []string `json:"-"` 583} 584 585func (s *OperationList) MarshalJSON() ([]byte, error) { 586 type NoMethod OperationList 587 raw := NoMethod(*s) 588 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 589} 590 591// RollingUpdate: The following represents a resource describing a 592// single update (rollout) of a group of instances to the given 593// template. 594type RollingUpdate struct { 595 // ActionType: Specifies the action to take for each instance within the 596 // instance group. This can be RECREATE which will recreate each 597 // instance and is only available for managed instance groups. It can 598 // also be REBOOT which performs a soft reboot for each instance and is 599 // only available for regular (non-managed) instance groups. 600 ActionType string `json:"actionType,omitempty"` 601 602 // CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text 603 // format. 604 CreationTimestamp string `json:"creationTimestamp,omitempty"` 605 606 // Description: An optional textual description of the resource; 607 // provided by the client when the resource is created. 608 Description string `json:"description,omitempty"` 609 610 // Error: [Output Only] Errors that occurred during the rolling update. 611 Error *RollingUpdateError `json:"error,omitempty"` 612 613 // Id: [Output Only] Unique identifier for the resource; defined by the 614 // server. 615 Id string `json:"id,omitempty"` 616 617 // InstanceGroup: Fully-qualified URL of an instance group being 618 // updated. Exactly one of instanceGroupManager and instanceGroup must 619 // be set. 620 InstanceGroup string `json:"instanceGroup,omitempty"` 621 622 // InstanceGroupManager: Fully-qualified URL of an instance group 623 // manager being updated. Exactly one of instanceGroupManager and 624 // instanceGroup must be set. 625 InstanceGroupManager string `json:"instanceGroupManager,omitempty"` 626 627 // InstanceTemplate: Fully-qualified URL of an instance template to 628 // apply. 629 InstanceTemplate string `json:"instanceTemplate,omitempty"` 630 631 // Kind: [Output Only] Type of the resource. 632 Kind string `json:"kind,omitempty"` 633 634 // OldInstanceTemplate: Fully-qualified URL of the instance template 635 // encountered while starting the update. 636 OldInstanceTemplate string `json:"oldInstanceTemplate,omitempty"` 637 638 // Policy: Parameters of the update process. 639 Policy *RollingUpdatePolicy `json:"policy,omitempty"` 640 641 // Progress: [Output Only] An optional progress indicator that ranges 642 // from 0 to 100. There is no requirement that this be linear or support 643 // any granularity of operations. This should not be used to guess at 644 // when the update will be complete. This number should be monotonically 645 // increasing as the update progresses. 646 Progress int64 `json:"progress,omitempty"` 647 648 // SelfLink: [Output Only] The fully qualified URL for the resource. 649 SelfLink string `json:"selfLink,omitempty"` 650 651 // Status: [Output Only] Status of the update. Possible values are: 652 // - "ROLLING_FORWARD": The update is going forward. 653 // - "ROLLING_BACK": The update is being rolled back. 654 // - "PAUSED": The update is temporarily paused (inactive). 655 // - "ROLLED_OUT": The update is finished, all instances have been 656 // updated successfully. 657 // - "ROLLED_BACK": The update is finished, all instances have been 658 // reverted to the previous template. 659 // - "CANCELLED": The update is paused and no longer can be resumed, 660 // undefined how many instances are running in which template. 661 Status string `json:"status,omitempty"` 662 663 // StatusMessage: [Output Only] An optional textual description of the 664 // current status of the update. 665 StatusMessage string `json:"statusMessage,omitempty"` 666 667 // User: [Output Only] User who requested the update, for example: 668 // user@example.com. 669 User string `json:"user,omitempty"` 670 671 // ServerResponse contains the HTTP response code and headers from the 672 // server. 673 googleapi.ServerResponse `json:"-"` 674 675 // ForceSendFields is a list of field names (e.g. "ActionType") to 676 // unconditionally include in API requests. By default, fields with 677 // empty values are omitted from API requests. However, any non-pointer, 678 // non-interface field appearing in ForceSendFields will be sent to the 679 // server regardless of whether the field is empty or not. This may be 680 // used to include empty fields in Patch requests. 681 ForceSendFields []string `json:"-"` 682 683 // NullFields is a list of field names (e.g. "ActionType") to include in 684 // API requests with the JSON null value. By default, fields with empty 685 // values are omitted from API requests. However, any field with an 686 // empty value appearing in NullFields will be sent to the server as 687 // null. It is an error if a field in this list has a non-empty value. 688 // This may be used to include null fields in Patch requests. 689 NullFields []string `json:"-"` 690} 691 692func (s *RollingUpdate) MarshalJSON() ([]byte, error) { 693 type NoMethod RollingUpdate 694 raw := NoMethod(*s) 695 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 696} 697 698// RollingUpdateError: [Output Only] Errors that occurred during the 699// rolling update. 700type RollingUpdateError struct { 701 // Errors: [Output Only] The array of errors encountered while 702 // processing this operation. 703 Errors []*RollingUpdateErrorErrors `json:"errors,omitempty"` 704 705 // ForceSendFields is a list of field names (e.g. "Errors") to 706 // unconditionally include in API requests. By default, fields with 707 // empty values are omitted from API requests. However, any non-pointer, 708 // non-interface field appearing in ForceSendFields will be sent to the 709 // server regardless of whether the field is empty or not. This may be 710 // used to include empty fields in Patch requests. 711 ForceSendFields []string `json:"-"` 712 713 // NullFields is a list of field names (e.g. "Errors") to include in API 714 // requests with the JSON null value. By default, fields with empty 715 // values are omitted from API requests. However, any field with an 716 // empty value appearing in NullFields will be sent to the server as 717 // null. It is an error if a field in this list has a non-empty value. 718 // This may be used to include null fields in Patch requests. 719 NullFields []string `json:"-"` 720} 721 722func (s *RollingUpdateError) MarshalJSON() ([]byte, error) { 723 type NoMethod RollingUpdateError 724 raw := NoMethod(*s) 725 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 726} 727 728type RollingUpdateErrorErrors struct { 729 // Code: [Output Only] The error type identifier for this error. 730 Code string `json:"code,omitempty"` 731 732 // Location: [Output Only] Indicates the field in the request that 733 // caused the error. This property is optional. 734 Location string `json:"location,omitempty"` 735 736 // Message: [Output Only] An optional, human-readable error message. 737 Message string `json:"message,omitempty"` 738 739 // ForceSendFields is a list of field names (e.g. "Code") to 740 // unconditionally include in API requests. By default, fields with 741 // empty values are omitted from API requests. However, any non-pointer, 742 // non-interface field appearing in ForceSendFields will be sent to the 743 // server regardless of whether the field is empty or not. This may be 744 // used to include empty fields in Patch requests. 745 ForceSendFields []string `json:"-"` 746 747 // NullFields is a list of field names (e.g. "Code") to include in API 748 // requests with the JSON null value. By default, fields with empty 749 // values are omitted from API requests. However, any field with an 750 // empty value appearing in NullFields will be sent to the server as 751 // null. It is an error if a field in this list has a non-empty value. 752 // This may be used to include null fields in Patch requests. 753 NullFields []string `json:"-"` 754} 755 756func (s *RollingUpdateErrorErrors) MarshalJSON() ([]byte, error) { 757 type NoMethod RollingUpdateErrorErrors 758 raw := NoMethod(*s) 759 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 760} 761 762// RollingUpdatePolicy: Parameters of the update process. 763type RollingUpdatePolicy struct { 764 // AutoPauseAfterInstances: Number of instances to update before the 765 // updater pauses the rolling update. 766 AutoPauseAfterInstances int64 `json:"autoPauseAfterInstances,omitempty"` 767 768 // InstanceStartupTimeoutSec: The maximum amount of time that the 769 // updater waits for a HEALTHY state after all of the update steps are 770 // complete. If the HEALTHY state is not received before the deadline, 771 // the instance update is considered a failure. 772 InstanceStartupTimeoutSec int64 `json:"instanceStartupTimeoutSec,omitempty"` 773 774 // MaxNumConcurrentInstances: The maximum number of instances that can 775 // be updated simultaneously. An instance update is considered complete 776 // only after the instance is restarted and initialized. 777 MaxNumConcurrentInstances int64 `json:"maxNumConcurrentInstances,omitempty"` 778 779 // MaxNumFailedInstances: The maximum number of instance updates that 780 // can fail before the group update is considered a failure. An instance 781 // update is considered failed if any of its update actions (e.g. Stop 782 // call on Instance resource in Rolling Reboot) failed with permanent 783 // failure, or if the instance is in an UNHEALTHY state after it 784 // finishes all of the update actions. 785 MaxNumFailedInstances int64 `json:"maxNumFailedInstances,omitempty"` 786 787 // MinInstanceUpdateTimeSec: The minimum amount of time that the updater 788 // spends to update each instance. Update time is the time it takes to 789 // complete all update actions (e.g. Stop call on Instance resource in 790 // Rolling Reboot), reboot, and initialize. If the instance update 791 // finishes early, the updater pauses for the remainder of the time 792 // before it starts the next instance update. 793 MinInstanceUpdateTimeSec int64 `json:"minInstanceUpdateTimeSec,omitempty"` 794 795 // ForceSendFields is a list of field names (e.g. 796 // "AutoPauseAfterInstances") to unconditionally include in API 797 // requests. By default, fields with empty values are omitted from API 798 // requests. However, any non-pointer, non-interface field appearing in 799 // ForceSendFields will be sent to the server regardless of whether the 800 // field is empty or not. This may be used to include empty fields in 801 // Patch requests. 802 ForceSendFields []string `json:"-"` 803 804 // NullFields is a list of field names (e.g. "AutoPauseAfterInstances") 805 // to include in API requests with the JSON null value. By default, 806 // fields with empty values are omitted from API requests. However, any 807 // field with an empty value appearing in NullFields will be sent to the 808 // server as null. It is an error if a field in this list has a 809 // non-empty value. This may be used to include null fields in Patch 810 // requests. 811 NullFields []string `json:"-"` 812} 813 814func (s *RollingUpdatePolicy) MarshalJSON() ([]byte, error) { 815 type NoMethod RollingUpdatePolicy 816 raw := NoMethod(*s) 817 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 818} 819 820// RollingUpdateList: Response returned by List method. 821type RollingUpdateList struct { 822 // Items: Collection of requested updates. 823 Items []*RollingUpdate `json:"items,omitempty"` 824 825 // Kind: [Output Only] Type of the resource. 826 Kind string `json:"kind,omitempty"` 827 828 // NextPageToken: A token used to continue a truncated list request. 829 NextPageToken string `json:"nextPageToken,omitempty"` 830 831 // SelfLink: [Output Only] The fully qualified URL for the resource. 832 SelfLink string `json:"selfLink,omitempty"` 833 834 // ServerResponse contains the HTTP response code and headers from the 835 // server. 836 googleapi.ServerResponse `json:"-"` 837 838 // ForceSendFields is a list of field names (e.g. "Items") to 839 // unconditionally include in API requests. By default, fields with 840 // empty values are omitted from API requests. However, any non-pointer, 841 // non-interface field appearing in ForceSendFields will be sent to the 842 // server regardless of whether the field is empty or not. This may be 843 // used to include empty fields in Patch requests. 844 ForceSendFields []string `json:"-"` 845 846 // NullFields is a list of field names (e.g. "Items") to include in API 847 // requests with the JSON null value. By default, fields with empty 848 // values are omitted from API requests. However, any field with an 849 // empty value appearing in NullFields will be sent to the server as 850 // null. It is an error if a field in this list has a non-empty value. 851 // This may be used to include null fields in Patch requests. 852 NullFields []string `json:"-"` 853} 854 855func (s *RollingUpdateList) MarshalJSON() ([]byte, error) { 856 type NoMethod RollingUpdateList 857 raw := NoMethod(*s) 858 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 859} 860 861// method id "replicapoolupdater.rollingUpdates.cancel": 862 863type RollingUpdatesCancelCall struct { 864 s *Service 865 project string 866 zone string 867 rollingUpdate string 868 urlParams_ gensupport.URLParams 869 ctx_ context.Context 870 header_ http.Header 871} 872 873// Cancel: Cancels an update. The update must be PAUSED before it can be 874// cancelled. This has no effect if the update is already CANCELLED. 875// For details, see https://cloud.google.com/compute/docs/instance-groups/manager/#cancelrollingupdate 876func (r *RollingUpdatesService) Cancel(project string, zone string, rollingUpdate string) *RollingUpdatesCancelCall { 877 c := &RollingUpdatesCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} 878 c.project = project 879 c.zone = zone 880 c.rollingUpdate = rollingUpdate 881 return c 882} 883 884// Fields allows partial responses to be retrieved. See 885// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 886// for more information. 887func (c *RollingUpdatesCancelCall) Fields(s ...googleapi.Field) *RollingUpdatesCancelCall { 888 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 889 return c 890} 891 892// Context sets the context to be used in this call's Do method. Any 893// pending HTTP request will be aborted if the provided context is 894// canceled. 895func (c *RollingUpdatesCancelCall) Context(ctx context.Context) *RollingUpdatesCancelCall { 896 c.ctx_ = ctx 897 return c 898} 899 900// Header returns an http.Header that can be modified by the caller to 901// add HTTP headers to the request. 902func (c *RollingUpdatesCancelCall) Header() http.Header { 903 if c.header_ == nil { 904 c.header_ = make(http.Header) 905 } 906 return c.header_ 907} 908 909func (c *RollingUpdatesCancelCall) doRequest(alt string) (*http.Response, error) { 910 reqHeaders := make(http.Header) 911 reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203") 912 for k, v := range c.header_ { 913 reqHeaders[k] = v 914 } 915 reqHeaders.Set("User-Agent", c.s.userAgent()) 916 var body io.Reader = nil 917 c.urlParams_.Set("alt", alt) 918 c.urlParams_.Set("prettyPrint", "false") 919 urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/cancel") 920 urls += "?" + c.urlParams_.Encode() 921 req, err := http.NewRequest("POST", urls, body) 922 if err != nil { 923 return nil, err 924 } 925 req.Header = reqHeaders 926 googleapi.Expand(req.URL, map[string]string{ 927 "project": c.project, 928 "zone": c.zone, 929 "rollingUpdate": c.rollingUpdate, 930 }) 931 return gensupport.SendRequest(c.ctx_, c.s.client, req) 932} 933 934// Do executes the "replicapoolupdater.rollingUpdates.cancel" call. 935// Exactly one of *Operation or error will be non-nil. Any non-2xx 936// status code is an error. Response headers are in either 937// *Operation.ServerResponse.Header or (if a response was returned at 938// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 939// to check whether the returned error was because 940// http.StatusNotModified was returned. 941func (c *RollingUpdatesCancelCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 942 gensupport.SetOptions(c.urlParams_, opts...) 943 res, err := c.doRequest("json") 944 if res != nil && res.StatusCode == http.StatusNotModified { 945 if res.Body != nil { 946 res.Body.Close() 947 } 948 return nil, &googleapi.Error{ 949 Code: res.StatusCode, 950 Header: res.Header, 951 } 952 } 953 if err != nil { 954 return nil, err 955 } 956 defer googleapi.CloseBody(res) 957 if err := googleapi.CheckResponse(res); err != nil { 958 return nil, err 959 } 960 ret := &Operation{ 961 ServerResponse: googleapi.ServerResponse{ 962 Header: res.Header, 963 HTTPStatusCode: res.StatusCode, 964 }, 965 } 966 target := &ret 967 if err := gensupport.DecodeResponse(target, res); err != nil { 968 return nil, err 969 } 970 return ret, nil 971 // { 972 // "description": "Cancels an update. The update must be PAUSED before it can be cancelled. This has no effect if the update is already CANCELLED.", 973 // "httpMethod": "POST", 974 // "id": "replicapoolupdater.rollingUpdates.cancel", 975 // "parameterOrder": [ 976 // "project", 977 // "zone", 978 // "rollingUpdate" 979 // ], 980 // "parameters": { 981 // "project": { 982 // "description": "The Google Developers Console project name.", 983 // "location": "path", 984 // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", 985 // "required": true, 986 // "type": "string" 987 // }, 988 // "rollingUpdate": { 989 // "description": "The name of the update.", 990 // "location": "path", 991 // "required": true, 992 // "type": "string" 993 // }, 994 // "zone": { 995 // "description": "The name of the zone in which the update's target resides.", 996 // "location": "path", 997 // "required": true, 998 // "type": "string" 999 // } 1000 // }, 1001 // "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/cancel", 1002 // "response": { 1003 // "$ref": "Operation" 1004 // }, 1005 // "scopes": [ 1006 // "https://www.googleapis.com/auth/cloud-platform", 1007 // "https://www.googleapis.com/auth/replicapool" 1008 // ] 1009 // } 1010 1011} 1012 1013// method id "replicapoolupdater.rollingUpdates.get": 1014 1015type RollingUpdatesGetCall struct { 1016 s *Service 1017 project string 1018 zone string 1019 rollingUpdate string 1020 urlParams_ gensupport.URLParams 1021 ifNoneMatch_ string 1022 ctx_ context.Context 1023 header_ http.Header 1024} 1025 1026// Get: Returns information about an update. 1027// For details, see https://cloud.google.com/compute/docs/instance-groups/manager/#getlistrollingupdate 1028func (r *RollingUpdatesService) Get(project string, zone string, rollingUpdate string) *RollingUpdatesGetCall { 1029 c := &RollingUpdatesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 1030 c.project = project 1031 c.zone = zone 1032 c.rollingUpdate = rollingUpdate 1033 return c 1034} 1035 1036// Fields allows partial responses to be retrieved. See 1037// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 1038// for more information. 1039func (c *RollingUpdatesGetCall) Fields(s ...googleapi.Field) *RollingUpdatesGetCall { 1040 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 1041 return c 1042} 1043 1044// IfNoneMatch sets the optional parameter which makes the operation 1045// fail if the object's ETag matches the given value. This is useful for 1046// getting updates only after the object has changed since the last 1047// request. Use googleapi.IsNotModified to check whether the response 1048// error from Do is the result of In-None-Match. 1049func (c *RollingUpdatesGetCall) IfNoneMatch(entityTag string) *RollingUpdatesGetCall { 1050 c.ifNoneMatch_ = entityTag 1051 return c 1052} 1053 1054// Context sets the context to be used in this call's Do method. Any 1055// pending HTTP request will be aborted if the provided context is 1056// canceled. 1057func (c *RollingUpdatesGetCall) Context(ctx context.Context) *RollingUpdatesGetCall { 1058 c.ctx_ = ctx 1059 return c 1060} 1061 1062// Header returns an http.Header that can be modified by the caller to 1063// add HTTP headers to the request. 1064func (c *RollingUpdatesGetCall) Header() http.Header { 1065 if c.header_ == nil { 1066 c.header_ = make(http.Header) 1067 } 1068 return c.header_ 1069} 1070 1071func (c *RollingUpdatesGetCall) doRequest(alt string) (*http.Response, error) { 1072 reqHeaders := make(http.Header) 1073 reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203") 1074 for k, v := range c.header_ { 1075 reqHeaders[k] = v 1076 } 1077 reqHeaders.Set("User-Agent", c.s.userAgent()) 1078 if c.ifNoneMatch_ != "" { 1079 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 1080 } 1081 var body io.Reader = nil 1082 c.urlParams_.Set("alt", alt) 1083 c.urlParams_.Set("prettyPrint", "false") 1084 urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}") 1085 urls += "?" + c.urlParams_.Encode() 1086 req, err := http.NewRequest("GET", urls, body) 1087 if err != nil { 1088 return nil, err 1089 } 1090 req.Header = reqHeaders 1091 googleapi.Expand(req.URL, map[string]string{ 1092 "project": c.project, 1093 "zone": c.zone, 1094 "rollingUpdate": c.rollingUpdate, 1095 }) 1096 return gensupport.SendRequest(c.ctx_, c.s.client, req) 1097} 1098 1099// Do executes the "replicapoolupdater.rollingUpdates.get" call. 1100// Exactly one of *RollingUpdate or error will be non-nil. Any non-2xx 1101// status code is an error. Response headers are in either 1102// *RollingUpdate.ServerResponse.Header or (if a response was returned 1103// at all) in error.(*googleapi.Error).Header. Use 1104// googleapi.IsNotModified to check whether the returned error was 1105// because http.StatusNotModified was returned. 1106func (c *RollingUpdatesGetCall) Do(opts ...googleapi.CallOption) (*RollingUpdate, error) { 1107 gensupport.SetOptions(c.urlParams_, opts...) 1108 res, err := c.doRequest("json") 1109 if res != nil && res.StatusCode == http.StatusNotModified { 1110 if res.Body != nil { 1111 res.Body.Close() 1112 } 1113 return nil, &googleapi.Error{ 1114 Code: res.StatusCode, 1115 Header: res.Header, 1116 } 1117 } 1118 if err != nil { 1119 return nil, err 1120 } 1121 defer googleapi.CloseBody(res) 1122 if err := googleapi.CheckResponse(res); err != nil { 1123 return nil, err 1124 } 1125 ret := &RollingUpdate{ 1126 ServerResponse: googleapi.ServerResponse{ 1127 Header: res.Header, 1128 HTTPStatusCode: res.StatusCode, 1129 }, 1130 } 1131 target := &ret 1132 if err := gensupport.DecodeResponse(target, res); err != nil { 1133 return nil, err 1134 } 1135 return ret, nil 1136 // { 1137 // "description": "Returns information about an update.", 1138 // "httpMethod": "GET", 1139 // "id": "replicapoolupdater.rollingUpdates.get", 1140 // "parameterOrder": [ 1141 // "project", 1142 // "zone", 1143 // "rollingUpdate" 1144 // ], 1145 // "parameters": { 1146 // "project": { 1147 // "description": "The Google Developers Console project name.", 1148 // "location": "path", 1149 // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", 1150 // "required": true, 1151 // "type": "string" 1152 // }, 1153 // "rollingUpdate": { 1154 // "description": "The name of the update.", 1155 // "location": "path", 1156 // "required": true, 1157 // "type": "string" 1158 // }, 1159 // "zone": { 1160 // "description": "The name of the zone in which the update's target resides.", 1161 // "location": "path", 1162 // "required": true, 1163 // "type": "string" 1164 // } 1165 // }, 1166 // "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}", 1167 // "response": { 1168 // "$ref": "RollingUpdate" 1169 // }, 1170 // "scopes": [ 1171 // "https://www.googleapis.com/auth/cloud-platform", 1172 // "https://www.googleapis.com/auth/cloud-platform.read-only", 1173 // "https://www.googleapis.com/auth/replicapool", 1174 // "https://www.googleapis.com/auth/replicapool.readonly" 1175 // ] 1176 // } 1177 1178} 1179 1180// method id "replicapoolupdater.rollingUpdates.insert": 1181 1182type RollingUpdatesInsertCall struct { 1183 s *Service 1184 project string 1185 zone string 1186 rollingupdate *RollingUpdate 1187 urlParams_ gensupport.URLParams 1188 ctx_ context.Context 1189 header_ http.Header 1190} 1191 1192// Insert: Inserts and starts a new update. 1193// For details, see https://cloud.google.com/compute/docs/instance-groups/manager/#starting_an_update 1194func (r *RollingUpdatesService) Insert(project string, zone string, rollingupdate *RollingUpdate) *RollingUpdatesInsertCall { 1195 c := &RollingUpdatesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 1196 c.project = project 1197 c.zone = zone 1198 c.rollingupdate = rollingupdate 1199 return c 1200} 1201 1202// Fields allows partial responses to be retrieved. See 1203// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 1204// for more information. 1205func (c *RollingUpdatesInsertCall) Fields(s ...googleapi.Field) *RollingUpdatesInsertCall { 1206 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 1207 return c 1208} 1209 1210// Context sets the context to be used in this call's Do method. Any 1211// pending HTTP request will be aborted if the provided context is 1212// canceled. 1213func (c *RollingUpdatesInsertCall) Context(ctx context.Context) *RollingUpdatesInsertCall { 1214 c.ctx_ = ctx 1215 return c 1216} 1217 1218// Header returns an http.Header that can be modified by the caller to 1219// add HTTP headers to the request. 1220func (c *RollingUpdatesInsertCall) Header() http.Header { 1221 if c.header_ == nil { 1222 c.header_ = make(http.Header) 1223 } 1224 return c.header_ 1225} 1226 1227func (c *RollingUpdatesInsertCall) doRequest(alt string) (*http.Response, error) { 1228 reqHeaders := make(http.Header) 1229 reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203") 1230 for k, v := range c.header_ { 1231 reqHeaders[k] = v 1232 } 1233 reqHeaders.Set("User-Agent", c.s.userAgent()) 1234 var body io.Reader = nil 1235 body, err := googleapi.WithoutDataWrapper.JSONReader(c.rollingupdate) 1236 if err != nil { 1237 return nil, err 1238 } 1239 reqHeaders.Set("Content-Type", "application/json") 1240 c.urlParams_.Set("alt", alt) 1241 c.urlParams_.Set("prettyPrint", "false") 1242 urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/rollingUpdates") 1243 urls += "?" + c.urlParams_.Encode() 1244 req, err := http.NewRequest("POST", urls, body) 1245 if err != nil { 1246 return nil, err 1247 } 1248 req.Header = reqHeaders 1249 googleapi.Expand(req.URL, map[string]string{ 1250 "project": c.project, 1251 "zone": c.zone, 1252 }) 1253 return gensupport.SendRequest(c.ctx_, c.s.client, req) 1254} 1255 1256// Do executes the "replicapoolupdater.rollingUpdates.insert" call. 1257// Exactly one of *Operation or error will be non-nil. Any non-2xx 1258// status code is an error. Response headers are in either 1259// *Operation.ServerResponse.Header or (if a response was returned at 1260// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 1261// to check whether the returned error was because 1262// http.StatusNotModified was returned. 1263func (c *RollingUpdatesInsertCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 1264 gensupport.SetOptions(c.urlParams_, opts...) 1265 res, err := c.doRequest("json") 1266 if res != nil && res.StatusCode == http.StatusNotModified { 1267 if res.Body != nil { 1268 res.Body.Close() 1269 } 1270 return nil, &googleapi.Error{ 1271 Code: res.StatusCode, 1272 Header: res.Header, 1273 } 1274 } 1275 if err != nil { 1276 return nil, err 1277 } 1278 defer googleapi.CloseBody(res) 1279 if err := googleapi.CheckResponse(res); err != nil { 1280 return nil, err 1281 } 1282 ret := &Operation{ 1283 ServerResponse: googleapi.ServerResponse{ 1284 Header: res.Header, 1285 HTTPStatusCode: res.StatusCode, 1286 }, 1287 } 1288 target := &ret 1289 if err := gensupport.DecodeResponse(target, res); err != nil { 1290 return nil, err 1291 } 1292 return ret, nil 1293 // { 1294 // "description": "Inserts and starts a new update.", 1295 // "httpMethod": "POST", 1296 // "id": "replicapoolupdater.rollingUpdates.insert", 1297 // "parameterOrder": [ 1298 // "project", 1299 // "zone" 1300 // ], 1301 // "parameters": { 1302 // "project": { 1303 // "description": "The Google Developers Console project name.", 1304 // "location": "path", 1305 // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", 1306 // "required": true, 1307 // "type": "string" 1308 // }, 1309 // "zone": { 1310 // "description": "The name of the zone in which the update's target resides.", 1311 // "location": "path", 1312 // "required": true, 1313 // "type": "string" 1314 // } 1315 // }, 1316 // "path": "{project}/zones/{zone}/rollingUpdates", 1317 // "request": { 1318 // "$ref": "RollingUpdate" 1319 // }, 1320 // "response": { 1321 // "$ref": "Operation" 1322 // }, 1323 // "scopes": [ 1324 // "https://www.googleapis.com/auth/cloud-platform", 1325 // "https://www.googleapis.com/auth/replicapool" 1326 // ] 1327 // } 1328 1329} 1330 1331// method id "replicapoolupdater.rollingUpdates.list": 1332 1333type RollingUpdatesListCall struct { 1334 s *Service 1335 project string 1336 zone string 1337 urlParams_ gensupport.URLParams 1338 ifNoneMatch_ string 1339 ctx_ context.Context 1340 header_ http.Header 1341} 1342 1343// List: Lists recent updates for a given managed instance group, in 1344// reverse chronological order and paginated format. 1345// For details, see https://cloud.google.com/compute/docs/instance-groups/manager/#getlistrollingupdate 1346func (r *RollingUpdatesService) List(project string, zone string) *RollingUpdatesListCall { 1347 c := &RollingUpdatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 1348 c.project = project 1349 c.zone = zone 1350 return c 1351} 1352 1353// Filter sets the optional parameter "filter": Filter expression for 1354// filtering listed resources. 1355func (c *RollingUpdatesListCall) Filter(filter string) *RollingUpdatesListCall { 1356 c.urlParams_.Set("filter", filter) 1357 return c 1358} 1359 1360// MaxResults sets the optional parameter "maxResults": Maximum count of 1361// results to be returned. Maximum value is 500 and default value is 1362// 500. 1363func (c *RollingUpdatesListCall) MaxResults(maxResults int64) *RollingUpdatesListCall { 1364 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 1365 return c 1366} 1367 1368// PageToken sets the optional parameter "pageToken": Tag returned by a 1369// previous list request truncated by maxResults. Used to continue a 1370// previous list request. 1371func (c *RollingUpdatesListCall) PageToken(pageToken string) *RollingUpdatesListCall { 1372 c.urlParams_.Set("pageToken", pageToken) 1373 return c 1374} 1375 1376// Fields allows partial responses to be retrieved. See 1377// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 1378// for more information. 1379func (c *RollingUpdatesListCall) Fields(s ...googleapi.Field) *RollingUpdatesListCall { 1380 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 1381 return c 1382} 1383 1384// IfNoneMatch sets the optional parameter which makes the operation 1385// fail if the object's ETag matches the given value. This is useful for 1386// getting updates only after the object has changed since the last 1387// request. Use googleapi.IsNotModified to check whether the response 1388// error from Do is the result of In-None-Match. 1389func (c *RollingUpdatesListCall) IfNoneMatch(entityTag string) *RollingUpdatesListCall { 1390 c.ifNoneMatch_ = entityTag 1391 return c 1392} 1393 1394// Context sets the context to be used in this call's Do method. Any 1395// pending HTTP request will be aborted if the provided context is 1396// canceled. 1397func (c *RollingUpdatesListCall) Context(ctx context.Context) *RollingUpdatesListCall { 1398 c.ctx_ = ctx 1399 return c 1400} 1401 1402// Header returns an http.Header that can be modified by the caller to 1403// add HTTP headers to the request. 1404func (c *RollingUpdatesListCall) Header() http.Header { 1405 if c.header_ == nil { 1406 c.header_ = make(http.Header) 1407 } 1408 return c.header_ 1409} 1410 1411func (c *RollingUpdatesListCall) doRequest(alt string) (*http.Response, error) { 1412 reqHeaders := make(http.Header) 1413 reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203") 1414 for k, v := range c.header_ { 1415 reqHeaders[k] = v 1416 } 1417 reqHeaders.Set("User-Agent", c.s.userAgent()) 1418 if c.ifNoneMatch_ != "" { 1419 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 1420 } 1421 var body io.Reader = nil 1422 c.urlParams_.Set("alt", alt) 1423 c.urlParams_.Set("prettyPrint", "false") 1424 urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/rollingUpdates") 1425 urls += "?" + c.urlParams_.Encode() 1426 req, err := http.NewRequest("GET", urls, body) 1427 if err != nil { 1428 return nil, err 1429 } 1430 req.Header = reqHeaders 1431 googleapi.Expand(req.URL, map[string]string{ 1432 "project": c.project, 1433 "zone": c.zone, 1434 }) 1435 return gensupport.SendRequest(c.ctx_, c.s.client, req) 1436} 1437 1438// Do executes the "replicapoolupdater.rollingUpdates.list" call. 1439// Exactly one of *RollingUpdateList or error will be non-nil. Any 1440// non-2xx status code is an error. Response headers are in either 1441// *RollingUpdateList.ServerResponse.Header or (if a response was 1442// returned at all) in error.(*googleapi.Error).Header. Use 1443// googleapi.IsNotModified to check whether the returned error was 1444// because http.StatusNotModified was returned. 1445func (c *RollingUpdatesListCall) Do(opts ...googleapi.CallOption) (*RollingUpdateList, error) { 1446 gensupport.SetOptions(c.urlParams_, opts...) 1447 res, err := c.doRequest("json") 1448 if res != nil && res.StatusCode == http.StatusNotModified { 1449 if res.Body != nil { 1450 res.Body.Close() 1451 } 1452 return nil, &googleapi.Error{ 1453 Code: res.StatusCode, 1454 Header: res.Header, 1455 } 1456 } 1457 if err != nil { 1458 return nil, err 1459 } 1460 defer googleapi.CloseBody(res) 1461 if err := googleapi.CheckResponse(res); err != nil { 1462 return nil, err 1463 } 1464 ret := &RollingUpdateList{ 1465 ServerResponse: googleapi.ServerResponse{ 1466 Header: res.Header, 1467 HTTPStatusCode: res.StatusCode, 1468 }, 1469 } 1470 target := &ret 1471 if err := gensupport.DecodeResponse(target, res); err != nil { 1472 return nil, err 1473 } 1474 return ret, nil 1475 // { 1476 // "description": "Lists recent updates for a given managed instance group, in reverse chronological order and paginated format.", 1477 // "httpMethod": "GET", 1478 // "id": "replicapoolupdater.rollingUpdates.list", 1479 // "parameterOrder": [ 1480 // "project", 1481 // "zone" 1482 // ], 1483 // "parameters": { 1484 // "filter": { 1485 // "description": "Optional. Filter expression for filtering listed resources.", 1486 // "location": "query", 1487 // "type": "string" 1488 // }, 1489 // "maxResults": { 1490 // "default": "500", 1491 // "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", 1492 // "format": "uint32", 1493 // "location": "query", 1494 // "maximum": "500", 1495 // "minimum": "0", 1496 // "type": "integer" 1497 // }, 1498 // "pageToken": { 1499 // "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", 1500 // "location": "query", 1501 // "type": "string" 1502 // }, 1503 // "project": { 1504 // "description": "The Google Developers Console project name.", 1505 // "location": "path", 1506 // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", 1507 // "required": true, 1508 // "type": "string" 1509 // }, 1510 // "zone": { 1511 // "description": "The name of the zone in which the update's target resides.", 1512 // "location": "path", 1513 // "required": true, 1514 // "type": "string" 1515 // } 1516 // }, 1517 // "path": "{project}/zones/{zone}/rollingUpdates", 1518 // "response": { 1519 // "$ref": "RollingUpdateList" 1520 // }, 1521 // "scopes": [ 1522 // "https://www.googleapis.com/auth/cloud-platform", 1523 // "https://www.googleapis.com/auth/cloud-platform.read-only", 1524 // "https://www.googleapis.com/auth/replicapool", 1525 // "https://www.googleapis.com/auth/replicapool.readonly" 1526 // ] 1527 // } 1528 1529} 1530 1531// Pages invokes f for each page of results. 1532// A non-nil error returned from f will halt the iteration. 1533// The provided context supersedes any context provided to the Context method. 1534func (c *RollingUpdatesListCall) Pages(ctx context.Context, f func(*RollingUpdateList) error) error { 1535 c.ctx_ = ctx 1536 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 1537 for { 1538 x, err := c.Do() 1539 if err != nil { 1540 return err 1541 } 1542 if err := f(x); err != nil { 1543 return err 1544 } 1545 if x.NextPageToken == "" { 1546 return nil 1547 } 1548 c.PageToken(x.NextPageToken) 1549 } 1550} 1551 1552// method id "replicapoolupdater.rollingUpdates.listInstanceUpdates": 1553 1554type RollingUpdatesListInstanceUpdatesCall struct { 1555 s *Service 1556 project string 1557 zone string 1558 rollingUpdate string 1559 urlParams_ gensupport.URLParams 1560 ifNoneMatch_ string 1561 ctx_ context.Context 1562 header_ http.Header 1563} 1564 1565// ListInstanceUpdates: Lists the current status for each instance 1566// within a given update. 1567// For details, see https://cloud.google.com/compute/docs/instance-groups/manager/#getlistrollingupdate 1568func (r *RollingUpdatesService) ListInstanceUpdates(project string, zone string, rollingUpdate string) *RollingUpdatesListInstanceUpdatesCall { 1569 c := &RollingUpdatesListInstanceUpdatesCall{s: r.s, urlParams_: make(gensupport.URLParams)} 1570 c.project = project 1571 c.zone = zone 1572 c.rollingUpdate = rollingUpdate 1573 return c 1574} 1575 1576// Filter sets the optional parameter "filter": Filter expression for 1577// filtering listed resources. 1578func (c *RollingUpdatesListInstanceUpdatesCall) Filter(filter string) *RollingUpdatesListInstanceUpdatesCall { 1579 c.urlParams_.Set("filter", filter) 1580 return c 1581} 1582 1583// MaxResults sets the optional parameter "maxResults": Maximum count of 1584// results to be returned. Maximum value is 500 and default value is 1585// 500. 1586func (c *RollingUpdatesListInstanceUpdatesCall) MaxResults(maxResults int64) *RollingUpdatesListInstanceUpdatesCall { 1587 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 1588 return c 1589} 1590 1591// PageToken sets the optional parameter "pageToken": Tag returned by a 1592// previous list request truncated by maxResults. Used to continue a 1593// previous list request. 1594func (c *RollingUpdatesListInstanceUpdatesCall) PageToken(pageToken string) *RollingUpdatesListInstanceUpdatesCall { 1595 c.urlParams_.Set("pageToken", pageToken) 1596 return c 1597} 1598 1599// Fields allows partial responses to be retrieved. See 1600// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 1601// for more information. 1602func (c *RollingUpdatesListInstanceUpdatesCall) Fields(s ...googleapi.Field) *RollingUpdatesListInstanceUpdatesCall { 1603 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 1604 return c 1605} 1606 1607// IfNoneMatch sets the optional parameter which makes the operation 1608// fail if the object's ETag matches the given value. This is useful for 1609// getting updates only after the object has changed since the last 1610// request. Use googleapi.IsNotModified to check whether the response 1611// error from Do is the result of In-None-Match. 1612func (c *RollingUpdatesListInstanceUpdatesCall) IfNoneMatch(entityTag string) *RollingUpdatesListInstanceUpdatesCall { 1613 c.ifNoneMatch_ = entityTag 1614 return c 1615} 1616 1617// Context sets the context to be used in this call's Do method. Any 1618// pending HTTP request will be aborted if the provided context is 1619// canceled. 1620func (c *RollingUpdatesListInstanceUpdatesCall) Context(ctx context.Context) *RollingUpdatesListInstanceUpdatesCall { 1621 c.ctx_ = ctx 1622 return c 1623} 1624 1625// Header returns an http.Header that can be modified by the caller to 1626// add HTTP headers to the request. 1627func (c *RollingUpdatesListInstanceUpdatesCall) Header() http.Header { 1628 if c.header_ == nil { 1629 c.header_ = make(http.Header) 1630 } 1631 return c.header_ 1632} 1633 1634func (c *RollingUpdatesListInstanceUpdatesCall) doRequest(alt string) (*http.Response, error) { 1635 reqHeaders := make(http.Header) 1636 reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203") 1637 for k, v := range c.header_ { 1638 reqHeaders[k] = v 1639 } 1640 reqHeaders.Set("User-Agent", c.s.userAgent()) 1641 if c.ifNoneMatch_ != "" { 1642 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 1643 } 1644 var body io.Reader = nil 1645 c.urlParams_.Set("alt", alt) 1646 c.urlParams_.Set("prettyPrint", "false") 1647 urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/instanceUpdates") 1648 urls += "?" + c.urlParams_.Encode() 1649 req, err := http.NewRequest("GET", urls, body) 1650 if err != nil { 1651 return nil, err 1652 } 1653 req.Header = reqHeaders 1654 googleapi.Expand(req.URL, map[string]string{ 1655 "project": c.project, 1656 "zone": c.zone, 1657 "rollingUpdate": c.rollingUpdate, 1658 }) 1659 return gensupport.SendRequest(c.ctx_, c.s.client, req) 1660} 1661 1662// Do executes the "replicapoolupdater.rollingUpdates.listInstanceUpdates" call. 1663// Exactly one of *InstanceUpdateList or error will be non-nil. Any 1664// non-2xx status code is an error. Response headers are in either 1665// *InstanceUpdateList.ServerResponse.Header or (if a response was 1666// returned at all) in error.(*googleapi.Error).Header. Use 1667// googleapi.IsNotModified to check whether the returned error was 1668// because http.StatusNotModified was returned. 1669func (c *RollingUpdatesListInstanceUpdatesCall) Do(opts ...googleapi.CallOption) (*InstanceUpdateList, error) { 1670 gensupport.SetOptions(c.urlParams_, opts...) 1671 res, err := c.doRequest("json") 1672 if res != nil && res.StatusCode == http.StatusNotModified { 1673 if res.Body != nil { 1674 res.Body.Close() 1675 } 1676 return nil, &googleapi.Error{ 1677 Code: res.StatusCode, 1678 Header: res.Header, 1679 } 1680 } 1681 if err != nil { 1682 return nil, err 1683 } 1684 defer googleapi.CloseBody(res) 1685 if err := googleapi.CheckResponse(res); err != nil { 1686 return nil, err 1687 } 1688 ret := &InstanceUpdateList{ 1689 ServerResponse: googleapi.ServerResponse{ 1690 Header: res.Header, 1691 HTTPStatusCode: res.StatusCode, 1692 }, 1693 } 1694 target := &ret 1695 if err := gensupport.DecodeResponse(target, res); err != nil { 1696 return nil, err 1697 } 1698 return ret, nil 1699 // { 1700 // "description": "Lists the current status for each instance within a given update.", 1701 // "httpMethod": "GET", 1702 // "id": "replicapoolupdater.rollingUpdates.listInstanceUpdates", 1703 // "parameterOrder": [ 1704 // "project", 1705 // "zone", 1706 // "rollingUpdate" 1707 // ], 1708 // "parameters": { 1709 // "filter": { 1710 // "description": "Optional. Filter expression for filtering listed resources.", 1711 // "location": "query", 1712 // "type": "string" 1713 // }, 1714 // "maxResults": { 1715 // "default": "500", 1716 // "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", 1717 // "format": "uint32", 1718 // "location": "query", 1719 // "maximum": "500", 1720 // "minimum": "0", 1721 // "type": "integer" 1722 // }, 1723 // "pageToken": { 1724 // "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", 1725 // "location": "query", 1726 // "type": "string" 1727 // }, 1728 // "project": { 1729 // "description": "The Google Developers Console project name.", 1730 // "location": "path", 1731 // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", 1732 // "required": true, 1733 // "type": "string" 1734 // }, 1735 // "rollingUpdate": { 1736 // "description": "The name of the update.", 1737 // "location": "path", 1738 // "required": true, 1739 // "type": "string" 1740 // }, 1741 // "zone": { 1742 // "description": "The name of the zone in which the update's target resides.", 1743 // "location": "path", 1744 // "required": true, 1745 // "type": "string" 1746 // } 1747 // }, 1748 // "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/instanceUpdates", 1749 // "response": { 1750 // "$ref": "InstanceUpdateList" 1751 // }, 1752 // "scopes": [ 1753 // "https://www.googleapis.com/auth/cloud-platform", 1754 // "https://www.googleapis.com/auth/cloud-platform.read-only", 1755 // "https://www.googleapis.com/auth/replicapool", 1756 // "https://www.googleapis.com/auth/replicapool.readonly" 1757 // ] 1758 // } 1759 1760} 1761 1762// Pages invokes f for each page of results. 1763// A non-nil error returned from f will halt the iteration. 1764// The provided context supersedes any context provided to the Context method. 1765func (c *RollingUpdatesListInstanceUpdatesCall) Pages(ctx context.Context, f func(*InstanceUpdateList) error) error { 1766 c.ctx_ = ctx 1767 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 1768 for { 1769 x, err := c.Do() 1770 if err != nil { 1771 return err 1772 } 1773 if err := f(x); err != nil { 1774 return err 1775 } 1776 if x.NextPageToken == "" { 1777 return nil 1778 } 1779 c.PageToken(x.NextPageToken) 1780 } 1781} 1782 1783// method id "replicapoolupdater.rollingUpdates.pause": 1784 1785type RollingUpdatesPauseCall struct { 1786 s *Service 1787 project string 1788 zone string 1789 rollingUpdate string 1790 urlParams_ gensupport.URLParams 1791 ctx_ context.Context 1792 header_ http.Header 1793} 1794 1795// Pause: Pauses the update in state from ROLLING_FORWARD or 1796// ROLLING_BACK. Has no effect if invoked when the state of the update 1797// is PAUSED. 1798// For details, see https://cloud.google.com/compute/docs/instance-groups/manager/#pausing_a_rolling_update 1799func (r *RollingUpdatesService) Pause(project string, zone string, rollingUpdate string) *RollingUpdatesPauseCall { 1800 c := &RollingUpdatesPauseCall{s: r.s, urlParams_: make(gensupport.URLParams)} 1801 c.project = project 1802 c.zone = zone 1803 c.rollingUpdate = rollingUpdate 1804 return c 1805} 1806 1807// Fields allows partial responses to be retrieved. See 1808// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 1809// for more information. 1810func (c *RollingUpdatesPauseCall) Fields(s ...googleapi.Field) *RollingUpdatesPauseCall { 1811 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 1812 return c 1813} 1814 1815// Context sets the context to be used in this call's Do method. Any 1816// pending HTTP request will be aborted if the provided context is 1817// canceled. 1818func (c *RollingUpdatesPauseCall) Context(ctx context.Context) *RollingUpdatesPauseCall { 1819 c.ctx_ = ctx 1820 return c 1821} 1822 1823// Header returns an http.Header that can be modified by the caller to 1824// add HTTP headers to the request. 1825func (c *RollingUpdatesPauseCall) Header() http.Header { 1826 if c.header_ == nil { 1827 c.header_ = make(http.Header) 1828 } 1829 return c.header_ 1830} 1831 1832func (c *RollingUpdatesPauseCall) doRequest(alt string) (*http.Response, error) { 1833 reqHeaders := make(http.Header) 1834 reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203") 1835 for k, v := range c.header_ { 1836 reqHeaders[k] = v 1837 } 1838 reqHeaders.Set("User-Agent", c.s.userAgent()) 1839 var body io.Reader = nil 1840 c.urlParams_.Set("alt", alt) 1841 c.urlParams_.Set("prettyPrint", "false") 1842 urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/pause") 1843 urls += "?" + c.urlParams_.Encode() 1844 req, err := http.NewRequest("POST", urls, body) 1845 if err != nil { 1846 return nil, err 1847 } 1848 req.Header = reqHeaders 1849 googleapi.Expand(req.URL, map[string]string{ 1850 "project": c.project, 1851 "zone": c.zone, 1852 "rollingUpdate": c.rollingUpdate, 1853 }) 1854 return gensupport.SendRequest(c.ctx_, c.s.client, req) 1855} 1856 1857// Do executes the "replicapoolupdater.rollingUpdates.pause" call. 1858// Exactly one of *Operation or error will be non-nil. Any non-2xx 1859// status code is an error. Response headers are in either 1860// *Operation.ServerResponse.Header or (if a response was returned at 1861// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 1862// to check whether the returned error was because 1863// http.StatusNotModified was returned. 1864func (c *RollingUpdatesPauseCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 1865 gensupport.SetOptions(c.urlParams_, opts...) 1866 res, err := c.doRequest("json") 1867 if res != nil && res.StatusCode == http.StatusNotModified { 1868 if res.Body != nil { 1869 res.Body.Close() 1870 } 1871 return nil, &googleapi.Error{ 1872 Code: res.StatusCode, 1873 Header: res.Header, 1874 } 1875 } 1876 if err != nil { 1877 return nil, err 1878 } 1879 defer googleapi.CloseBody(res) 1880 if err := googleapi.CheckResponse(res); err != nil { 1881 return nil, err 1882 } 1883 ret := &Operation{ 1884 ServerResponse: googleapi.ServerResponse{ 1885 Header: res.Header, 1886 HTTPStatusCode: res.StatusCode, 1887 }, 1888 } 1889 target := &ret 1890 if err := gensupport.DecodeResponse(target, res); err != nil { 1891 return nil, err 1892 } 1893 return ret, nil 1894 // { 1895 // "description": "Pauses the update in state from ROLLING_FORWARD or ROLLING_BACK. Has no effect if invoked when the state of the update is PAUSED.", 1896 // "httpMethod": "POST", 1897 // "id": "replicapoolupdater.rollingUpdates.pause", 1898 // "parameterOrder": [ 1899 // "project", 1900 // "zone", 1901 // "rollingUpdate" 1902 // ], 1903 // "parameters": { 1904 // "project": { 1905 // "description": "The Google Developers Console project name.", 1906 // "location": "path", 1907 // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", 1908 // "required": true, 1909 // "type": "string" 1910 // }, 1911 // "rollingUpdate": { 1912 // "description": "The name of the update.", 1913 // "location": "path", 1914 // "required": true, 1915 // "type": "string" 1916 // }, 1917 // "zone": { 1918 // "description": "The name of the zone in which the update's target resides.", 1919 // "location": "path", 1920 // "required": true, 1921 // "type": "string" 1922 // } 1923 // }, 1924 // "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/pause", 1925 // "response": { 1926 // "$ref": "Operation" 1927 // }, 1928 // "scopes": [ 1929 // "https://www.googleapis.com/auth/cloud-platform", 1930 // "https://www.googleapis.com/auth/replicapool" 1931 // ] 1932 // } 1933 1934} 1935 1936// method id "replicapoolupdater.rollingUpdates.resume": 1937 1938type RollingUpdatesResumeCall struct { 1939 s *Service 1940 project string 1941 zone string 1942 rollingUpdate string 1943 urlParams_ gensupport.URLParams 1944 ctx_ context.Context 1945 header_ http.Header 1946} 1947 1948// Resume: Continues an update in PAUSED state. Has no effect if invoked 1949// when the state of the update is ROLLED_OUT. 1950// For details, see https://cloud.google.com/compute/docs/instance-groups/manager/#continuerollingupdate 1951func (r *RollingUpdatesService) Resume(project string, zone string, rollingUpdate string) *RollingUpdatesResumeCall { 1952 c := &RollingUpdatesResumeCall{s: r.s, urlParams_: make(gensupport.URLParams)} 1953 c.project = project 1954 c.zone = zone 1955 c.rollingUpdate = rollingUpdate 1956 return c 1957} 1958 1959// Fields allows partial responses to be retrieved. See 1960// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 1961// for more information. 1962func (c *RollingUpdatesResumeCall) Fields(s ...googleapi.Field) *RollingUpdatesResumeCall { 1963 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 1964 return c 1965} 1966 1967// Context sets the context to be used in this call's Do method. Any 1968// pending HTTP request will be aborted if the provided context is 1969// canceled. 1970func (c *RollingUpdatesResumeCall) Context(ctx context.Context) *RollingUpdatesResumeCall { 1971 c.ctx_ = ctx 1972 return c 1973} 1974 1975// Header returns an http.Header that can be modified by the caller to 1976// add HTTP headers to the request. 1977func (c *RollingUpdatesResumeCall) Header() http.Header { 1978 if c.header_ == nil { 1979 c.header_ = make(http.Header) 1980 } 1981 return c.header_ 1982} 1983 1984func (c *RollingUpdatesResumeCall) doRequest(alt string) (*http.Response, error) { 1985 reqHeaders := make(http.Header) 1986 reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203") 1987 for k, v := range c.header_ { 1988 reqHeaders[k] = v 1989 } 1990 reqHeaders.Set("User-Agent", c.s.userAgent()) 1991 var body io.Reader = nil 1992 c.urlParams_.Set("alt", alt) 1993 c.urlParams_.Set("prettyPrint", "false") 1994 urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/resume") 1995 urls += "?" + c.urlParams_.Encode() 1996 req, err := http.NewRequest("POST", urls, body) 1997 if err != nil { 1998 return nil, err 1999 } 2000 req.Header = reqHeaders 2001 googleapi.Expand(req.URL, map[string]string{ 2002 "project": c.project, 2003 "zone": c.zone, 2004 "rollingUpdate": c.rollingUpdate, 2005 }) 2006 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2007} 2008 2009// Do executes the "replicapoolupdater.rollingUpdates.resume" call. 2010// Exactly one of *Operation or error will be non-nil. Any non-2xx 2011// status code is an error. Response headers are in either 2012// *Operation.ServerResponse.Header or (if a response was returned at 2013// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 2014// to check whether the returned error was because 2015// http.StatusNotModified was returned. 2016func (c *RollingUpdatesResumeCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 2017 gensupport.SetOptions(c.urlParams_, opts...) 2018 res, err := c.doRequest("json") 2019 if res != nil && res.StatusCode == http.StatusNotModified { 2020 if res.Body != nil { 2021 res.Body.Close() 2022 } 2023 return nil, &googleapi.Error{ 2024 Code: res.StatusCode, 2025 Header: res.Header, 2026 } 2027 } 2028 if err != nil { 2029 return nil, err 2030 } 2031 defer googleapi.CloseBody(res) 2032 if err := googleapi.CheckResponse(res); err != nil { 2033 return nil, err 2034 } 2035 ret := &Operation{ 2036 ServerResponse: googleapi.ServerResponse{ 2037 Header: res.Header, 2038 HTTPStatusCode: res.StatusCode, 2039 }, 2040 } 2041 target := &ret 2042 if err := gensupport.DecodeResponse(target, res); err != nil { 2043 return nil, err 2044 } 2045 return ret, nil 2046 // { 2047 // "description": "Continues an update in PAUSED state. Has no effect if invoked when the state of the update is ROLLED_OUT.", 2048 // "httpMethod": "POST", 2049 // "id": "replicapoolupdater.rollingUpdates.resume", 2050 // "parameterOrder": [ 2051 // "project", 2052 // "zone", 2053 // "rollingUpdate" 2054 // ], 2055 // "parameters": { 2056 // "project": { 2057 // "description": "The Google Developers Console project name.", 2058 // "location": "path", 2059 // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", 2060 // "required": true, 2061 // "type": "string" 2062 // }, 2063 // "rollingUpdate": { 2064 // "description": "The name of the update.", 2065 // "location": "path", 2066 // "required": true, 2067 // "type": "string" 2068 // }, 2069 // "zone": { 2070 // "description": "The name of the zone in which the update's target resides.", 2071 // "location": "path", 2072 // "required": true, 2073 // "type": "string" 2074 // } 2075 // }, 2076 // "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/resume", 2077 // "response": { 2078 // "$ref": "Operation" 2079 // }, 2080 // "scopes": [ 2081 // "https://www.googleapis.com/auth/cloud-platform", 2082 // "https://www.googleapis.com/auth/replicapool" 2083 // ] 2084 // } 2085 2086} 2087 2088// method id "replicapoolupdater.rollingUpdates.rollback": 2089 2090type RollingUpdatesRollbackCall struct { 2091 s *Service 2092 project string 2093 zone string 2094 rollingUpdate string 2095 urlParams_ gensupport.URLParams 2096 ctx_ context.Context 2097 header_ http.Header 2098} 2099 2100// Rollback: Rolls back the update in state from ROLLING_FORWARD or 2101// PAUSED. Has no effect if invoked when the state of the update is 2102// ROLLED_BACK. 2103// For details, see https://cloud.google.com/compute/docs/instance-groups/manager/#rollingbackupdate 2104func (r *RollingUpdatesService) Rollback(project string, zone string, rollingUpdate string) *RollingUpdatesRollbackCall { 2105 c := &RollingUpdatesRollbackCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2106 c.project = project 2107 c.zone = zone 2108 c.rollingUpdate = rollingUpdate 2109 return c 2110} 2111 2112// Fields allows partial responses to be retrieved. See 2113// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2114// for more information. 2115func (c *RollingUpdatesRollbackCall) Fields(s ...googleapi.Field) *RollingUpdatesRollbackCall { 2116 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2117 return c 2118} 2119 2120// Context sets the context to be used in this call's Do method. Any 2121// pending HTTP request will be aborted if the provided context is 2122// canceled. 2123func (c *RollingUpdatesRollbackCall) Context(ctx context.Context) *RollingUpdatesRollbackCall { 2124 c.ctx_ = ctx 2125 return c 2126} 2127 2128// Header returns an http.Header that can be modified by the caller to 2129// add HTTP headers to the request. 2130func (c *RollingUpdatesRollbackCall) Header() http.Header { 2131 if c.header_ == nil { 2132 c.header_ = make(http.Header) 2133 } 2134 return c.header_ 2135} 2136 2137func (c *RollingUpdatesRollbackCall) doRequest(alt string) (*http.Response, error) { 2138 reqHeaders := make(http.Header) 2139 reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203") 2140 for k, v := range c.header_ { 2141 reqHeaders[k] = v 2142 } 2143 reqHeaders.Set("User-Agent", c.s.userAgent()) 2144 var body io.Reader = nil 2145 c.urlParams_.Set("alt", alt) 2146 c.urlParams_.Set("prettyPrint", "false") 2147 urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/rollback") 2148 urls += "?" + c.urlParams_.Encode() 2149 req, err := http.NewRequest("POST", urls, body) 2150 if err != nil { 2151 return nil, err 2152 } 2153 req.Header = reqHeaders 2154 googleapi.Expand(req.URL, map[string]string{ 2155 "project": c.project, 2156 "zone": c.zone, 2157 "rollingUpdate": c.rollingUpdate, 2158 }) 2159 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2160} 2161 2162// Do executes the "replicapoolupdater.rollingUpdates.rollback" call. 2163// Exactly one of *Operation or error will be non-nil. Any non-2xx 2164// status code is an error. Response headers are in either 2165// *Operation.ServerResponse.Header or (if a response was returned at 2166// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 2167// to check whether the returned error was because 2168// http.StatusNotModified was returned. 2169func (c *RollingUpdatesRollbackCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 2170 gensupport.SetOptions(c.urlParams_, opts...) 2171 res, err := c.doRequest("json") 2172 if res != nil && res.StatusCode == http.StatusNotModified { 2173 if res.Body != nil { 2174 res.Body.Close() 2175 } 2176 return nil, &googleapi.Error{ 2177 Code: res.StatusCode, 2178 Header: res.Header, 2179 } 2180 } 2181 if err != nil { 2182 return nil, err 2183 } 2184 defer googleapi.CloseBody(res) 2185 if err := googleapi.CheckResponse(res); err != nil { 2186 return nil, err 2187 } 2188 ret := &Operation{ 2189 ServerResponse: googleapi.ServerResponse{ 2190 Header: res.Header, 2191 HTTPStatusCode: res.StatusCode, 2192 }, 2193 } 2194 target := &ret 2195 if err := gensupport.DecodeResponse(target, res); err != nil { 2196 return nil, err 2197 } 2198 return ret, nil 2199 // { 2200 // "description": "Rolls back the update in state from ROLLING_FORWARD or PAUSED. Has no effect if invoked when the state of the update is ROLLED_BACK.", 2201 // "httpMethod": "POST", 2202 // "id": "replicapoolupdater.rollingUpdates.rollback", 2203 // "parameterOrder": [ 2204 // "project", 2205 // "zone", 2206 // "rollingUpdate" 2207 // ], 2208 // "parameters": { 2209 // "project": { 2210 // "description": "The Google Developers Console project name.", 2211 // "location": "path", 2212 // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", 2213 // "required": true, 2214 // "type": "string" 2215 // }, 2216 // "rollingUpdate": { 2217 // "description": "The name of the update.", 2218 // "location": "path", 2219 // "required": true, 2220 // "type": "string" 2221 // }, 2222 // "zone": { 2223 // "description": "The name of the zone in which the update's target resides.", 2224 // "location": "path", 2225 // "required": true, 2226 // "type": "string" 2227 // } 2228 // }, 2229 // "path": "{project}/zones/{zone}/rollingUpdates/{rollingUpdate}/rollback", 2230 // "response": { 2231 // "$ref": "Operation" 2232 // }, 2233 // "scopes": [ 2234 // "https://www.googleapis.com/auth/cloud-platform", 2235 // "https://www.googleapis.com/auth/replicapool" 2236 // ] 2237 // } 2238 2239} 2240 2241// method id "replicapoolupdater.zoneOperations.get": 2242 2243type ZoneOperationsGetCall struct { 2244 s *Service 2245 project string 2246 zone string 2247 operation string 2248 urlParams_ gensupport.URLParams 2249 ifNoneMatch_ string 2250 ctx_ context.Context 2251 header_ http.Header 2252} 2253 2254// Get: Retrieves the specified zone-specific operation resource. 2255func (r *ZoneOperationsService) Get(project string, zone string, operation string) *ZoneOperationsGetCall { 2256 c := &ZoneOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2257 c.project = project 2258 c.zone = zone 2259 c.operation = operation 2260 return c 2261} 2262 2263// Fields allows partial responses to be retrieved. See 2264// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2265// for more information. 2266func (c *ZoneOperationsGetCall) Fields(s ...googleapi.Field) *ZoneOperationsGetCall { 2267 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2268 return c 2269} 2270 2271// IfNoneMatch sets the optional parameter which makes the operation 2272// fail if the object's ETag matches the given value. This is useful for 2273// getting updates only after the object has changed since the last 2274// request. Use googleapi.IsNotModified to check whether the response 2275// error from Do is the result of In-None-Match. 2276func (c *ZoneOperationsGetCall) IfNoneMatch(entityTag string) *ZoneOperationsGetCall { 2277 c.ifNoneMatch_ = entityTag 2278 return c 2279} 2280 2281// Context sets the context to be used in this call's Do method. Any 2282// pending HTTP request will be aborted if the provided context is 2283// canceled. 2284func (c *ZoneOperationsGetCall) Context(ctx context.Context) *ZoneOperationsGetCall { 2285 c.ctx_ = ctx 2286 return c 2287} 2288 2289// Header returns an http.Header that can be modified by the caller to 2290// add HTTP headers to the request. 2291func (c *ZoneOperationsGetCall) Header() http.Header { 2292 if c.header_ == nil { 2293 c.header_ = make(http.Header) 2294 } 2295 return c.header_ 2296} 2297 2298func (c *ZoneOperationsGetCall) doRequest(alt string) (*http.Response, error) { 2299 reqHeaders := make(http.Header) 2300 reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203") 2301 for k, v := range c.header_ { 2302 reqHeaders[k] = v 2303 } 2304 reqHeaders.Set("User-Agent", c.s.userAgent()) 2305 if c.ifNoneMatch_ != "" { 2306 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 2307 } 2308 var body io.Reader = nil 2309 c.urlParams_.Set("alt", alt) 2310 c.urlParams_.Set("prettyPrint", "false") 2311 urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/operations/{operation}") 2312 urls += "?" + c.urlParams_.Encode() 2313 req, err := http.NewRequest("GET", urls, body) 2314 if err != nil { 2315 return nil, err 2316 } 2317 req.Header = reqHeaders 2318 googleapi.Expand(req.URL, map[string]string{ 2319 "project": c.project, 2320 "zone": c.zone, 2321 "operation": c.operation, 2322 }) 2323 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2324} 2325 2326// Do executes the "replicapoolupdater.zoneOperations.get" call. 2327// Exactly one of *Operation or error will be non-nil. Any non-2xx 2328// status code is an error. Response headers are in either 2329// *Operation.ServerResponse.Header or (if a response was returned at 2330// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 2331// to check whether the returned error was because 2332// http.StatusNotModified was returned. 2333func (c *ZoneOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 2334 gensupport.SetOptions(c.urlParams_, opts...) 2335 res, err := c.doRequest("json") 2336 if res != nil && res.StatusCode == http.StatusNotModified { 2337 if res.Body != nil { 2338 res.Body.Close() 2339 } 2340 return nil, &googleapi.Error{ 2341 Code: res.StatusCode, 2342 Header: res.Header, 2343 } 2344 } 2345 if err != nil { 2346 return nil, err 2347 } 2348 defer googleapi.CloseBody(res) 2349 if err := googleapi.CheckResponse(res); err != nil { 2350 return nil, err 2351 } 2352 ret := &Operation{ 2353 ServerResponse: googleapi.ServerResponse{ 2354 Header: res.Header, 2355 HTTPStatusCode: res.StatusCode, 2356 }, 2357 } 2358 target := &ret 2359 if err := gensupport.DecodeResponse(target, res); err != nil { 2360 return nil, err 2361 } 2362 return ret, nil 2363 // { 2364 // "description": "Retrieves the specified zone-specific operation resource.", 2365 // "httpMethod": "GET", 2366 // "id": "replicapoolupdater.zoneOperations.get", 2367 // "parameterOrder": [ 2368 // "project", 2369 // "zone", 2370 // "operation" 2371 // ], 2372 // "parameters": { 2373 // "operation": { 2374 // "description": "Name of the operation resource to return.", 2375 // "location": "path", 2376 // "required": true, 2377 // "type": "string" 2378 // }, 2379 // "project": { 2380 // "description": "Name of the project scoping this request.", 2381 // "location": "path", 2382 // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", 2383 // "required": true, 2384 // "type": "string" 2385 // }, 2386 // "zone": { 2387 // "description": "Name of the zone scoping this request.", 2388 // "location": "path", 2389 // "required": true, 2390 // "type": "string" 2391 // } 2392 // }, 2393 // "path": "{project}/zones/{zone}/operations/{operation}", 2394 // "response": { 2395 // "$ref": "Operation" 2396 // }, 2397 // "scopes": [ 2398 // "https://www.googleapis.com/auth/cloud-platform", 2399 // "https://www.googleapis.com/auth/replicapool" 2400 // ] 2401 // } 2402 2403} 2404 2405// method id "replicapoolupdater.zoneOperations.list": 2406 2407type ZoneOperationsListCall struct { 2408 s *Service 2409 project string 2410 zone string 2411 urlParams_ gensupport.URLParams 2412 ifNoneMatch_ string 2413 ctx_ context.Context 2414 header_ http.Header 2415} 2416 2417// List: Retrieves the list of Operation resources contained within the 2418// specified zone. 2419func (r *ZoneOperationsService) List(project string, zone string) *ZoneOperationsListCall { 2420 c := &ZoneOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2421 c.project = project 2422 c.zone = zone 2423 return c 2424} 2425 2426// Filter sets the optional parameter "filter": Filter expression for 2427// filtering listed resources. 2428func (c *ZoneOperationsListCall) Filter(filter string) *ZoneOperationsListCall { 2429 c.urlParams_.Set("filter", filter) 2430 return c 2431} 2432 2433// MaxResults sets the optional parameter "maxResults": Maximum count of 2434// results to be returned. Maximum value is 500 and default value is 2435// 500. 2436func (c *ZoneOperationsListCall) MaxResults(maxResults int64) *ZoneOperationsListCall { 2437 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 2438 return c 2439} 2440 2441// PageToken sets the optional parameter "pageToken": Tag returned by a 2442// previous list request truncated by maxResults. Used to continue a 2443// previous list request. 2444func (c *ZoneOperationsListCall) PageToken(pageToken string) *ZoneOperationsListCall { 2445 c.urlParams_.Set("pageToken", pageToken) 2446 return c 2447} 2448 2449// Fields allows partial responses to be retrieved. See 2450// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2451// for more information. 2452func (c *ZoneOperationsListCall) Fields(s ...googleapi.Field) *ZoneOperationsListCall { 2453 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2454 return c 2455} 2456 2457// IfNoneMatch sets the optional parameter which makes the operation 2458// fail if the object's ETag matches the given value. This is useful for 2459// getting updates only after the object has changed since the last 2460// request. Use googleapi.IsNotModified to check whether the response 2461// error from Do is the result of In-None-Match. 2462func (c *ZoneOperationsListCall) IfNoneMatch(entityTag string) *ZoneOperationsListCall { 2463 c.ifNoneMatch_ = entityTag 2464 return c 2465} 2466 2467// Context sets the context to be used in this call's Do method. Any 2468// pending HTTP request will be aborted if the provided context is 2469// canceled. 2470func (c *ZoneOperationsListCall) Context(ctx context.Context) *ZoneOperationsListCall { 2471 c.ctx_ = ctx 2472 return c 2473} 2474 2475// Header returns an http.Header that can be modified by the caller to 2476// add HTTP headers to the request. 2477func (c *ZoneOperationsListCall) Header() http.Header { 2478 if c.header_ == nil { 2479 c.header_ = make(http.Header) 2480 } 2481 return c.header_ 2482} 2483 2484func (c *ZoneOperationsListCall) doRequest(alt string) (*http.Response, error) { 2485 reqHeaders := make(http.Header) 2486 reqHeaders.Set("x-goog-api-client", "gl-go/1.13.7 gdcl/20200203") 2487 for k, v := range c.header_ { 2488 reqHeaders[k] = v 2489 } 2490 reqHeaders.Set("User-Agent", c.s.userAgent()) 2491 if c.ifNoneMatch_ != "" { 2492 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 2493 } 2494 var body io.Reader = nil 2495 c.urlParams_.Set("alt", alt) 2496 c.urlParams_.Set("prettyPrint", "false") 2497 urls := googleapi.ResolveRelative(c.s.BasePath, "{project}/zones/{zone}/operations") 2498 urls += "?" + c.urlParams_.Encode() 2499 req, err := http.NewRequest("GET", urls, body) 2500 if err != nil { 2501 return nil, err 2502 } 2503 req.Header = reqHeaders 2504 googleapi.Expand(req.URL, map[string]string{ 2505 "project": c.project, 2506 "zone": c.zone, 2507 }) 2508 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2509} 2510 2511// Do executes the "replicapoolupdater.zoneOperations.list" call. 2512// Exactly one of *OperationList or error will be non-nil. Any non-2xx 2513// status code is an error. Response headers are in either 2514// *OperationList.ServerResponse.Header or (if a response was returned 2515// at all) in error.(*googleapi.Error).Header. Use 2516// googleapi.IsNotModified to check whether the returned error was 2517// because http.StatusNotModified was returned. 2518func (c *ZoneOperationsListCall) Do(opts ...googleapi.CallOption) (*OperationList, error) { 2519 gensupport.SetOptions(c.urlParams_, opts...) 2520 res, err := c.doRequest("json") 2521 if res != nil && res.StatusCode == http.StatusNotModified { 2522 if res.Body != nil { 2523 res.Body.Close() 2524 } 2525 return nil, &googleapi.Error{ 2526 Code: res.StatusCode, 2527 Header: res.Header, 2528 } 2529 } 2530 if err != nil { 2531 return nil, err 2532 } 2533 defer googleapi.CloseBody(res) 2534 if err := googleapi.CheckResponse(res); err != nil { 2535 return nil, err 2536 } 2537 ret := &OperationList{ 2538 ServerResponse: googleapi.ServerResponse{ 2539 Header: res.Header, 2540 HTTPStatusCode: res.StatusCode, 2541 }, 2542 } 2543 target := &ret 2544 if err := gensupport.DecodeResponse(target, res); err != nil { 2545 return nil, err 2546 } 2547 return ret, nil 2548 // { 2549 // "description": "Retrieves the list of Operation resources contained within the specified zone.", 2550 // "httpMethod": "GET", 2551 // "id": "replicapoolupdater.zoneOperations.list", 2552 // "parameterOrder": [ 2553 // "project", 2554 // "zone" 2555 // ], 2556 // "parameters": { 2557 // "filter": { 2558 // "description": "Optional. Filter expression for filtering listed resources.", 2559 // "location": "query", 2560 // "type": "string" 2561 // }, 2562 // "maxResults": { 2563 // "default": "500", 2564 // "description": "Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.", 2565 // "format": "uint32", 2566 // "location": "query", 2567 // "maximum": "500", 2568 // "minimum": "0", 2569 // "type": "integer" 2570 // }, 2571 // "pageToken": { 2572 // "description": "Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.", 2573 // "location": "query", 2574 // "type": "string" 2575 // }, 2576 // "project": { 2577 // "description": "Name of the project scoping this request.", 2578 // "location": "path", 2579 // "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", 2580 // "required": true, 2581 // "type": "string" 2582 // }, 2583 // "zone": { 2584 // "description": "Name of the zone scoping this request.", 2585 // "location": "path", 2586 // "required": true, 2587 // "type": "string" 2588 // } 2589 // }, 2590 // "path": "{project}/zones/{zone}/operations", 2591 // "response": { 2592 // "$ref": "OperationList" 2593 // }, 2594 // "scopes": [ 2595 // "https://www.googleapis.com/auth/cloud-platform", 2596 // "https://www.googleapis.com/auth/replicapool" 2597 // ] 2598 // } 2599 2600} 2601 2602// Pages invokes f for each page of results. 2603// A non-nil error returned from f will halt the iteration. 2604// The provided context supersedes any context provided to the Context method. 2605func (c *ZoneOperationsListCall) Pages(ctx context.Context, f func(*OperationList) error) error { 2606 c.ctx_ = ctx 2607 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 2608 for { 2609 x, err := c.Do() 2610 if err != nil { 2611 return err 2612 } 2613 if err := f(x); err != nil { 2614 return err 2615 } 2616 if x.NextPageToken == "" { 2617 return nil 2618 } 2619 c.PageToken(x.NextPageToken) 2620 } 2621} 2622