diff --git a/cmd/scale.go b/cmd/scale.go index 02566cf..a9e1876 100644 --- a/cmd/scale.go +++ b/cmd/scale.go @@ -15,75 +15,29 @@ package cmd import ( - "errors" - "strconv" - - "github.com/equinor/radix-cli/generated-client/client/component" - "github.com/equinor/radix-cli/pkg/client" "github.com/equinor/radix-cli/pkg/flagnames" "github.com/spf13/cobra" ) -// scaleCmd represents the scale command +// startCmd represents the start command var scaleCmd = &cobra.Command{ - Use: "scale", - Short: "Scale component replicas", - Long: `Used for scaling up or down replicas of a Radix application component. - -Examples: - -# Scale up component to 2 replicas -rx scale --application radix-test --environment dev --component component-abc --replicas 2 - -# Short version of scaling up component to 0 replicas -rx scale -a radix-test -e dev -n component-abc -r 2 -`, + Use: "scale", + Short: "Scale component replicas", + Long: `Scale component replicas.`, + Deprecated: "Please use 'rx scale component' instead. Will be removed after September 2025", RunE: func(cmd *cobra.Command, args []string) error { - appName, err := getAppNameFromConfigOrFromParameter(cmd, flagnames.Application) - if err != nil { - return err - } - envName, err := cmd.Flags().GetString(flagnames.Environment) - if err != nil { - return err - } - cmpName, err := cmd.Flags().GetString(flagnames.Component) - if err != nil { - return err - } - replicas, err := cmd.Flags().GetInt(flagnames.Replicas) - if err != nil { - return err - } - if appName == nil || *appName == "" || envName == "" || cmpName == "" { - return errors.New("application name, environment name and component name are required fields") - } - if replicas < 0 || replicas > 20 { - return errors.New("required field replicas must be between 0 and 20") - } - - cmd.SilenceUsage = true - - parameters := component.NewScaleComponentParams(). - WithAppName(*appName). - WithEnvName(envName). - WithComponentName(cmpName). - WithReplicas(strconv.Itoa(replicas)) - - apiClient, err := client.GetForCommand(cmd) - if err != nil { - return err - } - _, err = apiClient.Component.ScaleComponent(parameters, nil) - return err + return scaleComponentCmd.RunE(cmd, args) }, } func init() { rootCmd.AddCommand(scaleCmd) - scaleCmd.Flags().StringP(flagnames.Application, "a", "", "Name of the application namespace") - scaleCmd.Flags().StringP(flagnames.Environment, "e", "", "Name of the environment of the application") - scaleCmd.Flags().StringP(flagnames.Component, "n", "", "Name of the component to scale") - scaleCmd.Flags().IntP(flagnames.Replicas, "r", 1, "The new desired number of replicas") - setContextSpecificPersistentFlags(scaleCmd) + scaleCmd.PersistentFlags().StringP(flagnames.Application, "a", "", "Name of the application namespace") + scaleCmd.PersistentFlags().StringP(flagnames.Environment, "e", "", "Name of the environment of the application") + scaleCmd.PersistentFlags().StringP(flagnames.Component, "n", "", "Name of the component to scale") + scaleCmd.PersistentFlags().IntP(flagnames.Replicas, "r", 1, "The new desired number of replicas") + scaleCmd.PersistentFlags().Bool(flagnames.Reset, false, "Reset manualy scaled component to use replica count from RadixConfig or managed by horizontal autoscaling") + scaleCmd.MarkFlagsOneRequired(flagnames.Replicas, flagnames.Reset) + scaleCmd.MarkFlagsMutuallyExclusive(flagnames.Replicas, flagnames.Reset) + setContextSpecificPersistentFlags(scaleComponentCmd) } diff --git a/cmd/scaleComponent.go b/cmd/scaleComponent.go new file mode 100644 index 0000000..fcc9d8d --- /dev/null +++ b/cmd/scaleComponent.go @@ -0,0 +1,119 @@ +// Copyright © 2023 +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cmd + +import ( + "errors" + "strconv" + + apiclient "github.com/equinor/radix-cli/generated-client/client" + "github.com/equinor/radix-cli/generated-client/client/component" + "github.com/equinor/radix-cli/pkg/client" + "github.com/equinor/radix-cli/pkg/flagnames" + "github.com/sirupsen/logrus" + "github.com/spf13/cobra" +) + +// scaleCmd represents the scale command +var scaleComponentCmd = &cobra.Command{ + Use: "component", + Short: "Scale component replicas", + Long: `Used for manually scaling up or down replicas of a Radix application component. +Note: Manual scaling will persist across deployments, and will disable autoscaling. +`, + Example: ` +# Scale up component to 2 replicas +rx scale component --application radix-test --environment dev --component component-abc --replicas 2 + +# Short version of scaling up component to 0 replicas +rx scale component -a radix-test -e dev -n component-abc -r 2 + +# Reset manual scaling to resume normal operations: +rx scale component --application radix-test --environment dev --component component-abc --reset +`, + RunE: func(cmd *cobra.Command, args []string) error { + appName, err := getAppNameFromConfigOrFromParameter(cmd, flagnames.Application) + if err != nil { + return err + } + envName, err := cmd.Flags().GetString(flagnames.Environment) + if err != nil { + return err + } + cmpName, err := cmd.Flags().GetString(flagnames.Component) + if err != nil { + return err + } + replicas, err := cmd.Flags().GetInt(flagnames.Replicas) + if err != nil { + return err + } + reset, err := cmd.Flags().GetBool(flagnames.Reset) + if err != nil { + return err + } + if appName == nil || *appName == "" || envName == "" || cmpName == "" { + return errors.New("application name, environment name and component name are required fields") + } + if !reset && (replicas < 0 || replicas > 20) { + return errors.New("required field replicas must be between 0 and 20") + } + + apiClient, err := client.GetForCommand(cmd) + if err != nil { + return err + } + + cmd.SilenceUsage = true + + if reset { + return resetScaledComponent(apiClient, *appName, envName, cmpName) + } + return scaleComponent(apiClient, *appName, envName, cmpName, strconv.Itoa(replicas)) + }, +} + +func scaleComponent(apiClient *apiclient.Radixapi, appName, envName, cmpName, replicas string) error { + parameters := component.NewScaleComponentParams(). + WithAppName(appName). + WithEnvName(envName). + WithComponentName(cmpName). + WithReplicas(replicas) + + if _, err := apiClient.Component.ScaleComponent(parameters, nil); err != nil { + return err + } + + logrus.Infof("%s Successfully scaled to %s replicas", cmpName, replicas) + return nil +} + +func resetScaledComponent(apiClient *apiclient.Radixapi, appName, envName, cmpName string) error { + parameters := component.NewResetScaledComponentParams(). + WithAppName(appName). + WithEnvName(envName). + WithComponentName(cmpName) + + if _, err := apiClient.Component.ResetScaledComponent(parameters, nil); err != nil { + return err + } + + logrus.Infof("%s Successfully reset to normal scaling", cmpName) + return nil +} + +func init() { + scaleCmd.AddCommand(scaleComponentCmd) +} diff --git a/cmd/startComponent.go b/cmd/startComponent.go index 36b3632..4de66a6 100644 --- a/cmd/startComponent.go +++ b/cmd/startComponent.go @@ -20,6 +20,7 @@ import ( "github.com/equinor/radix-cli/generated-client/client/component" "github.com/equinor/radix-cli/pkg/client" "github.com/equinor/radix-cli/pkg/flagnames" + "github.com/sirupsen/logrus" "github.com/spf13/cobra" ) @@ -28,8 +29,11 @@ var startComponentCmd = &cobra.Command{ Use: "component", Short: "Start a component", Long: `Start a component - - Pulls new image from image hub in radix configuration - - Starts the container using up to date image`, + +Deprecated: Use 'rx scale component --reset' instead + +Resets a manully scaled component to resume normal operations again.`, + Deprecated: " Use 'rx scale component --reset' instead. Will be removed after September 2025", RunE: func(cmd *cobra.Command, args []string) error { appName, err := getAppNameFromConfigOrFromParameter(cmd, flagnames.Application) if err != nil { @@ -60,7 +64,12 @@ var startComponentCmd = &cobra.Command{ } _, err = apiClient.Component.StartComponent(parameters, nil) - return err + if err != nil { + return err + } + + logrus.Infof("%s Successfully reset to normal scaling", cmpName) + return nil }, } diff --git a/generated-client/client/application/application_client.go b/generated-client/client/application/application_client.go index ef50bbd..42f7e0f 100644 --- a/generated-client/client/application/application_client.go +++ b/generated-client/client/application/application_client.go @@ -84,6 +84,8 @@ type ClientService interface { RegenerateDeployKey(params *RegenerateDeployKeyParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*RegenerateDeployKeyNoContent, error) + ResetManuallyScaledComponentsInApplication(params *ResetManuallyScaledComponentsInApplicationParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*ResetManuallyScaledComponentsInApplicationOK, error) + RestartApplication(params *RestartApplicationParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*RestartApplicationOK, error) StartApplication(params *StartApplicationParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*StartApplicationOK, error) @@ -655,6 +657,45 @@ func (a *Client) RegenerateDeployKey(params *RegenerateDeployKeyParams, authInfo panic(msg) } +/* +ResetManuallyScaledComponentsInApplication resets and resumes normal opperation for all manually stopped components in all environments of the application +*/ +func (a *Client) ResetManuallyScaledComponentsInApplication(params *ResetManuallyScaledComponentsInApplicationParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*ResetManuallyScaledComponentsInApplicationOK, error) { + // TODO: Validate the params before sending + if params == nil { + params = NewResetManuallyScaledComponentsInApplicationParams() + } + op := &runtime.ClientOperation{ + ID: "resetManuallyScaledComponentsInApplication", + Method: "POST", + PathPattern: "/applications/{appName}/reset-scale", + ProducesMediaTypes: []string{"application/json"}, + ConsumesMediaTypes: []string{"application/json"}, + Schemes: []string{"http", "https"}, + Params: params, + Reader: &ResetManuallyScaledComponentsInApplicationReader{formats: a.formats}, + AuthInfo: authInfo, + Context: params.Context, + Client: params.HTTPClient, + } + for _, opt := range opts { + opt(op) + } + + result, err := a.transport.Submit(op) + if err != nil { + return nil, err + } + success, ok := result.(*ResetManuallyScaledComponentsInApplicationOK) + if ok { + return success, nil + } + // unexpected success response + // safeguard: normally, absent a default response, unknown success responses return an error above: so this is a codegen issue + msg := fmt.Sprintf("unexpected success response for resetManuallyScaledComponentsInApplication: API contract not enforced by server. Client expected to get an error, but got: %T", result) + panic(msg) +} + /* RestartApplication restarts all components in all environments of the application stops all running components in all environments of the application pulls new images from image hub in radix configuration starts all components in all environments of the application again using up to date image */ @@ -695,7 +736,7 @@ func (a *Client) RestartApplication(params *RestartApplicationParams, authInfo r } /* -StartApplication starts all components in all environments of the application +StartApplication deprecateds use reset scale that does the same thing instead this will be removed after 1 september 2025 */ func (a *Client) StartApplication(params *StartApplicationParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*StartApplicationOK, error) { // TODO: Validate the params before sending diff --git a/generated-client/client/application/reset_manually_scaled_components_in_application_parameters.go b/generated-client/client/application/reset_manually_scaled_components_in_application_parameters.go new file mode 100644 index 0000000..5cbb2a7 --- /dev/null +++ b/generated-client/client/application/reset_manually_scaled_components_in_application_parameters.go @@ -0,0 +1,201 @@ +// Code generated by go-swagger; DO NOT EDIT. + +package application + +// This file was generated by the swagger tool. +// Editing this file might prove futile when you re-run the swagger generate command + +import ( + "context" + "net/http" + "time" + + "github.com/go-openapi/errors" + "github.com/go-openapi/runtime" + cr "github.com/go-openapi/runtime/client" + "github.com/go-openapi/strfmt" +) + +// NewResetManuallyScaledComponentsInApplicationParams creates a new ResetManuallyScaledComponentsInApplicationParams object, +// with the default timeout for this client. +// +// Default values are not hydrated, since defaults are normally applied by the API server side. +// +// To enforce default values in parameter, use SetDefaults or WithDefaults. +func NewResetManuallyScaledComponentsInApplicationParams() *ResetManuallyScaledComponentsInApplicationParams { + return &ResetManuallyScaledComponentsInApplicationParams{ + timeout: cr.DefaultTimeout, + } +} + +// NewResetManuallyScaledComponentsInApplicationParamsWithTimeout creates a new ResetManuallyScaledComponentsInApplicationParams object +// with the ability to set a timeout on a request. +func NewResetManuallyScaledComponentsInApplicationParamsWithTimeout(timeout time.Duration) *ResetManuallyScaledComponentsInApplicationParams { + return &ResetManuallyScaledComponentsInApplicationParams{ + timeout: timeout, + } +} + +// NewResetManuallyScaledComponentsInApplicationParamsWithContext creates a new ResetManuallyScaledComponentsInApplicationParams object +// with the ability to set a context for a request. +func NewResetManuallyScaledComponentsInApplicationParamsWithContext(ctx context.Context) *ResetManuallyScaledComponentsInApplicationParams { + return &ResetManuallyScaledComponentsInApplicationParams{ + Context: ctx, + } +} + +// NewResetManuallyScaledComponentsInApplicationParamsWithHTTPClient creates a new ResetManuallyScaledComponentsInApplicationParams object +// with the ability to set a custom HTTPClient for a request. +func NewResetManuallyScaledComponentsInApplicationParamsWithHTTPClient(client *http.Client) *ResetManuallyScaledComponentsInApplicationParams { + return &ResetManuallyScaledComponentsInApplicationParams{ + HTTPClient: client, + } +} + +/* +ResetManuallyScaledComponentsInApplicationParams contains all the parameters to send to the API endpoint + + for the reset manually scaled components in application operation. + + Typically these are written to a http.Request. +*/ +type ResetManuallyScaledComponentsInApplicationParams struct { + + /* ImpersonateGroup. + + Works only with custom setup of cluster. Allow impersonation of a comma-seperated list of test groups (Required if Impersonate-User is set) + */ + ImpersonateGroup *string + + /* ImpersonateUser. + + Works only with custom setup of cluster. Allow impersonation of test users (Required if Impersonate-Group is set) + */ + ImpersonateUser *string + + /* AppName. + + Name of application + */ + AppName string + + timeout time.Duration + Context context.Context + HTTPClient *http.Client +} + +// WithDefaults hydrates default values in the reset manually scaled components in application params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *ResetManuallyScaledComponentsInApplicationParams) WithDefaults() *ResetManuallyScaledComponentsInApplicationParams { + o.SetDefaults() + return o +} + +// SetDefaults hydrates default values in the reset manually scaled components in application params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *ResetManuallyScaledComponentsInApplicationParams) SetDefaults() { + // no default values defined for this parameter +} + +// WithTimeout adds the timeout to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) WithTimeout(timeout time.Duration) *ResetManuallyScaledComponentsInApplicationParams { + o.SetTimeout(timeout) + return o +} + +// SetTimeout adds the timeout to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) SetTimeout(timeout time.Duration) { + o.timeout = timeout +} + +// WithContext adds the context to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) WithContext(ctx context.Context) *ResetManuallyScaledComponentsInApplicationParams { + o.SetContext(ctx) + return o +} + +// SetContext adds the context to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) SetContext(ctx context.Context) { + o.Context = ctx +} + +// WithHTTPClient adds the HTTPClient to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) WithHTTPClient(client *http.Client) *ResetManuallyScaledComponentsInApplicationParams { + o.SetHTTPClient(client) + return o +} + +// SetHTTPClient adds the HTTPClient to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) SetHTTPClient(client *http.Client) { + o.HTTPClient = client +} + +// WithImpersonateGroup adds the impersonateGroup to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) WithImpersonateGroup(impersonateGroup *string) *ResetManuallyScaledComponentsInApplicationParams { + o.SetImpersonateGroup(impersonateGroup) + return o +} + +// SetImpersonateGroup adds the impersonateGroup to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) SetImpersonateGroup(impersonateGroup *string) { + o.ImpersonateGroup = impersonateGroup +} + +// WithImpersonateUser adds the impersonateUser to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) WithImpersonateUser(impersonateUser *string) *ResetManuallyScaledComponentsInApplicationParams { + o.SetImpersonateUser(impersonateUser) + return o +} + +// SetImpersonateUser adds the impersonateUser to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) SetImpersonateUser(impersonateUser *string) { + o.ImpersonateUser = impersonateUser +} + +// WithAppName adds the appName to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) WithAppName(appName string) *ResetManuallyScaledComponentsInApplicationParams { + o.SetAppName(appName) + return o +} + +// SetAppName adds the appName to the reset manually scaled components in application params +func (o *ResetManuallyScaledComponentsInApplicationParams) SetAppName(appName string) { + o.AppName = appName +} + +// WriteToRequest writes these params to a swagger request +func (o *ResetManuallyScaledComponentsInApplicationParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { + + if err := r.SetTimeout(o.timeout); err != nil { + return err + } + var res []error + + if o.ImpersonateGroup != nil { + + // header param Impersonate-Group + if err := r.SetHeaderParam("Impersonate-Group", *o.ImpersonateGroup); err != nil { + return err + } + } + + if o.ImpersonateUser != nil { + + // header param Impersonate-User + if err := r.SetHeaderParam("Impersonate-User", *o.ImpersonateUser); err != nil { + return err + } + } + + // path param appName + if err := r.SetPathParam("appName", o.AppName); err != nil { + return err + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} diff --git a/generated-client/client/application/reset_manually_scaled_components_in_application_responses.go b/generated-client/client/application/reset_manually_scaled_components_in_application_responses.go new file mode 100644 index 0000000..e47faf3 --- /dev/null +++ b/generated-client/client/application/reset_manually_scaled_components_in_application_responses.go @@ -0,0 +1,212 @@ +// Code generated by go-swagger; DO NOT EDIT. + +package application + +// This file was generated by the swagger tool. +// Editing this file might prove futile when you re-run the swagger generate command + +import ( + "fmt" + + "github.com/go-openapi/runtime" + "github.com/go-openapi/strfmt" +) + +// ResetManuallyScaledComponentsInApplicationReader is a Reader for the ResetManuallyScaledComponentsInApplication structure. +type ResetManuallyScaledComponentsInApplicationReader struct { + formats strfmt.Registry +} + +// ReadResponse reads a server response into the received o. +func (o *ResetManuallyScaledComponentsInApplicationReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { + switch response.Code() { + case 200: + result := NewResetManuallyScaledComponentsInApplicationOK() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return result, nil + case 401: + result := NewResetManuallyScaledComponentsInApplicationUnauthorized() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return nil, result + case 404: + result := NewResetManuallyScaledComponentsInApplicationNotFound() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return nil, result + default: + return nil, runtime.NewAPIError("[POST /applications/{appName}/reset-scale] resetManuallyScaledComponentsInApplication", response, response.Code()) + } +} + +// NewResetManuallyScaledComponentsInApplicationOK creates a ResetManuallyScaledComponentsInApplicationOK with default headers values +func NewResetManuallyScaledComponentsInApplicationOK() *ResetManuallyScaledComponentsInApplicationOK { + return &ResetManuallyScaledComponentsInApplicationOK{} +} + +/* +ResetManuallyScaledComponentsInApplicationOK describes a response with status code 200, with default header values. + +Application started ok +*/ +type ResetManuallyScaledComponentsInApplicationOK struct { +} + +// IsSuccess returns true when this reset manually scaled components in application o k response has a 2xx status code +func (o *ResetManuallyScaledComponentsInApplicationOK) IsSuccess() bool { + return true +} + +// IsRedirect returns true when this reset manually scaled components in application o k response has a 3xx status code +func (o *ResetManuallyScaledComponentsInApplicationOK) IsRedirect() bool { + return false +} + +// IsClientError returns true when this reset manually scaled components in application o k response has a 4xx status code +func (o *ResetManuallyScaledComponentsInApplicationOK) IsClientError() bool { + return false +} + +// IsServerError returns true when this reset manually scaled components in application o k response has a 5xx status code +func (o *ResetManuallyScaledComponentsInApplicationOK) IsServerError() bool { + return false +} + +// IsCode returns true when this reset manually scaled components in application o k response a status code equal to that given +func (o *ResetManuallyScaledComponentsInApplicationOK) IsCode(code int) bool { + return code == 200 +} + +// Code gets the status code for the reset manually scaled components in application o k response +func (o *ResetManuallyScaledComponentsInApplicationOK) Code() int { + return 200 +} + +func (o *ResetManuallyScaledComponentsInApplicationOK) Error() string { + return fmt.Sprintf("[POST /applications/{appName}/reset-scale][%d] resetManuallyScaledComponentsInApplicationOK", 200) +} + +func (o *ResetManuallyScaledComponentsInApplicationOK) String() string { + return fmt.Sprintf("[POST /applications/{appName}/reset-scale][%d] resetManuallyScaledComponentsInApplicationOK", 200) +} + +func (o *ResetManuallyScaledComponentsInApplicationOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + + return nil +} + +// NewResetManuallyScaledComponentsInApplicationUnauthorized creates a ResetManuallyScaledComponentsInApplicationUnauthorized with default headers values +func NewResetManuallyScaledComponentsInApplicationUnauthorized() *ResetManuallyScaledComponentsInApplicationUnauthorized { + return &ResetManuallyScaledComponentsInApplicationUnauthorized{} +} + +/* +ResetManuallyScaledComponentsInApplicationUnauthorized describes a response with status code 401, with default header values. + +Unauthorized +*/ +type ResetManuallyScaledComponentsInApplicationUnauthorized struct { +} + +// IsSuccess returns true when this reset manually scaled components in application unauthorized response has a 2xx status code +func (o *ResetManuallyScaledComponentsInApplicationUnauthorized) IsSuccess() bool { + return false +} + +// IsRedirect returns true when this reset manually scaled components in application unauthorized response has a 3xx status code +func (o *ResetManuallyScaledComponentsInApplicationUnauthorized) IsRedirect() bool { + return false +} + +// IsClientError returns true when this reset manually scaled components in application unauthorized response has a 4xx status code +func (o *ResetManuallyScaledComponentsInApplicationUnauthorized) IsClientError() bool { + return true +} + +// IsServerError returns true when this reset manually scaled components in application unauthorized response has a 5xx status code +func (o *ResetManuallyScaledComponentsInApplicationUnauthorized) IsServerError() bool { + return false +} + +// IsCode returns true when this reset manually scaled components in application unauthorized response a status code equal to that given +func (o *ResetManuallyScaledComponentsInApplicationUnauthorized) IsCode(code int) bool { + return code == 401 +} + +// Code gets the status code for the reset manually scaled components in application unauthorized response +func (o *ResetManuallyScaledComponentsInApplicationUnauthorized) Code() int { + return 401 +} + +func (o *ResetManuallyScaledComponentsInApplicationUnauthorized) Error() string { + return fmt.Sprintf("[POST /applications/{appName}/reset-scale][%d] resetManuallyScaledComponentsInApplicationUnauthorized", 401) +} + +func (o *ResetManuallyScaledComponentsInApplicationUnauthorized) String() string { + return fmt.Sprintf("[POST /applications/{appName}/reset-scale][%d] resetManuallyScaledComponentsInApplicationUnauthorized", 401) +} + +func (o *ResetManuallyScaledComponentsInApplicationUnauthorized) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + + return nil +} + +// NewResetManuallyScaledComponentsInApplicationNotFound creates a ResetManuallyScaledComponentsInApplicationNotFound with default headers values +func NewResetManuallyScaledComponentsInApplicationNotFound() *ResetManuallyScaledComponentsInApplicationNotFound { + return &ResetManuallyScaledComponentsInApplicationNotFound{} +} + +/* +ResetManuallyScaledComponentsInApplicationNotFound describes a response with status code 404, with default header values. + +Not found +*/ +type ResetManuallyScaledComponentsInApplicationNotFound struct { +} + +// IsSuccess returns true when this reset manually scaled components in application not found response has a 2xx status code +func (o *ResetManuallyScaledComponentsInApplicationNotFound) IsSuccess() bool { + return false +} + +// IsRedirect returns true when this reset manually scaled components in application not found response has a 3xx status code +func (o *ResetManuallyScaledComponentsInApplicationNotFound) IsRedirect() bool { + return false +} + +// IsClientError returns true when this reset manually scaled components in application not found response has a 4xx status code +func (o *ResetManuallyScaledComponentsInApplicationNotFound) IsClientError() bool { + return true +} + +// IsServerError returns true when this reset manually scaled components in application not found response has a 5xx status code +func (o *ResetManuallyScaledComponentsInApplicationNotFound) IsServerError() bool { + return false +} + +// IsCode returns true when this reset manually scaled components in application not found response a status code equal to that given +func (o *ResetManuallyScaledComponentsInApplicationNotFound) IsCode(code int) bool { + return code == 404 +} + +// Code gets the status code for the reset manually scaled components in application not found response +func (o *ResetManuallyScaledComponentsInApplicationNotFound) Code() int { + return 404 +} + +func (o *ResetManuallyScaledComponentsInApplicationNotFound) Error() string { + return fmt.Sprintf("[POST /applications/{appName}/reset-scale][%d] resetManuallyScaledComponentsInApplicationNotFound", 404) +} + +func (o *ResetManuallyScaledComponentsInApplicationNotFound) String() string { + return fmt.Sprintf("[POST /applications/{appName}/reset-scale][%d] resetManuallyScaledComponentsInApplicationNotFound", 404) +} + +func (o *ResetManuallyScaledComponentsInApplicationNotFound) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + + return nil +} diff --git a/generated-client/client/component/component_client.go b/generated-client/client/component/component_client.go index 8b4a79e..ea84c38 100644 --- a/generated-client/client/component/component_client.go +++ b/generated-client/client/component/component_client.go @@ -68,6 +68,8 @@ type ClientService interface { ReplicaLog(params *ReplicaLogParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*ReplicaLogOK, error) + ResetScaledComponent(params *ResetScaledComponentParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*ResetScaledComponentOK, error) + RestartComponent(params *RestartComponentParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*RestartComponentOK, error) RestartOAuthAuxiliaryResource(params *RestartOAuthAuxiliaryResourceParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*RestartOAuthAuxiliaryResourceOK, error) @@ -317,6 +319,45 @@ func (a *Client) ReplicaLog(params *ReplicaLogParams, authInfo runtime.ClientAut panic(msg) } +/* +ResetScaledComponent resets manually scaled component and resumes normal operation +*/ +func (a *Client) ResetScaledComponent(params *ResetScaledComponentParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*ResetScaledComponentOK, error) { + // TODO: Validate the params before sending + if params == nil { + params = NewResetScaledComponentParams() + } + op := &runtime.ClientOperation{ + ID: "resetScaledComponent", + Method: "POST", + PathPattern: "/applications/{appName}/environments/{envName}/components/{componentName}/reset-scale", + ProducesMediaTypes: []string{"application/json"}, + ConsumesMediaTypes: []string{"application/json"}, + Schemes: []string{"http", "https"}, + Params: params, + Reader: &ResetScaledComponentReader{formats: a.formats}, + AuthInfo: authInfo, + Context: params.Context, + Client: params.HTTPClient, + } + for _, opt := range opts { + opt(op) + } + + result, err := a.transport.Submit(op) + if err != nil { + return nil, err + } + success, ok := result.(*ResetScaledComponentOK) + if ok { + return success, nil + } + // unexpected success response + // safeguard: normally, absent a default response, unknown success responses return an error above: so this is a codegen issue + msg := fmt.Sprintf("unexpected success response for resetScaledComponent: API contract not enforced by server. Client expected to get an error, but got: %T", result) + panic(msg) +} + /* RestartComponent restarts a component stops running the component container pulls new image from image hub in radix configuration starts the container again using an up to date image */ @@ -435,7 +476,7 @@ func (a *Client) ScaleComponent(params *ScaleComponentParams, authInfo runtime.C } /* -StartComponent starts component +StartComponent deprecateds start component use reset scale instead this does the same thing but naming is wrong this endpoint will be removed after 1 september 2025 */ func (a *Client) StartComponent(params *StartComponentParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*StartComponentOK, error) { // TODO: Validate the params before sending diff --git a/generated-client/client/component/reset_scaled_component_parameters.go b/generated-client/client/component/reset_scaled_component_parameters.go new file mode 100644 index 0000000..b87ecaf --- /dev/null +++ b/generated-client/client/component/reset_scaled_component_parameters.go @@ -0,0 +1,245 @@ +// Code generated by go-swagger; DO NOT EDIT. + +package component + +// This file was generated by the swagger tool. +// Editing this file might prove futile when you re-run the swagger generate command + +import ( + "context" + "net/http" + "time" + + "github.com/go-openapi/errors" + "github.com/go-openapi/runtime" + cr "github.com/go-openapi/runtime/client" + "github.com/go-openapi/strfmt" +) + +// NewResetScaledComponentParams creates a new ResetScaledComponentParams object, +// with the default timeout for this client. +// +// Default values are not hydrated, since defaults are normally applied by the API server side. +// +// To enforce default values in parameter, use SetDefaults or WithDefaults. +func NewResetScaledComponentParams() *ResetScaledComponentParams { + return &ResetScaledComponentParams{ + timeout: cr.DefaultTimeout, + } +} + +// NewResetScaledComponentParamsWithTimeout creates a new ResetScaledComponentParams object +// with the ability to set a timeout on a request. +func NewResetScaledComponentParamsWithTimeout(timeout time.Duration) *ResetScaledComponentParams { + return &ResetScaledComponentParams{ + timeout: timeout, + } +} + +// NewResetScaledComponentParamsWithContext creates a new ResetScaledComponentParams object +// with the ability to set a context for a request. +func NewResetScaledComponentParamsWithContext(ctx context.Context) *ResetScaledComponentParams { + return &ResetScaledComponentParams{ + Context: ctx, + } +} + +// NewResetScaledComponentParamsWithHTTPClient creates a new ResetScaledComponentParams object +// with the ability to set a custom HTTPClient for a request. +func NewResetScaledComponentParamsWithHTTPClient(client *http.Client) *ResetScaledComponentParams { + return &ResetScaledComponentParams{ + HTTPClient: client, + } +} + +/* +ResetScaledComponentParams contains all the parameters to send to the API endpoint + + for the reset scaled component operation. + + Typically these are written to a http.Request. +*/ +type ResetScaledComponentParams struct { + + /* ImpersonateGroup. + + Works only with custom setup of cluster. Allow impersonation of a comma-seperated list of test groups (Required if Impersonate-User is set) + */ + ImpersonateGroup *string + + /* ImpersonateUser. + + Works only with custom setup of cluster. Allow impersonation of test users (Required if Impersonate-Group is set) + */ + ImpersonateUser *string + + /* AppName. + + Name of application + */ + AppName string + + /* ComponentName. + + Name of component + */ + ComponentName string + + /* EnvName. + + Name of environment + */ + EnvName string + + timeout time.Duration + Context context.Context + HTTPClient *http.Client +} + +// WithDefaults hydrates default values in the reset scaled component params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *ResetScaledComponentParams) WithDefaults() *ResetScaledComponentParams { + o.SetDefaults() + return o +} + +// SetDefaults hydrates default values in the reset scaled component params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *ResetScaledComponentParams) SetDefaults() { + // no default values defined for this parameter +} + +// WithTimeout adds the timeout to the reset scaled component params +func (o *ResetScaledComponentParams) WithTimeout(timeout time.Duration) *ResetScaledComponentParams { + o.SetTimeout(timeout) + return o +} + +// SetTimeout adds the timeout to the reset scaled component params +func (o *ResetScaledComponentParams) SetTimeout(timeout time.Duration) { + o.timeout = timeout +} + +// WithContext adds the context to the reset scaled component params +func (o *ResetScaledComponentParams) WithContext(ctx context.Context) *ResetScaledComponentParams { + o.SetContext(ctx) + return o +} + +// SetContext adds the context to the reset scaled component params +func (o *ResetScaledComponentParams) SetContext(ctx context.Context) { + o.Context = ctx +} + +// WithHTTPClient adds the HTTPClient to the reset scaled component params +func (o *ResetScaledComponentParams) WithHTTPClient(client *http.Client) *ResetScaledComponentParams { + o.SetHTTPClient(client) + return o +} + +// SetHTTPClient adds the HTTPClient to the reset scaled component params +func (o *ResetScaledComponentParams) SetHTTPClient(client *http.Client) { + o.HTTPClient = client +} + +// WithImpersonateGroup adds the impersonateGroup to the reset scaled component params +func (o *ResetScaledComponentParams) WithImpersonateGroup(impersonateGroup *string) *ResetScaledComponentParams { + o.SetImpersonateGroup(impersonateGroup) + return o +} + +// SetImpersonateGroup adds the impersonateGroup to the reset scaled component params +func (o *ResetScaledComponentParams) SetImpersonateGroup(impersonateGroup *string) { + o.ImpersonateGroup = impersonateGroup +} + +// WithImpersonateUser adds the impersonateUser to the reset scaled component params +func (o *ResetScaledComponentParams) WithImpersonateUser(impersonateUser *string) *ResetScaledComponentParams { + o.SetImpersonateUser(impersonateUser) + return o +} + +// SetImpersonateUser adds the impersonateUser to the reset scaled component params +func (o *ResetScaledComponentParams) SetImpersonateUser(impersonateUser *string) { + o.ImpersonateUser = impersonateUser +} + +// WithAppName adds the appName to the reset scaled component params +func (o *ResetScaledComponentParams) WithAppName(appName string) *ResetScaledComponentParams { + o.SetAppName(appName) + return o +} + +// SetAppName adds the appName to the reset scaled component params +func (o *ResetScaledComponentParams) SetAppName(appName string) { + o.AppName = appName +} + +// WithComponentName adds the componentName to the reset scaled component params +func (o *ResetScaledComponentParams) WithComponentName(componentName string) *ResetScaledComponentParams { + o.SetComponentName(componentName) + return o +} + +// SetComponentName adds the componentName to the reset scaled component params +func (o *ResetScaledComponentParams) SetComponentName(componentName string) { + o.ComponentName = componentName +} + +// WithEnvName adds the envName to the reset scaled component params +func (o *ResetScaledComponentParams) WithEnvName(envName string) *ResetScaledComponentParams { + o.SetEnvName(envName) + return o +} + +// SetEnvName adds the envName to the reset scaled component params +func (o *ResetScaledComponentParams) SetEnvName(envName string) { + o.EnvName = envName +} + +// WriteToRequest writes these params to a swagger request +func (o *ResetScaledComponentParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { + + if err := r.SetTimeout(o.timeout); err != nil { + return err + } + var res []error + + if o.ImpersonateGroup != nil { + + // header param Impersonate-Group + if err := r.SetHeaderParam("Impersonate-Group", *o.ImpersonateGroup); err != nil { + return err + } + } + + if o.ImpersonateUser != nil { + + // header param Impersonate-User + if err := r.SetHeaderParam("Impersonate-User", *o.ImpersonateUser); err != nil { + return err + } + } + + // path param appName + if err := r.SetPathParam("appName", o.AppName); err != nil { + return err + } + + // path param componentName + if err := r.SetPathParam("componentName", o.ComponentName); err != nil { + return err + } + + // path param envName + if err := r.SetPathParam("envName", o.EnvName); err != nil { + return err + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} diff --git a/generated-client/client/component/reset_scaled_component_responses.go b/generated-client/client/component/reset_scaled_component_responses.go new file mode 100644 index 0000000..7dbe84f --- /dev/null +++ b/generated-client/client/component/reset_scaled_component_responses.go @@ -0,0 +1,212 @@ +// Code generated by go-swagger; DO NOT EDIT. + +package component + +// This file was generated by the swagger tool. +// Editing this file might prove futile when you re-run the swagger generate command + +import ( + "fmt" + + "github.com/go-openapi/runtime" + "github.com/go-openapi/strfmt" +) + +// ResetScaledComponentReader is a Reader for the ResetScaledComponent structure. +type ResetScaledComponentReader struct { + formats strfmt.Registry +} + +// ReadResponse reads a server response into the received o. +func (o *ResetScaledComponentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { + switch response.Code() { + case 200: + result := NewResetScaledComponentOK() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return result, nil + case 401: + result := NewResetScaledComponentUnauthorized() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return nil, result + case 404: + result := NewResetScaledComponentNotFound() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return nil, result + default: + return nil, runtime.NewAPIError("[POST /applications/{appName}/environments/{envName}/components/{componentName}/reset-scale] resetScaledComponent", response, response.Code()) + } +} + +// NewResetScaledComponentOK creates a ResetScaledComponentOK with default headers values +func NewResetScaledComponentOK() *ResetScaledComponentOK { + return &ResetScaledComponentOK{} +} + +/* +ResetScaledComponentOK describes a response with status code 200, with default header values. + +Component started ok +*/ +type ResetScaledComponentOK struct { +} + +// IsSuccess returns true when this reset scaled component o k response has a 2xx status code +func (o *ResetScaledComponentOK) IsSuccess() bool { + return true +} + +// IsRedirect returns true when this reset scaled component o k response has a 3xx status code +func (o *ResetScaledComponentOK) IsRedirect() bool { + return false +} + +// IsClientError returns true when this reset scaled component o k response has a 4xx status code +func (o *ResetScaledComponentOK) IsClientError() bool { + return false +} + +// IsServerError returns true when this reset scaled component o k response has a 5xx status code +func (o *ResetScaledComponentOK) IsServerError() bool { + return false +} + +// IsCode returns true when this reset scaled component o k response a status code equal to that given +func (o *ResetScaledComponentOK) IsCode(code int) bool { + return code == 200 +} + +// Code gets the status code for the reset scaled component o k response +func (o *ResetScaledComponentOK) Code() int { + return 200 +} + +func (o *ResetScaledComponentOK) Error() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/components/{componentName}/reset-scale][%d] resetScaledComponentOK", 200) +} + +func (o *ResetScaledComponentOK) String() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/components/{componentName}/reset-scale][%d] resetScaledComponentOK", 200) +} + +func (o *ResetScaledComponentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + + return nil +} + +// NewResetScaledComponentUnauthorized creates a ResetScaledComponentUnauthorized with default headers values +func NewResetScaledComponentUnauthorized() *ResetScaledComponentUnauthorized { + return &ResetScaledComponentUnauthorized{} +} + +/* +ResetScaledComponentUnauthorized describes a response with status code 401, with default header values. + +Unauthorized +*/ +type ResetScaledComponentUnauthorized struct { +} + +// IsSuccess returns true when this reset scaled component unauthorized response has a 2xx status code +func (o *ResetScaledComponentUnauthorized) IsSuccess() bool { + return false +} + +// IsRedirect returns true when this reset scaled component unauthorized response has a 3xx status code +func (o *ResetScaledComponentUnauthorized) IsRedirect() bool { + return false +} + +// IsClientError returns true when this reset scaled component unauthorized response has a 4xx status code +func (o *ResetScaledComponentUnauthorized) IsClientError() bool { + return true +} + +// IsServerError returns true when this reset scaled component unauthorized response has a 5xx status code +func (o *ResetScaledComponentUnauthorized) IsServerError() bool { + return false +} + +// IsCode returns true when this reset scaled component unauthorized response a status code equal to that given +func (o *ResetScaledComponentUnauthorized) IsCode(code int) bool { + return code == 401 +} + +// Code gets the status code for the reset scaled component unauthorized response +func (o *ResetScaledComponentUnauthorized) Code() int { + return 401 +} + +func (o *ResetScaledComponentUnauthorized) Error() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/components/{componentName}/reset-scale][%d] resetScaledComponentUnauthorized", 401) +} + +func (o *ResetScaledComponentUnauthorized) String() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/components/{componentName}/reset-scale][%d] resetScaledComponentUnauthorized", 401) +} + +func (o *ResetScaledComponentUnauthorized) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + + return nil +} + +// NewResetScaledComponentNotFound creates a ResetScaledComponentNotFound with default headers values +func NewResetScaledComponentNotFound() *ResetScaledComponentNotFound { + return &ResetScaledComponentNotFound{} +} + +/* +ResetScaledComponentNotFound describes a response with status code 404, with default header values. + +Not found +*/ +type ResetScaledComponentNotFound struct { +} + +// IsSuccess returns true when this reset scaled component not found response has a 2xx status code +func (o *ResetScaledComponentNotFound) IsSuccess() bool { + return false +} + +// IsRedirect returns true when this reset scaled component not found response has a 3xx status code +func (o *ResetScaledComponentNotFound) IsRedirect() bool { + return false +} + +// IsClientError returns true when this reset scaled component not found response has a 4xx status code +func (o *ResetScaledComponentNotFound) IsClientError() bool { + return true +} + +// IsServerError returns true when this reset scaled component not found response has a 5xx status code +func (o *ResetScaledComponentNotFound) IsServerError() bool { + return false +} + +// IsCode returns true when this reset scaled component not found response a status code equal to that given +func (o *ResetScaledComponentNotFound) IsCode(code int) bool { + return code == 404 +} + +// Code gets the status code for the reset scaled component not found response +func (o *ResetScaledComponentNotFound) Code() int { + return 404 +} + +func (o *ResetScaledComponentNotFound) Error() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/components/{componentName}/reset-scale][%d] resetScaledComponentNotFound", 404) +} + +func (o *ResetScaledComponentNotFound) String() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/components/{componentName}/reset-scale][%d] resetScaledComponentNotFound", 404) +} + +func (o *ResetScaledComponentNotFound) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + + return nil +} diff --git a/generated-client/client/environment/environment_client.go b/generated-client/client/environment/environment_client.go index dac5517..4670e8e 100644 --- a/generated-client/client/environment/environment_client.go +++ b/generated-client/client/environment/environment_client.go @@ -78,6 +78,8 @@ type ClientService interface { GetEnvironmentSummary(params *GetEnvironmentSummaryParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*GetEnvironmentSummaryOK, error) + ResetManuallyScaledComponentsInEnvironment(params *ResetManuallyScaledComponentsInEnvironmentParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*ResetManuallyScaledComponentsInEnvironmentOK, error) + RestartEnvironment(params *RestartEnvironmentParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*RestartEnvironmentOK, error) StartEnvironment(params *StartEnvironmentParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*StartEnvironmentOK, error) @@ -518,6 +520,45 @@ func (a *Client) GetEnvironmentSummary(params *GetEnvironmentSummaryParams, auth panic(msg) } +/* +ResetManuallyScaledComponentsInEnvironment resets all manually scaled component and resumes normal operation in environment +*/ +func (a *Client) ResetManuallyScaledComponentsInEnvironment(params *ResetManuallyScaledComponentsInEnvironmentParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*ResetManuallyScaledComponentsInEnvironmentOK, error) { + // TODO: Validate the params before sending + if params == nil { + params = NewResetManuallyScaledComponentsInEnvironmentParams() + } + op := &runtime.ClientOperation{ + ID: "resetManuallyScaledComponentsInEnvironment", + Method: "POST", + PathPattern: "/applications/{appName}/environments/{envName}/reset-scale", + ProducesMediaTypes: []string{"application/json"}, + ConsumesMediaTypes: []string{"application/json"}, + Schemes: []string{"http", "https"}, + Params: params, + Reader: &ResetManuallyScaledComponentsInEnvironmentReader{formats: a.formats}, + AuthInfo: authInfo, + Context: params.Context, + Client: params.HTTPClient, + } + for _, opt := range opts { + opt(op) + } + + result, err := a.transport.Submit(op) + if err != nil { + return nil, err + } + success, ok := result.(*ResetManuallyScaledComponentsInEnvironmentOK) + if ok { + return success, nil + } + // unexpected success response + // safeguard: normally, absent a default response, unknown success responses return an error above: so this is a codegen issue + msg := fmt.Sprintf("unexpected success response for resetManuallyScaledComponentsInEnvironment: API contract not enforced by server. Client expected to get an error, but got: %T", result) + panic(msg) +} + /* RestartEnvironment restarts all components in the environment stops all running components in the environment pulls new images from image hub in radix configuration starts all components in the environment again using up to date image */ @@ -558,7 +599,7 @@ func (a *Client) RestartEnvironment(params *RestartEnvironmentParams, authInfo r } /* -StartEnvironment starts all components in the environment +StartEnvironment deprecateds use reset scale instead that does the same thing but with better naming this method will be removed after 1 september 2025 */ func (a *Client) StartEnvironment(params *StartEnvironmentParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*StartEnvironmentOK, error) { // TODO: Validate the params before sending diff --git a/generated-client/client/environment/reset_manually_scaled_components_in_environment_parameters.go b/generated-client/client/environment/reset_manually_scaled_components_in_environment_parameters.go new file mode 100644 index 0000000..70da1d8 --- /dev/null +++ b/generated-client/client/environment/reset_manually_scaled_components_in_environment_parameters.go @@ -0,0 +1,223 @@ +// Code generated by go-swagger; DO NOT EDIT. + +package environment + +// This file was generated by the swagger tool. +// Editing this file might prove futile when you re-run the swagger generate command + +import ( + "context" + "net/http" + "time" + + "github.com/go-openapi/errors" + "github.com/go-openapi/runtime" + cr "github.com/go-openapi/runtime/client" + "github.com/go-openapi/strfmt" +) + +// NewResetManuallyScaledComponentsInEnvironmentParams creates a new ResetManuallyScaledComponentsInEnvironmentParams object, +// with the default timeout for this client. +// +// Default values are not hydrated, since defaults are normally applied by the API server side. +// +// To enforce default values in parameter, use SetDefaults or WithDefaults. +func NewResetManuallyScaledComponentsInEnvironmentParams() *ResetManuallyScaledComponentsInEnvironmentParams { + return &ResetManuallyScaledComponentsInEnvironmentParams{ + timeout: cr.DefaultTimeout, + } +} + +// NewResetManuallyScaledComponentsInEnvironmentParamsWithTimeout creates a new ResetManuallyScaledComponentsInEnvironmentParams object +// with the ability to set a timeout on a request. +func NewResetManuallyScaledComponentsInEnvironmentParamsWithTimeout(timeout time.Duration) *ResetManuallyScaledComponentsInEnvironmentParams { + return &ResetManuallyScaledComponentsInEnvironmentParams{ + timeout: timeout, + } +} + +// NewResetManuallyScaledComponentsInEnvironmentParamsWithContext creates a new ResetManuallyScaledComponentsInEnvironmentParams object +// with the ability to set a context for a request. +func NewResetManuallyScaledComponentsInEnvironmentParamsWithContext(ctx context.Context) *ResetManuallyScaledComponentsInEnvironmentParams { + return &ResetManuallyScaledComponentsInEnvironmentParams{ + Context: ctx, + } +} + +// NewResetManuallyScaledComponentsInEnvironmentParamsWithHTTPClient creates a new ResetManuallyScaledComponentsInEnvironmentParams object +// with the ability to set a custom HTTPClient for a request. +func NewResetManuallyScaledComponentsInEnvironmentParamsWithHTTPClient(client *http.Client) *ResetManuallyScaledComponentsInEnvironmentParams { + return &ResetManuallyScaledComponentsInEnvironmentParams{ + HTTPClient: client, + } +} + +/* +ResetManuallyScaledComponentsInEnvironmentParams contains all the parameters to send to the API endpoint + + for the reset manually scaled components in environment operation. + + Typically these are written to a http.Request. +*/ +type ResetManuallyScaledComponentsInEnvironmentParams struct { + + /* ImpersonateGroup. + + Works only with custom setup of cluster. Allow impersonation of a comma-seperated list of test groups (Required if Impersonate-User is set) + */ + ImpersonateGroup *string + + /* ImpersonateUser. + + Works only with custom setup of cluster. Allow impersonation of test users (Required if Impersonate-Group is set) + */ + ImpersonateUser *string + + /* AppName. + + Name of application + */ + AppName string + + /* EnvName. + + Name of environment + */ + EnvName string + + timeout time.Duration + Context context.Context + HTTPClient *http.Client +} + +// WithDefaults hydrates default values in the reset manually scaled components in environment params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *ResetManuallyScaledComponentsInEnvironmentParams) WithDefaults() *ResetManuallyScaledComponentsInEnvironmentParams { + o.SetDefaults() + return o +} + +// SetDefaults hydrates default values in the reset manually scaled components in environment params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *ResetManuallyScaledComponentsInEnvironmentParams) SetDefaults() { + // no default values defined for this parameter +} + +// WithTimeout adds the timeout to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) WithTimeout(timeout time.Duration) *ResetManuallyScaledComponentsInEnvironmentParams { + o.SetTimeout(timeout) + return o +} + +// SetTimeout adds the timeout to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) SetTimeout(timeout time.Duration) { + o.timeout = timeout +} + +// WithContext adds the context to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) WithContext(ctx context.Context) *ResetManuallyScaledComponentsInEnvironmentParams { + o.SetContext(ctx) + return o +} + +// SetContext adds the context to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) SetContext(ctx context.Context) { + o.Context = ctx +} + +// WithHTTPClient adds the HTTPClient to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) WithHTTPClient(client *http.Client) *ResetManuallyScaledComponentsInEnvironmentParams { + o.SetHTTPClient(client) + return o +} + +// SetHTTPClient adds the HTTPClient to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) SetHTTPClient(client *http.Client) { + o.HTTPClient = client +} + +// WithImpersonateGroup adds the impersonateGroup to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) WithImpersonateGroup(impersonateGroup *string) *ResetManuallyScaledComponentsInEnvironmentParams { + o.SetImpersonateGroup(impersonateGroup) + return o +} + +// SetImpersonateGroup adds the impersonateGroup to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) SetImpersonateGroup(impersonateGroup *string) { + o.ImpersonateGroup = impersonateGroup +} + +// WithImpersonateUser adds the impersonateUser to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) WithImpersonateUser(impersonateUser *string) *ResetManuallyScaledComponentsInEnvironmentParams { + o.SetImpersonateUser(impersonateUser) + return o +} + +// SetImpersonateUser adds the impersonateUser to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) SetImpersonateUser(impersonateUser *string) { + o.ImpersonateUser = impersonateUser +} + +// WithAppName adds the appName to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) WithAppName(appName string) *ResetManuallyScaledComponentsInEnvironmentParams { + o.SetAppName(appName) + return o +} + +// SetAppName adds the appName to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) SetAppName(appName string) { + o.AppName = appName +} + +// WithEnvName adds the envName to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) WithEnvName(envName string) *ResetManuallyScaledComponentsInEnvironmentParams { + o.SetEnvName(envName) + return o +} + +// SetEnvName adds the envName to the reset manually scaled components in environment params +func (o *ResetManuallyScaledComponentsInEnvironmentParams) SetEnvName(envName string) { + o.EnvName = envName +} + +// WriteToRequest writes these params to a swagger request +func (o *ResetManuallyScaledComponentsInEnvironmentParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { + + if err := r.SetTimeout(o.timeout); err != nil { + return err + } + var res []error + + if o.ImpersonateGroup != nil { + + // header param Impersonate-Group + if err := r.SetHeaderParam("Impersonate-Group", *o.ImpersonateGroup); err != nil { + return err + } + } + + if o.ImpersonateUser != nil { + + // header param Impersonate-User + if err := r.SetHeaderParam("Impersonate-User", *o.ImpersonateUser); err != nil { + return err + } + } + + // path param appName + if err := r.SetPathParam("appName", o.AppName); err != nil { + return err + } + + // path param envName + if err := r.SetPathParam("envName", o.EnvName); err != nil { + return err + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} diff --git a/generated-client/client/environment/reset_manually_scaled_components_in_environment_responses.go b/generated-client/client/environment/reset_manually_scaled_components_in_environment_responses.go new file mode 100644 index 0000000..e0743ba --- /dev/null +++ b/generated-client/client/environment/reset_manually_scaled_components_in_environment_responses.go @@ -0,0 +1,212 @@ +// Code generated by go-swagger; DO NOT EDIT. + +package environment + +// This file was generated by the swagger tool. +// Editing this file might prove futile when you re-run the swagger generate command + +import ( + "fmt" + + "github.com/go-openapi/runtime" + "github.com/go-openapi/strfmt" +) + +// ResetManuallyScaledComponentsInEnvironmentReader is a Reader for the ResetManuallyScaledComponentsInEnvironment structure. +type ResetManuallyScaledComponentsInEnvironmentReader struct { + formats strfmt.Registry +} + +// ReadResponse reads a server response into the received o. +func (o *ResetManuallyScaledComponentsInEnvironmentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { + switch response.Code() { + case 200: + result := NewResetManuallyScaledComponentsInEnvironmentOK() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return result, nil + case 401: + result := NewResetManuallyScaledComponentsInEnvironmentUnauthorized() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return nil, result + case 404: + result := NewResetManuallyScaledComponentsInEnvironmentNotFound() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return nil, result + default: + return nil, runtime.NewAPIError("[POST /applications/{appName}/environments/{envName}/reset-scale] resetManuallyScaledComponentsInEnvironment", response, response.Code()) + } +} + +// NewResetManuallyScaledComponentsInEnvironmentOK creates a ResetManuallyScaledComponentsInEnvironmentOK with default headers values +func NewResetManuallyScaledComponentsInEnvironmentOK() *ResetManuallyScaledComponentsInEnvironmentOK { + return &ResetManuallyScaledComponentsInEnvironmentOK{} +} + +/* +ResetManuallyScaledComponentsInEnvironmentOK describes a response with status code 200, with default header values. + +Environment started ok +*/ +type ResetManuallyScaledComponentsInEnvironmentOK struct { +} + +// IsSuccess returns true when this reset manually scaled components in environment o k response has a 2xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentOK) IsSuccess() bool { + return true +} + +// IsRedirect returns true when this reset manually scaled components in environment o k response has a 3xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentOK) IsRedirect() bool { + return false +} + +// IsClientError returns true when this reset manually scaled components in environment o k response has a 4xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentOK) IsClientError() bool { + return false +} + +// IsServerError returns true when this reset manually scaled components in environment o k response has a 5xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentOK) IsServerError() bool { + return false +} + +// IsCode returns true when this reset manually scaled components in environment o k response a status code equal to that given +func (o *ResetManuallyScaledComponentsInEnvironmentOK) IsCode(code int) bool { + return code == 200 +} + +// Code gets the status code for the reset manually scaled components in environment o k response +func (o *ResetManuallyScaledComponentsInEnvironmentOK) Code() int { + return 200 +} + +func (o *ResetManuallyScaledComponentsInEnvironmentOK) Error() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/reset-scale][%d] resetManuallyScaledComponentsInEnvironmentOK", 200) +} + +func (o *ResetManuallyScaledComponentsInEnvironmentOK) String() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/reset-scale][%d] resetManuallyScaledComponentsInEnvironmentOK", 200) +} + +func (o *ResetManuallyScaledComponentsInEnvironmentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + + return nil +} + +// NewResetManuallyScaledComponentsInEnvironmentUnauthorized creates a ResetManuallyScaledComponentsInEnvironmentUnauthorized with default headers values +func NewResetManuallyScaledComponentsInEnvironmentUnauthorized() *ResetManuallyScaledComponentsInEnvironmentUnauthorized { + return &ResetManuallyScaledComponentsInEnvironmentUnauthorized{} +} + +/* +ResetManuallyScaledComponentsInEnvironmentUnauthorized describes a response with status code 401, with default header values. + +Unauthorized +*/ +type ResetManuallyScaledComponentsInEnvironmentUnauthorized struct { +} + +// IsSuccess returns true when this reset manually scaled components in environment unauthorized response has a 2xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentUnauthorized) IsSuccess() bool { + return false +} + +// IsRedirect returns true when this reset manually scaled components in environment unauthorized response has a 3xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentUnauthorized) IsRedirect() bool { + return false +} + +// IsClientError returns true when this reset manually scaled components in environment unauthorized response has a 4xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentUnauthorized) IsClientError() bool { + return true +} + +// IsServerError returns true when this reset manually scaled components in environment unauthorized response has a 5xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentUnauthorized) IsServerError() bool { + return false +} + +// IsCode returns true when this reset manually scaled components in environment unauthorized response a status code equal to that given +func (o *ResetManuallyScaledComponentsInEnvironmentUnauthorized) IsCode(code int) bool { + return code == 401 +} + +// Code gets the status code for the reset manually scaled components in environment unauthorized response +func (o *ResetManuallyScaledComponentsInEnvironmentUnauthorized) Code() int { + return 401 +} + +func (o *ResetManuallyScaledComponentsInEnvironmentUnauthorized) Error() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/reset-scale][%d] resetManuallyScaledComponentsInEnvironmentUnauthorized", 401) +} + +func (o *ResetManuallyScaledComponentsInEnvironmentUnauthorized) String() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/reset-scale][%d] resetManuallyScaledComponentsInEnvironmentUnauthorized", 401) +} + +func (o *ResetManuallyScaledComponentsInEnvironmentUnauthorized) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + + return nil +} + +// NewResetManuallyScaledComponentsInEnvironmentNotFound creates a ResetManuallyScaledComponentsInEnvironmentNotFound with default headers values +func NewResetManuallyScaledComponentsInEnvironmentNotFound() *ResetManuallyScaledComponentsInEnvironmentNotFound { + return &ResetManuallyScaledComponentsInEnvironmentNotFound{} +} + +/* +ResetManuallyScaledComponentsInEnvironmentNotFound describes a response with status code 404, with default header values. + +Not found +*/ +type ResetManuallyScaledComponentsInEnvironmentNotFound struct { +} + +// IsSuccess returns true when this reset manually scaled components in environment not found response has a 2xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentNotFound) IsSuccess() bool { + return false +} + +// IsRedirect returns true when this reset manually scaled components in environment not found response has a 3xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentNotFound) IsRedirect() bool { + return false +} + +// IsClientError returns true when this reset manually scaled components in environment not found response has a 4xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentNotFound) IsClientError() bool { + return true +} + +// IsServerError returns true when this reset manually scaled components in environment not found response has a 5xx status code +func (o *ResetManuallyScaledComponentsInEnvironmentNotFound) IsServerError() bool { + return false +} + +// IsCode returns true when this reset manually scaled components in environment not found response a status code equal to that given +func (o *ResetManuallyScaledComponentsInEnvironmentNotFound) IsCode(code int) bool { + return code == 404 +} + +// Code gets the status code for the reset manually scaled components in environment not found response +func (o *ResetManuallyScaledComponentsInEnvironmentNotFound) Code() int { + return 404 +} + +func (o *ResetManuallyScaledComponentsInEnvironmentNotFound) Error() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/reset-scale][%d] resetManuallyScaledComponentsInEnvironmentNotFound", 404) +} + +func (o *ResetManuallyScaledComponentsInEnvironmentNotFound) String() string { + return fmt.Sprintf("[POST /applications/{appName}/environments/{envName}/reset-scale][%d] resetManuallyScaledComponentsInEnvironmentNotFound", 404) +} + +func (o *ResetManuallyScaledComponentsInEnvironmentNotFound) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + + return nil +} diff --git a/generated-client/models/component.go b/generated-client/models/component.go index 011002d..2d7e74d 100644 --- a/generated-client/models/component.go +++ b/generated-client/models/component.go @@ -52,6 +52,10 @@ type Component struct { // Example: ["server-78fc8857c4-hm76l","server-78fc8857c4-asfa2"] Replicas []string `json:"replicas"` + // Set if manual control of replicas is in place. Not set means automatic control, 0 means stopped and >= 1 is manually scaled. + // Example: 5 + ReplicasOverride *int64 `json:"replicasOverride,omitempty"` + // ScheduledJobPayloadPath defines the payload path, where payload for Job Scheduler will be mapped as a file. From radixconfig.yaml // Example: \"/tmp/payload\ ScheduledJobPayloadPath string `json:"scheduledJobPayloadPath,omitempty"` diff --git a/generated-client/models/scheduled_batch_summary.go b/generated-client/models/scheduled_batch_summary.go index f15710a..b7e2ca6 100644 --- a/generated-client/models/scheduled_batch_summary.go +++ b/generated-client/models/scheduled_batch_summary.go @@ -21,6 +21,9 @@ import ( // swagger:model ScheduledBatchSummary type ScheduledBatchSummary struct { + // Defines a user defined ID of the batch. + BatchID string `json:"batchId,omitempty"` + // Created timestamp // Example: 2006-01-02T15:04:05Z Created string `json:"created,omitempty"` diff --git a/go.mod b/go.mod index 50430a7..8f47952 100644 --- a/go.mod +++ b/go.mod @@ -6,8 +6,8 @@ toolchain go1.22.5 require ( github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 - github.com/equinor/radix-common v1.9.3 - github.com/equinor/radix-operator v1.57.18 + github.com/equinor/radix-common v1.9.4 + github.com/equinor/radix-operator v1.58.3 github.com/fatih/color v1.17.0 github.com/go-openapi/errors v0.22.0 github.com/go-openapi/runtime v0.28.0 @@ -21,18 +21,18 @@ require ( ) require ( - dario.cat/mergo v1.0.0 // indirect + dario.cat/mergo v1.0.1 // indirect github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/cert-manager/cert-manager v1.14.2 // indirect - github.com/cespare/xxhash/v2 v2.2.0 // indirect + github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect - github.com/emicklei/go-restful/v3 v3.11.2 // indirect - github.com/evanphx/json-patch v5.8.1+incompatible // indirect + github.com/emicklei/go-restful/v3 v3.12.1 // indirect github.com/evanphx/json-patch/v5 v5.9.0 // indirect - github.com/expr-lang/expr v1.15.8 // indirect + github.com/expr-lang/expr v1.16.9 // indirect github.com/fsnotify/fsnotify v1.7.0 // indirect - github.com/go-logr/logr v1.4.1 // indirect + github.com/fxamacker/cbor/v2 v2.7.0 // indirect + github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-openapi/analysis v0.23.0 // indirect github.com/go-openapi/jsonpointer v0.21.0 // indirect @@ -52,7 +52,8 @@ require ( github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/kedacore/keda/v2 v2.13.1 // indirect + github.com/kedacore/keda/v2 v2.15.1 // indirect + github.com/klauspost/compress v1.17.9 // indirect github.com/kylelemons/godebug v1.1.0 // indirect github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-colorable v0.1.13 // indirect @@ -65,44 +66,46 @@ require ( github.com/opentracing/opentracing-go v1.2.0 // indirect github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.70.0 // indirect - github.com/prometheus-operator/prometheus-operator/pkg/client v0.70.0 // indirect - github.com/prometheus/client_golang v1.19.0 // indirect + github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.76.0 // indirect + github.com/prometheus-operator/prometheus-operator/pkg/client v0.76.0 // indirect + github.com/prometheus/client_golang v1.20.2 // indirect github.com/prometheus/client_model v0.6.1 // indirect - github.com/prometheus/common v0.53.0 // indirect - github.com/prometheus/procfs v0.12.0 // indirect + github.com/prometheus/common v0.55.0 // indirect + github.com/prometheus/procfs v0.15.1 // indirect github.com/robfig/cron/v3 v3.0.1 // indirect github.com/rs/zerolog v1.33.0 // indirect github.com/spf13/pflag v1.0.5 // indirect - go.mongodb.org/mongo-driver v1.14.0 // indirect - go.opentelemetry.io/otel v1.24.0 // indirect - go.opentelemetry.io/otel/metric v1.24.0 // indirect - go.opentelemetry.io/otel/trace v1.24.0 // indirect - golang.org/x/crypto v0.23.0 // indirect - golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3 // indirect - golang.org/x/net v0.25.0 // indirect - golang.org/x/oauth2 v0.19.0 // indirect - golang.org/x/sync v0.7.0 // indirect - golang.org/x/sys v0.20.0 // indirect - golang.org/x/term v0.20.0 // indirect - golang.org/x/text v0.15.0 // indirect - golang.org/x/time v0.5.0 // indirect + github.com/x448/float16 v0.8.4 // indirect + go.mongodb.org/mongo-driver v1.16.0 // indirect + go.opentelemetry.io/otel v1.28.0 // indirect + go.opentelemetry.io/otel/metric v1.28.0 // indirect + go.opentelemetry.io/otel/trace v1.28.0 // indirect + golang.org/x/crypto v0.26.0 // indirect + golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect + golang.org/x/net v0.28.0 // indirect + golang.org/x/oauth2 v0.22.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.24.0 // indirect + golang.org/x/term v0.23.0 // indirect + golang.org/x/text v0.17.0 // indirect + golang.org/x/time v0.6.0 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect - google.golang.org/protobuf v1.34.1 // indirect + google.golang.org/protobuf v1.34.2 // indirect + gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/api v0.30.1 // indirect - k8s.io/apiextensions-apiserver v0.30.1 // indirect - k8s.io/apimachinery v0.30.1 // indirect - k8s.io/client-go v0.30.1 // indirect - k8s.io/klog/v2 v2.120.1 // indirect - k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect - k8s.io/utils v0.0.0-20240310230437-4693a0247e57 // indirect - knative.dev/pkg v0.0.0-20240116073220-b488e7be5902 // indirect - sigs.k8s.io/controller-runtime v0.18.2 // indirect + k8s.io/api v0.31.0 // indirect + k8s.io/apiextensions-apiserver v0.31.0 // indirect + k8s.io/apimachinery v0.31.0 // indirect + k8s.io/client-go v0.31.0 // indirect + k8s.io/klog/v2 v2.130.1 // indirect + k8s.io/kube-openapi v0.0.0-20240808142205-8e686545bdb8 // indirect + k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 // indirect + knative.dev/pkg v0.0.0-20240805063731-c88d5dad9653 // indirect + sigs.k8s.io/controller-runtime v0.19.0 // indirect sigs.k8s.io/gateway-api v1.0.0 // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect - sigs.k8s.io/secrets-store-csi-driver v1.4.0 // indirect + sigs.k8s.io/secrets-store-csi-driver v1.4.5 // indirect sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect ) diff --git a/go.sum b/go.sum index fdac6cc..49d2363 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,5 @@ -dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= -dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= +dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= +dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 h1:XHOnouVk1mxXfQidrMEnLlPk9UMeRtyBTnEFtxkV0kU= github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2/go.mod h1:wP83P5OoQ5p6ip3ScPr0BAq0BvuPAvacpEuSzyouqAI= github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 h1:DklsrG3dyBCFEj5IhUbnKptjxatkF07cF2ak3yi77so= @@ -8,33 +8,35 @@ github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/cert-manager/cert-manager v1.14.2 h1:C/uci6yxiCRO04PWomBbSX+T4JT58FIIpDj5SZ6Ks6I= github.com/cert-manager/cert-manager v1.14.2/go.mod h1:pik7K6jXfgh++lfVJ/i1HzEnDluSUtTVLXSHikj8Lho= -github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= -github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= +github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/emicklei/go-restful/v3 v3.11.2 h1:1onLa9DcsMYO9P+CXaL0dStDqQ2EHHXLiz+BtnqkLAU= -github.com/emicklei/go-restful/v3 v3.11.2/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= -github.com/equinor/radix-common v1.9.3 h1:dLKFzYy8/XyEG9Zygi0rMWIYGCddai/ILwUqjBiGYxQ= -github.com/equinor/radix-common v1.9.3/go.mod h1:+g0Wj0D40zz29DjNkYKVmCVeYy4OsFWKI7Qi9rA6kpY= -github.com/equinor/radix-operator v1.57.18 h1:+zPaeZKfErjXE9O2+EjtUenrKw2nabq3e0y5VBjlwHA= -github.com/equinor/radix-operator v1.57.18/go.mod h1:zCdAiP/wxyvlUO4qGoJuLW3O+ZSt9kTyHMnjmsR3fCU= -github.com/evanphx/json-patch v5.8.1+incompatible h1:2toJaoe7/rNa1zpeQx0UnVEjqk6z2ecyA20V/zg8vTU= -github.com/evanphx/json-patch v5.8.1+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/emicklei/go-restful/v3 v3.12.1 h1:PJMDIM/ak7btuL8Ex0iYET9hxM3CI2sjZtzpL63nKAU= +github.com/emicklei/go-restful/v3 v3.12.1/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= +github.com/equinor/radix-common v1.9.4 h1:ErSnB2tqlRwaQuQdaA0qzsReDtHDgubcvqRO098ncEw= +github.com/equinor/radix-common v1.9.4/go.mod h1:+g0Wj0D40zz29DjNkYKVmCVeYy4OsFWKI7Qi9rA6kpY= +github.com/equinor/radix-operator v1.58.3 h1:F4YhNkQ4uRONP125OTfG8hdy9PiyKlOWVO8/p2NIi70= +github.com/equinor/radix-operator v1.58.3/go.mod h1:DTPXOxU3uHPvji7qBGSK1b03iXROpX3l94kYjcOHkPM= +github.com/evanphx/json-patch v5.9.0+incompatible h1:fBXyNpNMuTTDdquAq/uisOr2lShz4oaXpDTX2bLe7ls= +github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/evanphx/json-patch/v5 v5.9.0 h1:kcBlZQbplgElYIlo/n1hJbls2z/1awpXxpRi0/FOJfg= github.com/evanphx/json-patch/v5 v5.9.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ= -github.com/expr-lang/expr v1.15.8 h1:FL8+d3rSSP4tmK9o+vKfSMqqpGL8n15pEPiHcnBpxoI= -github.com/expr-lang/expr v1.15.8/go.mod h1:uCkhfG+x7fcZ5A5sXHKuQ07jGZRl6J0FCAaf2k4PtVQ= +github.com/expr-lang/expr v1.16.9 h1:WUAzmR0JNI9JCiF0/ewwHB1gmcGw5wW7nWt8gc6PpCI= +github.com/expr-lang/expr v1.16.9/go.mod h1:8/vRC7+7HBzESEqt5kKpYXxrxkr31SaO8r40VO/1IT4= github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4= github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI= github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= +github.com/fxamacker/cbor/v2 v2.7.0 h1:iM5WgngdRBanHcxugY4JySA0nk1wZorNOpTgCMedv5E= +github.com/fxamacker/cbor/v2 v2.7.0/go.mod h1:pxXPTn3joSm21Gbwsv0w9OSA2y1HFR9qXEeXQVeNoDQ= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= -github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= +github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ= @@ -60,7 +62,8 @@ github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ github.com/go-openapi/validate v0.24.0 h1:LdfDKwNbpB6Vn40xhTdNZAnfLECL81w+VX3BumrGD58= github.com/go-openapi/validate v0.24.0/go.mod h1:iyeX1sEufmv3nPbBdX3ieNviWnOZaJ1+zquzJEf2BAQ= github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572/go.mod h1:9Pwr4B2jHnOSGXyyzV8ROjYa2ojvAY6HCGYYfMoC3Ls= +github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= +github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= @@ -80,8 +83,8 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/pprof v0.0.0-20231229205709-960ae82b1e42 h1:dHLYa5D8/Ta0aLR2XcPsrkpAgGeFs6thhMcQK0oQ0n8= -github.com/google/pprof v0.0.0-20231229205709-960ae82b1e42/go.mod h1:czg5+yv1E0ZGTi6S6vVK1mke0fV+FaUhNGcd6VRS9Ik= +github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 h1:FKHo8hFI3A+7w0aUQuYXQ+6EN5stWmeY/AZqtM8xk9k= +github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= @@ -92,10 +95,12 @@ github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8Hm github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= -github.com/kedacore/keda/v2 v2.13.1 h1:8y4Mp4iWyiqHoedVT3q2g5xvWDe494TRH3sUCZPpn/o= -github.com/kedacore/keda/v2 v2.13.1/go.mod h1:AZTRgxWpK5/6pq+DqJ15y3Bl/C8sl9C7tUVF4phzGDQ= +github.com/kedacore/keda/v2 v2.15.1 h1:Kb3woYuCeCPICH037vTIcUopXgOYpdP2qa+CmHgV3SE= +github.com/kedacore/keda/v2 v2.15.1/go.mod h1:2umVEoNgklKt0+q+7BEEbrSgxqh+KPjyh6vnKXt3sls= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA= +github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= @@ -122,10 +127,10 @@ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8m github.com/oklog/ulid v1.3.1 h1:EGfNDEx6MqHz8B3uNV6QAib1UR2Lm97sHi3ocA6ESJ4= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= -github.com/onsi/ginkgo/v2 v2.17.1 h1:V++EzdbhI4ZV4ev0UTIj0PzhzOcReJFyJaLjtSF55M8= -github.com/onsi/ginkgo/v2 v2.17.1/go.mod h1:llBI3WDLL9Z6taip6f33H76YcWtJv+7R3HigUjbIBOs= -github.com/onsi/gomega v1.32.0 h1:JRYU78fJ1LPxlckP6Txi/EYqJvjtMrDC04/MM5XRHPk= -github.com/onsi/gomega v1.32.0/go.mod h1:a4x4gW6Pz2yK1MAmvluYme5lvYTn61afQ2ETw/8n4Lg= +github.com/onsi/ginkgo/v2 v2.20.0 h1:PE84V2mHqoT1sglvHc8ZdQtPcwmvvt29WLEEO3xmdZw= +github.com/onsi/ginkgo/v2 v2.20.0/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI= +github.com/onsi/gomega v1.34.1 h1:EUMJIKUjM8sKjYbtxQI9A4z2o+rruxnzNvpknOXie6k= +github.com/onsi/gomega v1.34.1/go.mod h1:kU1QgUvBDLXBJq618Xvm2LUX6rSAfRaFRTcdOeDLwwY= github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+1B0VhjKrZUs= github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc= github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c h1:+mdjkGKdHQG3305AYmdv1U2eRNDiU2ErMBj1gwrq8eQ= @@ -135,18 +140,18 @@ github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINE github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.70.0 h1:CFTvpkpVP4EXXZuaZuxpikAoma8xVha/IZKMDc9lw+Y= -github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.70.0/go.mod h1:npfc20mPOAu7ViOVnATVMbI7PoXvW99EzgJVqkAomIQ= -github.com/prometheus-operator/prometheus-operator/pkg/client v0.70.0 h1:PpdpJDS1MyMSLILG+Y0hgzVQ3tu6qEkRD0gR/UuvSZk= -github.com/prometheus-operator/prometheus-operator/pkg/client v0.70.0/go.mod h1:4I5Rt6iIu95JBYYaDYA+Er+YBfUwIq9Pwh5TEoBmawg= -github.com/prometheus/client_golang v1.19.0 h1:ygXvpU1AoN1MhdzckN+PyD9QJOSD4x7kmXYlnfbA6JU= -github.com/prometheus/client_golang v1.19.0/go.mod h1:ZRM9uEAypZakd+q/x7+gmsvXdURP+DABIEIjnmDdp+k= +github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.76.0 h1:tRwEFYFg+To2TGnibGl8dHBCh8Z/BVNKnXj2O5Za/2M= +github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.76.0/go.mod h1:Rd8YnCqz+2FYsiGmE2DMlaLjQRB4v2jFNnzCt9YY4IM= +github.com/prometheus-operator/prometheus-operator/pkg/client v0.76.0 h1:bJhRd6R4kaYBZpH7cBrzbJpEKJjHx8cbVW1n3dxYnag= +github.com/prometheus-operator/prometheus-operator/pkg/client v0.76.0/go.mod h1:Nu6G9XLApnqXqunMwMYulcHlaxRwoveH4p4WnZsBHD8= +github.com/prometheus/client_golang v1.20.2 h1:5ctymQzZlyOON1666svgwn3s6IKWgfbjsejTMiXIyjg= +github.com/prometheus/client_golang v1.20.2/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE= github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E= github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= -github.com/prometheus/common v0.53.0 h1:U2pL9w9nmJwJDa4qqLQ3ZaePJ6ZTwt7cMD3AG3+aLCE= -github.com/prometheus/common v0.53.0/go.mod h1:BrxBKv3FWBIGXw89Mg1AeBq7FSyRzXWI3l3e7W3RN5U= -github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo= -github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo= +github.com/prometheus/common v0.55.0 h1:KEi6DK7lXW/m7Ig5i47x0vRzuBsHuvJdi5ee6Y3G1dc= +github.com/prometheus/common v0.55.0/go.mod h1:2SECS4xJG1kd8XF9IcM1gMX6510RAEL65zxzNImwdc8= +github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= +github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= github.com/robfig/cron/v3 v3.0.1 h1:WdRxkvbJztn8LMz/QEvLN5sBU+xKpSqwwUO1Pjr4qDs= github.com/robfig/cron/v3 v3.0.1/go.mod h1:eQICP3HwyT7UooqI/z+Ov+PtYAWygg1TEWWzGIFLtro= github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= @@ -168,52 +173,54 @@ github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UV github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM= +github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -go.mongodb.org/mongo-driver v1.14.0 h1:P98w8egYRjYe3XDjxhYJagTokP/H6HzlsnojRgZRd80= -go.mongodb.org/mongo-driver v1.14.0/go.mod h1:Vzb0Mk/pa7e6cWw85R4F/endUC3u0U9jGcNU603k65c= -go.opentelemetry.io/otel v1.24.0 h1:0LAOdjNmQeSTzGBzduGe/rU4tZhMwL5rWgtp9Ku5Jfo= -go.opentelemetry.io/otel v1.24.0/go.mod h1:W7b9Ozg4nkF5tWI5zsXkaKKDjdVjpD4oAt9Qi/MArHo= -go.opentelemetry.io/otel/metric v1.24.0 h1:6EhoGWWK28x1fbpA4tYTOWBkPefTDQnb8WSGXlc88kI= -go.opentelemetry.io/otel/metric v1.24.0/go.mod h1:VYhLe1rFfxuTXLgj4CBiyz+9WYBA8pNGJgDcSFRKBco= -go.opentelemetry.io/otel/sdk v1.24.0 h1:YMPPDNymmQN3ZgczicBY3B6sf9n62Dlj9pWD3ucgoDw= -go.opentelemetry.io/otel/sdk v1.24.0/go.mod h1:KVrIYw6tEubO9E96HQpcmpTKDVn9gdv35HoYiQWGDFg= -go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y1YELI= -go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU= +go.mongodb.org/mongo-driver v1.16.0 h1:tpRsfBJMROVHKpdGyc1BBEzzjDUWjItxbVSZ8Ls4BQ4= +go.mongodb.org/mongo-driver v1.16.0/go.mod h1:oB6AhJQvFQL4LEHyXi6aJzQJtBiTQHiAd83l0GdFaiw= +go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo= +go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4= +go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q= +go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s= +go.opentelemetry.io/otel/sdk v1.28.0 h1:b9d7hIry8yZsgtbmM0DKyPWMMUMlK9NEKuIG4aBqWyE= +go.opentelemetry.io/otel/sdk v1.28.0/go.mod h1:oYj7ClPUA7Iw3m+r7GeEjz0qckQRJK2B8zjcZEfu7Pg= +go.opentelemetry.io/otel/trace v1.28.0 h1:GhQ9cUuQGmNDd5BTCP2dAvv75RdMxEfTmYejp+lkx9g= +go.opentelemetry.io/otel/trace v1.28.0/go.mod h1:jPyXzNPg6da9+38HEwElrQiHlVMTnVfM3/yv2OlIHaI= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= -go.uber.org/zap v1.26.0 h1:sI7k6L95XOKS281NhVKOFCUNIvv9e0w4BF8N3u+tCRo= -go.uber.org/zap v1.26.0/go.mod h1:dtElttAiwGvoJ/vj4IwHBS/gXsEu/pZ50mUIRWuG0so= +go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8= +go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.23.0 h1:dIJU/v2J8Mdglj/8rJ6UUOM3Zc9zLZxVZwwxMooUSAI= -golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= -golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3 h1:hNQpMuAJe5CtcUqCXaWga3FHu+kQvCqcsoVaQgSV60o= -golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3/go.mod h1:idGWGoKP1toJGkd5/ig9ZLuPcZBC3ewk7SzmH0uou08= +golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= +golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= +golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8= +golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.15.0 h1:SernR4v+D55NyBH2QiEQrlBAnj1ECL6AGrA5+dPaMY8= -golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0= +golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= -golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= -golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= -golang.org/x/oauth2 v0.19.0 h1:9+E/EZBCbTLNrbN35fHv/a/d/mOBatymz1zbtQrXpIg= -golang.org/x/oauth2 v0.19.0/go.mod h1:vYi7skDa1x015PmRRYZ7+s1cWyPgrPiSYRe4rnsexc8= +golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= +golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= +golang.org/x/oauth2 v0.22.0 h1:BzDx2FehcG7jJwgWLELCdmLuxk2i+x9UDpSiss2u0ZA= +golang.org/x/oauth2 v0.22.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -225,35 +232,37 @@ golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= -golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg= +golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.20.0 h1:VnkxpohqXaOBYJtBmEppKUG6mXpi+4O6purfc2+sMhw= -golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY= +golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU= +golang.org/x/term v0.23.0/go.mod h1:DgV24QBUrK6jhZXl+20l6UWznPlwAHm1Q1mGHtydmSk= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk= -golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= -golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= +golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= +golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= +golang.org/x/time v0.6.0 h1:eTDhh4ZXt5Qf0augr54TN6suAUudPcawVZeIAPU7D4U= +golang.org/x/time v0.6.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.18.0 h1:k8NLag8AGHnn+PHbl7g43CtqZAwG60vZkLqgyZgIHgQ= -golang.org/x/tools v0.18.0/go.mod h1:GL7B4CwcLLeo59yx/9UWWuNOW1n3VZ4f5axWfML7Lcg= +golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= +golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= gomodules.xyz/jsonpatch/v2 v2.4.0 h1:Ci3iUJyx9UeRx7CeFN8ARgGbkESwJK+KB9lLcWxY/Zw= gomodules.xyz/jsonpatch/v2 v2.4.0/go.mod h1:AH3dM2RI6uoBZxn3LVrfvJ3E0/9dG4cSrbuBJT4moAY= -google.golang.org/protobuf v1.34.1 h1:9ddQBjfCyZPOHPUiPxpYESBLc+T8P3E+Vo4IbKZgFWg= -google.golang.org/protobuf v1.34.1/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/evanphx/json-patch.v4 v4.12.0 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4= +gopkg.in/evanphx/json-patch.v4 v4.12.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= @@ -262,30 +271,30 @@ gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -k8s.io/api v0.30.1 h1:kCm/6mADMdbAxmIh0LBjS54nQBE+U4KmbCfIkF5CpJY= -k8s.io/api v0.30.1/go.mod h1:ddbN2C0+0DIiPntan/bye3SW3PdwLa11/0yqwvuRrJM= -k8s.io/apiextensions-apiserver v0.30.1 h1:4fAJZ9985BmpJG6PkoxVRpXv9vmPUOVzl614xarePws= -k8s.io/apiextensions-apiserver v0.30.1/go.mod h1:R4GuSrlhgq43oRY9sF2IToFh7PVlF1JjfWdoG3pixk4= -k8s.io/apimachinery v0.30.1 h1:ZQStsEfo4n65yAdlGTfP/uSHMQSoYzU/oeEbkmF7P2U= -k8s.io/apimachinery v0.30.1/go.mod h1:iexa2somDaxdnj7bha06bhb43Zpa6eWH8N8dbqVjTUc= -k8s.io/client-go v0.30.1 h1:uC/Ir6A3R46wdkgCV3vbLyNOYyCJ8oZnjtJGKfytl/Q= -k8s.io/client-go v0.30.1/go.mod h1:wrAqLNs2trwiCH/wxxmT/x3hKVH9PuV0GGW0oDoHVqc= -k8s.io/klog/v2 v2.120.1 h1:QXU6cPEOIslTGvZaXvFWiP9VKyeet3sawzTOvdXb4Vw= -k8s.io/klog/v2 v2.120.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= -k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 h1:BZqlfIlq5YbRMFko6/PM7FjZpUb45WallggurYhKGag= -k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340/go.mod h1:yD4MZYeKMBwQKVht279WycxKyM84kkAx2DPrTXaeb98= -k8s.io/utils v0.0.0-20240310230437-4693a0247e57 h1:gbqbevonBh57eILzModw6mrkbwM0gQBEuevE/AaBsHY= -k8s.io/utils v0.0.0-20240310230437-4693a0247e57/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= -knative.dev/pkg v0.0.0-20240116073220-b488e7be5902 h1:H6+JJN23fhwYWCHY1339sY6uhIyoUwDy1a8dN233fdk= -knative.dev/pkg v0.0.0-20240116073220-b488e7be5902/go.mod h1:NYk8mMYoLkO7CQWnNkti4YGGnvLxN6MIDbUvtgeo0C0= -sigs.k8s.io/controller-runtime v0.18.2 h1:RqVW6Kpeaji67CY5nPEfRz6ZfFMk0lWQlNrLqlNpx+Q= -sigs.k8s.io/controller-runtime v0.18.2/go.mod h1:tuAt1+wbVsXIT8lPtk5RURxqAnq7xkpv2Mhttslg7Hw= +k8s.io/api v0.31.0 h1:b9LiSjR2ym/SzTOlfMHm1tr7/21aD7fSkqgD/CVJBCo= +k8s.io/api v0.31.0/go.mod h1:0YiFF+JfFxMM6+1hQei8FY8M7s1Mth+z/q7eF1aJkTE= +k8s.io/apiextensions-apiserver v0.31.0 h1:fZgCVhGwsclj3qCw1buVXCV6khjRzKC5eCFt24kyLSk= +k8s.io/apiextensions-apiserver v0.31.0/go.mod h1:b9aMDEYaEe5sdK+1T0KU78ApR/5ZVp4i56VacZYEHxk= +k8s.io/apimachinery v0.31.0 h1:m9jOiSr3FoSSL5WO9bjm1n6B9KROYYgNZOb4tyZ1lBc= +k8s.io/apimachinery v0.31.0/go.mod h1:rsPdaZJfTfLsNJSQzNHQvYoTmxhoOEofxtOsF3rtsMo= +k8s.io/client-go v0.31.0 h1:QqEJzNjbN2Yv1H79SsS+SWnXkBgVu4Pj3CJQgbx0gI8= +k8s.io/client-go v0.31.0/go.mod h1:Y9wvC76g4fLjmU0BA+rV+h2cncoadjvjjkkIGoTLcGU= +k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= +k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= +k8s.io/kube-openapi v0.0.0-20240808142205-8e686545bdb8 h1:1Wof1cGQgA5pqgo8MxKPtf+qN6Sh/0JzznmeGPm1HnE= +k8s.io/kube-openapi v0.0.0-20240808142205-8e686545bdb8/go.mod h1:Os6V6dZwLNii3vxFpxcNaTmH8LJJBkOTg1N0tOA0fvA= +k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A= +k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +knative.dev/pkg v0.0.0-20240805063731-c88d5dad9653 h1:VHUW124ZpkDn4EnIzMuGWvGuJte3ISIoHMmEw2kx0zU= +knative.dev/pkg v0.0.0-20240805063731-c88d5dad9653/go.mod h1:H+5rS2GEWpAZzrmQoXOEVq/1M77LLMhR7+4jZBMOQ24= +sigs.k8s.io/controller-runtime v0.19.0 h1:nWVM7aq+Il2ABxwiCizrVDSlmDcshi9llbaFbC0ji/Q= +sigs.k8s.io/controller-runtime v0.19.0/go.mod h1:iRmWllt8IlaLjvTTDLhRBXIEtkCK6hwVBJJsYS9Ajf4= sigs.k8s.io/gateway-api v1.0.0 h1:iPTStSv41+d9p0xFydll6d7f7MOBGuqXM6p2/zVYMAs= sigs.k8s.io/gateway-api v1.0.0/go.mod h1:4cUgr0Lnp5FZ0Cdq8FdRwCvpiWws7LVhLHGIudLlf4c= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= -sigs.k8s.io/secrets-store-csi-driver v1.4.0 h1:R9JVcKOs11fEuiOLlH1BWMeyb6WYzvElRVkq1BWJkr4= -sigs.k8s.io/secrets-store-csi-driver v1.4.0/go.mod h1:RjFTqJzIV6/howouY0llU0iMbldSEt3nc2MGFOL6gko= +sigs.k8s.io/secrets-store-csi-driver v1.4.5 h1:ta4aiNbl2EAWKrn3hFnN4Nll8mC6cgBP9+O4XdzorHM= +sigs.k8s.io/secrets-store-csi-driver v1.4.5/go.mod h1:0/wMVOv8qLx7YNVMGU+Sh7S4D6TH6GhyEpouo28OTUU= sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= diff --git a/pkg/flagnames/names.go b/pkg/flagnames/names.go index b545127..b731e15 100644 --- a/pkg/flagnames/names.go +++ b/pkg/flagnames/names.go @@ -30,6 +30,7 @@ const ( PrivateKeyFromFile = "private-key-from-file" ReaderADGroups = "reader-ad-groups" Replicas = "replicas" + Reset = "reset" Repository = "repository" Schema = "schema" Secret = "secret"