diff --git a/cmd/ctrlc/root/api/get/deployment/deployment.go b/cmd/ctrlc/root/api/get/deployment/deployment.go new file mode 100644 index 0000000..4ad4cb2 --- /dev/null +++ b/cmd/ctrlc/root/api/get/deployment/deployment.go @@ -0,0 +1,44 @@ +package deployment + +import ( + "fmt" + + "github.com/ctrlplanedev/cli/internal/api" + "github.com/ctrlplanedev/cli/internal/cliutil" + "github.com/spf13/cobra" + "github.com/spf13/viper" +) + +func NewDeploymentCmd() *cobra.Command { + var name string + cmd := &cobra.Command{ + Use: "deployment", + Short: "Get a deployment", + Long: "Get a deployment by name", + RunE: func(cmd *cobra.Command, args []string) error { + apiURL := viper.GetString("url") + apiKey := viper.GetString("api-key") + workspace := viper.GetString("workspace") + + client, err := api.NewAPIKeyClientWithResponses(apiURL, apiKey) + if err != nil { + return fmt.Errorf("failed to create API client: %w", err) + } + + workspaceID := client.GetWorkspaceID(cmd.Context(), workspace) + resp, err := client.GetDeploymentByName(cmd.Context(), workspaceID.String(), name) + if err != nil { + return fmt.Errorf("failed to get deployment: %w", err) + } + + return cliutil.HandleResponseOutput(cmd, resp) + }, + } + + cmd.Flags().StringVarP(&name, "name", "n", "", "Deployment name") + cmd.MarkFlagRequired("name") + + cmd.MarkFlagRequired("workspace") + + return cmd +} diff --git a/cmd/ctrlc/root/api/get/get.go b/cmd/ctrlc/root/api/get/get.go index b2025a8..e8029d9 100644 --- a/cmd/ctrlc/root/api/get/get.go +++ b/cmd/ctrlc/root/api/get/get.go @@ -1,6 +1,7 @@ package get import ( + "github.com/ctrlplanedev/cli/cmd/ctrlc/root/api/get/deployment" "github.com/ctrlplanedev/cli/cmd/ctrlc/root/api/get/release" "github.com/ctrlplanedev/cli/cmd/ctrlc/root/api/get/releasetargets" "github.com/ctrlplanedev/cli/cmd/ctrlc/root/api/get/resources" @@ -20,6 +21,7 @@ func NewGetCmd() *cobra.Command { cmd.AddCommand(resources.NewResourcesCmd()) cmd.AddCommand(release.NewReleaseCmd()) cmd.AddCommand(releasetargets.NewReleaseTargetsCmd()) + cmd.AddCommand(deployment.NewDeploymentCmd()) return cmd } diff --git a/internal/api/client.gen.go b/internal/api/client.gen.go index b56a017..f47e156 100644 --- a/internal/api/client.gen.go +++ b/internal/api/client.gen.go @@ -55,12 +55,12 @@ const ( DeploymentPlanStatusFailed DeploymentPlanStatus = "failed" ) -// Defines values for DeploymentPlanTargetStatus. +// Defines values for DeploymentPlanTargetResultStatus. const ( - DeploymentPlanTargetStatusCompleted DeploymentPlanTargetStatus = "completed" - DeploymentPlanTargetStatusComputing DeploymentPlanTargetStatus = "computing" - DeploymentPlanTargetStatusErrored DeploymentPlanTargetStatus = "errored" - DeploymentPlanTargetStatusUnsupported DeploymentPlanTargetStatus = "unsupported" + DeploymentPlanTargetResultStatusCompleted DeploymentPlanTargetResultStatus = "completed" + DeploymentPlanTargetResultStatusComputing DeploymentPlanTargetResultStatus = "computing" + DeploymentPlanTargetResultStatusErrored DeploymentPlanTargetResultStatus = "errored" + DeploymentPlanTargetResultStatusUnsupported DeploymentPlanTargetResultStatus = "unsupported" ) // Defines values for DeploymentVersionStatus. @@ -235,13 +235,11 @@ type CreateDeploymentPlanRequest struct { type CreateDeploymentRequest struct { Description *string `json:"description,omitempty"` JobAgentConfig *map[string]interface{} `json:"jobAgentConfig,omitempty"` - JobAgentId *string `json:"jobAgentId,omitempty"` - // JobAgentSelector CEL expression to match job agents. Defaults to jobAgent.id == "" if not provided. - JobAgentSelector *string `json:"jobAgentSelector,omitempty"` - JobAgents *[]DeploymentJobAgent `json:"jobAgents,omitempty"` - Metadata *map[string]string `json:"metadata,omitempty"` - Name string `json:"name"` + // JobAgentSelector CEL expression to match job agents + JobAgentSelector *string `json:"jobAgentSelector,omitempty"` + Metadata *map[string]string `json:"metadata,omitempty"` + Name string `json:"name"` // ResourceSelector CEL expression to determine if the deployment should be used ResourceSelector *string `json:"resourceSelector,omitempty"` @@ -250,8 +248,14 @@ type CreateDeploymentRequest struct { // CreateDeploymentVersionRequest defines model for CreateDeploymentVersionRequest. type CreateDeploymentVersionRequest struct { - Config *map[string]interface{} `json:"config,omitempty"` - CreatedAt *time.Time `json:"createdAt,omitempty"` + Config *map[string]interface{} `json:"config,omitempty"` + CreatedAt *time.Time `json:"createdAt,omitempty"` + + // Dependencies Map of dependency deployment ID to a CEL version selector evaluated against that deployment's current release on the same resource. Inserted atomically with the version so reconciliation cannot fire before edges are attached. + Dependencies *map[string]struct { + // VersionSelector CEL expression evaluated against the dependency deployment's current release version on the same resource. + VersionSelector string `json:"versionSelector"` + } `json:"dependencies,omitempty"` JobAgentConfig *map[string]interface{} `json:"jobAgentConfig,omitempty"` Metadata *map[string]string `json:"metadata,omitempty"` Name string `json:"name"` @@ -291,6 +295,7 @@ type CreatePolicyRule struct { DeploymentWindow *DeploymentWindowRule `json:"deploymentWindow,omitempty"` EnvironmentProgression *EnvironmentProgressionRule `json:"environmentProgression,omitempty"` GradualRollout *GradualRolloutRule `json:"gradualRollout,omitempty"` + PlanValidationOpa *PlanValidationOpaRule `json:"planValidationOpa,omitempty"` Retry *RetryRule `json:"retry,omitempty"` Verification *VerificationRule `json:"verification,omitempty"` VersionCooldown *VersionCooldownRule `json:"versionCooldown,omitempty"` @@ -390,13 +395,11 @@ type Deployment struct { Description *string `json:"description,omitempty"` Id string `json:"id"` JobAgentConfig map[string]interface{} `json:"jobAgentConfig"` - JobAgentId *string `json:"jobAgentId,omitempty"` // JobAgentSelector CEL expression to match job agents - JobAgentSelector *string `json:"jobAgentSelector,omitempty"` - JobAgents *[]DeploymentJobAgent `json:"jobAgents,omitempty"` - Metadata *map[string]string `json:"metadata,omitempty"` - Name string `json:"name"` + JobAgentSelector string `json:"jobAgentSelector"` + Metadata *map[string]string `json:"metadata,omitempty"` + Name string `json:"name"` // ResourceSelector CEL expression to determine if the deployment should be used ResourceSelector *string `json:"resourceSelector,omitempty"` @@ -411,19 +414,10 @@ type DeploymentAndSystems struct { // DeploymentDependencyRule defines model for DeploymentDependencyRule. type DeploymentDependencyRule struct { - // DependsOn CEL expression to match upstream deployment(s) that must have a successful release before this deployment can proceed. + // DependsOn CEL expression to match upstream deployment(s) that must have a successful release before this deployment can proceed. The expression can reference both deployment properties (deployment.id, deployment.name, deployment.slug, deployment.metadata) and the currently deployed version properties (version.id, version.tag, version.name, version.status, version.metadata, version.createdAt). For example: deployment.name == 'db-migration' && version.tag.startsWith('v2.'). DependsOn string `json:"dependsOn"` } -// DeploymentJobAgent defines model for DeploymentJobAgent. -type DeploymentJobAgent struct { - Config JobAgentConfig `json:"config"` - Ref string `json:"ref"` - - // Selector CEL expression to determine if the job agent should be used - Selector string `json:"selector"` -} - // DeploymentPlan defines model for DeploymentPlan. type DeploymentPlan struct { Id string `json:"id"` @@ -446,24 +440,36 @@ type DeploymentPlanSummary struct { // DeploymentPlanTarget defines model for DeploymentPlanTarget. type DeploymentPlanTarget struct { + EnvironmentId string `json:"environmentId"` + EnvironmentName string `json:"environmentName"` + + // HasChanges True if any result for this target has changes + HasChanges bool `json:"hasChanges"` + ResourceId string `json:"resourceId"` + ResourceName string `json:"resourceName"` + Results []DeploymentPlanTargetResult `json:"results"` +} + +// DeploymentPlanTargetResult defines model for DeploymentPlanTargetResult. +type DeploymentPlanTargetResult struct { // ContentHash Hash of the rendered output for change detection - ContentHash *string `json:"contentHash,omitempty"` + ContentHash string `json:"contentHash"` // Current Full rendered output of the currently deployed state - Current *string `json:"current,omitempty"` - EnvironmentId string `json:"environmentId"` - EnvironmentName string `json:"environmentName"` - HasChanges *bool `json:"hasChanges"` + Current string `json:"current"` + HasChanges bool `json:"hasChanges"` + Id string `json:"id"` + + // Message Agent message (e.g. error explanation or summary) + Message string `json:"message"` // Proposed Full rendered output of the proposed version - Proposed *string `json:"proposed,omitempty"` - ResourceId string `json:"resourceId"` - ResourceName string `json:"resourceName"` - Status DeploymentPlanTargetStatus `json:"status"` + Proposed string `json:"proposed"` + Status DeploymentPlanTargetResultStatus `json:"status"` } -// DeploymentPlanTargetStatus defines model for DeploymentPlanTarget.Status. -type DeploymentPlanTargetStatus string +// DeploymentPlanTargetResultStatus defines model for DeploymentPlanTargetResult.Status. +type DeploymentPlanTargetResultStatus string // DeploymentPlanVersion defines model for DeploymentPlanVersion. type DeploymentPlanVersion struct { @@ -486,11 +492,10 @@ type DeploymentRequestAccepted struct { // DeploymentVariable defines model for DeploymentVariable. type DeploymentVariable struct { - DefaultValue *LiteralValue `json:"defaultValue,omitempty"` - DeploymentId string `json:"deploymentId"` - Description *string `json:"description,omitempty"` - Id string `json:"id"` - Key string `json:"key"` + DeploymentId string `json:"deploymentId"` + Description *string `json:"description,omitempty"` + Id string `json:"id"` + Key string `json:"key"` } // DeploymentVariableRequestAccepted defines model for DeploymentVariableRequestAccepted. @@ -536,6 +541,15 @@ type DeploymentVersion struct { Tag string `json:"tag"` } +// DeploymentVersionDependency defines model for DeploymentVersionDependency. +type DeploymentVersionDependency struct { + DependencyDeploymentId string `json:"dependencyDeploymentId"` + DeploymentVersionId string `json:"deploymentVersionId"` + + // VersionSelector CEL expression evaluated against the dependency deployment's current release version on the same resource. + VersionSelector string `json:"versionSelector"` +} + // DeploymentVersionStatus defines model for DeploymentVersionStatus. type DeploymentVersionStatus string @@ -596,10 +610,13 @@ type EnvironmentProgressionRule struct { // MaximumAgeHours Maximum age of dependency deployment before blocking progression (prevents stale promotions) MaximumAgeHours *int32 `json:"maximumAgeHours,omitempty"` - // MinimumSockTimeMinutes Minimum time to wait after the depends on environment is in a success state before the current environment can be deployed - MinimumSockTimeMinutes *int32 `json:"minimumSockTimeMinutes,omitempty"` - MinimumSuccessPercentage *float32 `json:"minimumSuccessPercentage,omitempty"` - SuccessStatuses *[]JobStatus `json:"successStatuses,omitempty"` + // MinimumSoakTimeMinutes Minimum time to wait after the depends on environment is in a success state before the current environment can be deployed. Defaults to 0 if not provided. + MinimumSoakTimeMinutes *int32 `json:"minimumSoakTimeMinutes,omitempty"` + MinimumSuccessPercentage *float32 `json:"minimumSuccessPercentage,omitempty"` + + // RequireVerificationPassed If true, jobs must also have passed verification to count toward the success percentage + RequireVerificationPassed *bool `json:"requireVerificationPassed,omitempty"` + SuccessStatuses *[]JobStatus `json:"successStatuses,omitempty"` } // EnvironmentRequestAccepted defines model for EnvironmentRequestAccepted. @@ -777,6 +794,17 @@ type ObjectValue struct { Object map[string]interface{} `json:"object"` } +// PlanValidationOpaRule defines model for PlanValidationOpaRule. +type PlanValidationOpaRule struct { + Description *string `json:"description,omitempty"` + + // Name Human-readable rule name; used in check output to identify which rule produced a violation. + Name string `json:"name"` + + // Rego Rego v1 source code. Must define a `deny` rule set following the Conftest convention (deny contains msg if { ... }). + Rego string `json:"rego"` +} + // Policy defines model for Policy. type Policy struct { CreatedAt string `json:"createdAt"` @@ -804,6 +832,7 @@ type PolicyRule struct { EnvironmentProgression *EnvironmentProgressionRule `json:"environmentProgression,omitempty"` GradualRollout *GradualRolloutRule `json:"gradualRollout,omitempty"` Id string `json:"id"` + PlanValidationOpa *PlanValidationOpaRule `json:"planValidationOpa,omitempty"` PolicyId string `json:"policyId"` Retry *RetryRule `json:"retry,omitempty"` Verification *VerificationRule `json:"verification,omitempty"` @@ -1155,13 +1184,11 @@ type UpdateWorkspaceRequest struct { type UpsertDeploymentRequest struct { Description *string `json:"description,omitempty"` JobAgentConfig *map[string]interface{} `json:"jobAgentConfig,omitempty"` - JobAgentId *string `json:"jobAgentId,omitempty"` - // JobAgentSelector CEL expression to match job agents. Defaults to jobAgent.id == "" if not provided. - JobAgentSelector *string `json:"jobAgentSelector,omitempty"` - JobAgents *[]DeploymentJobAgent `json:"jobAgents,omitempty"` - Metadata *map[string]string `json:"metadata,omitempty"` - Name string `json:"name"` + // JobAgentSelector CEL expression to match job agents + JobAgentSelector *string `json:"jobAgentSelector,omitempty"` + Metadata *map[string]string `json:"metadata,omitempty"` + Name string `json:"name"` // ResourceSelector CEL expression to determine if the deployment should be used ResourceSelector *string `json:"resourceSelector,omitempty"` @@ -1170,10 +1197,9 @@ type UpsertDeploymentRequest struct { // UpsertDeploymentVariableRequest defines model for UpsertDeploymentVariableRequest. type UpsertDeploymentVariableRequest struct { - DefaultValue *LiteralValue `json:"defaultValue,omitempty"` - DeploymentId string `json:"deploymentId"` - Description *string `json:"description,omitempty"` - Key string `json:"key"` + DeploymentId string `json:"deploymentId"` + Description *string `json:"description,omitempty"` + Key string `json:"key"` } // UpsertDeploymentVariableValueRequest defines model for UpsertDeploymentVariableValueRequest. @@ -1186,6 +1212,12 @@ type UpsertDeploymentVariableValueRequest struct { Value Value `json:"value"` } +// UpsertDeploymentVersionDependencyRequest defines model for UpsertDeploymentVersionDependencyRequest. +type UpsertDeploymentVersionDependencyRequest struct { + // VersionSelector CEL expression evaluated against the dependency deployment's current release version on the same resource. + VersionSelector string `json:"versionSelector"` +} + // UpsertEnvironmentRequest defines model for UpsertEnvironmentRequest. type UpsertEnvironmentRequest struct { Description *string `json:"description,omitempty"` @@ -1228,6 +1260,7 @@ type UpsertPolicyRule struct { EnvironmentProgression *EnvironmentProgressionRule `json:"environmentProgression,omitempty"` GradualRollout *GradualRolloutRule `json:"gradualRollout,omitempty"` Id *string `json:"id,omitempty"` + PlanValidationOpa *PlanValidationOpaRule `json:"planValidationOpa,omitempty"` PolicyId *string `json:"policyId,omitempty"` Retry *RetryRule `json:"retry,omitempty"` Verification *VerificationRule `json:"verification,omitempty"` @@ -1572,6 +1605,9 @@ type ListDeploymentsParams struct { // Offset Number of items to skip Offset *int `form:"offset,omitempty" json:"offset,omitempty"` + + // Cel CEL expression to filter the results + Cel *string `form:"cel,omitempty" json:"cel,omitempty"` } // ListDeploymentVariablesByDeploymentParams defines parameters for ListDeploymentVariablesByDeployment. @@ -1593,6 +1629,9 @@ type ListDeploymentVersionsParams struct { // Order Sort order for results Order *ListDeploymentVersionsParamsOrder `form:"order,omitempty" json:"order,omitempty"` + + // Cel CEL expression to filter the results + Cel *string `form:"cel,omitempty" json:"cel,omitempty"` } // ListDeploymentVersionsParamsOrder defines parameters for ListDeploymentVersions. @@ -1768,6 +1807,9 @@ type RequestDeploymentVariableValueUpsertJSONRequestBody = UpsertDeploymentVaria // RequestDeploymentVariableUpdateJSONRequestBody defines body for RequestDeploymentVariableUpdate for application/json ContentType. type RequestDeploymentVariableUpdateJSONRequestBody = UpsertDeploymentVariableRequest +// RequestDeploymentVersionDependencyUpsertJSONRequestBody defines body for RequestDeploymentVersionDependencyUpsert for application/json ContentType. +type RequestDeploymentVersionDependencyUpsertJSONRequestBody = UpsertDeploymentVersionDependencyRequest + // RequestUserApprovalRecordUpsertJSONRequestBody defines body for RequestUserApprovalRecordUpsert for application/json ContentType. type RequestUserApprovalRecordUpsertJSONRequestBody = UpsertUserApprovalRecordRequest @@ -2604,6 +2646,17 @@ type ClientInterface interface { RequestDeploymentVariableUpdate(ctx context.Context, workspaceId string, variableId string, body RequestDeploymentVariableUpdateJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + // ListDeploymentVersionDependencies request + ListDeploymentVersionDependencies(ctx context.Context, workspaceId string, deploymentVersionId string, reqEditors ...RequestEditorFn) (*http.Response, error) + + // RequestDeploymentVersionDependencyDeletion request + RequestDeploymentVersionDependencyDeletion(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, reqEditors ...RequestEditorFn) (*http.Response, error) + + // RequestDeploymentVersionDependencyUpsertWithBody request with any body + RequestDeploymentVersionDependencyUpsertWithBody(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) + + RequestDeploymentVersionDependencyUpsert(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, body RequestDeploymentVersionDependencyUpsertJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + // RequestUserApprovalRecordUpsertWithBody request with any body RequestUserApprovalRecordUpsertWithBody(ctx context.Context, workspaceId string, deploymentVersionId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) @@ -2617,6 +2670,9 @@ type ClientInterface interface { RequestDeploymentCreation(ctx context.Context, workspaceId string, body RequestDeploymentCreationJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + // GetDeploymentByName request + GetDeploymentByName(ctx context.Context, workspaceId string, name string, reqEditors ...RequestEditorFn) (*http.Response, error) + // RequestDeploymentDeletion request RequestDeploymentDeletion(ctx context.Context, workspaceId string, deploymentId string, reqEditors ...RequestEditorFn) (*http.Response, error) @@ -2660,6 +2716,9 @@ type ClientInterface interface { RequestEnvironmentCreation(ctx context.Context, workspaceId string, body RequestEnvironmentCreationJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + // GetEnvironmentByName request + GetEnvironmentByName(ctx context.Context, workspaceId string, name string, reqEditors ...RequestEditorFn) (*http.Response, error) + // RequestEnvironmentDeletion request RequestEnvironmentDeletion(ctx context.Context, workspaceId string, environmentId string, reqEditors ...RequestEditorFn) (*http.Response, error) @@ -3084,6 +3143,54 @@ func (c *Client) RequestDeploymentVariableUpdate(ctx context.Context, workspaceI return c.Client.Do(req) } +func (c *Client) ListDeploymentVersionDependencies(ctx context.Context, workspaceId string, deploymentVersionId string, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewListDeploymentVersionDependenciesRequest(c.Server, workspaceId, deploymentVersionId) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) RequestDeploymentVersionDependencyDeletion(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewRequestDeploymentVersionDependencyDeletionRequest(c.Server, workspaceId, deploymentVersionId, dependencyDeploymentId) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) RequestDeploymentVersionDependencyUpsertWithBody(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewRequestDeploymentVersionDependencyUpsertRequestWithBody(c.Server, workspaceId, deploymentVersionId, dependencyDeploymentId, contentType, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + +func (c *Client) RequestDeploymentVersionDependencyUpsert(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, body RequestDeploymentVersionDependencyUpsertJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewRequestDeploymentVersionDependencyUpsertRequest(c.Server, workspaceId, deploymentVersionId, dependencyDeploymentId, body) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + func (c *Client) RequestUserApprovalRecordUpsertWithBody(ctx context.Context, workspaceId string, deploymentVersionId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error) { req, err := NewRequestUserApprovalRecordUpsertRequestWithBody(c.Server, workspaceId, deploymentVersionId, contentType, body) if err != nil { @@ -3144,6 +3251,18 @@ func (c *Client) RequestDeploymentCreation(ctx context.Context, workspaceId stri return c.Client.Do(req) } +func (c *Client) GetDeploymentByName(ctx context.Context, workspaceId string, name string, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetDeploymentByNameRequest(c.Server, workspaceId, name) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + func (c *Client) RequestDeploymentDeletion(ctx context.Context, workspaceId string, deploymentId string, reqEditors ...RequestEditorFn) (*http.Response, error) { req, err := NewRequestDeploymentDeletionRequest(c.Server, workspaceId, deploymentId) if err != nil { @@ -3336,6 +3455,18 @@ func (c *Client) RequestEnvironmentCreation(ctx context.Context, workspaceId str return c.Client.Do(req) } +func (c *Client) GetEnvironmentByName(ctx context.Context, workspaceId string, name string, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetEnvironmentByNameRequest(c.Server, workspaceId, name) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + func (c *Client) RequestEnvironmentDeletion(ctx context.Context, workspaceId string, environmentId string, reqEditors ...RequestEditorFn) (*http.Response, error) { req, err := NewRequestEnvironmentDeletionRequest(c.Server, workspaceId, environmentId) if err != nil { @@ -4832,6 +4963,156 @@ func NewRequestDeploymentVariableUpdateRequestWithBody(server string, workspaceI return req, nil } +// NewListDeploymentVersionDependenciesRequest generates requests for ListDeploymentVersionDependencies +func NewListDeploymentVersionDependenciesRequest(server string, workspaceId string, deploymentVersionId string) (*http.Request, error) { + var err error + + var pathParam0 string + + pathParam0, err = runtime.StyleParamWithLocation("simple", false, "workspaceId", runtime.ParamLocationPath, workspaceId) + if err != nil { + return nil, err + } + + var pathParam1 string + + pathParam1, err = runtime.StyleParamWithLocation("simple", false, "deploymentVersionId", runtime.ParamLocationPath, deploymentVersionId) + if err != nil { + return nil, err + } + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/v1/workspaces/%s/deployment-versions/%s/dependencies", pathParam0, pathParam1) + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewRequestDeploymentVersionDependencyDeletionRequest generates requests for RequestDeploymentVersionDependencyDeletion +func NewRequestDeploymentVersionDependencyDeletionRequest(server string, workspaceId string, deploymentVersionId string, dependencyDeploymentId string) (*http.Request, error) { + var err error + + var pathParam0 string + + pathParam0, err = runtime.StyleParamWithLocation("simple", false, "workspaceId", runtime.ParamLocationPath, workspaceId) + if err != nil { + return nil, err + } + + var pathParam1 string + + pathParam1, err = runtime.StyleParamWithLocation("simple", false, "deploymentVersionId", runtime.ParamLocationPath, deploymentVersionId) + if err != nil { + return nil, err + } + + var pathParam2 string + + pathParam2, err = runtime.StyleParamWithLocation("simple", false, "dependencyDeploymentId", runtime.ParamLocationPath, dependencyDeploymentId) + if err != nil { + return nil, err + } + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/v1/workspaces/%s/deployment-versions/%s/dependencies/%s", pathParam0, pathParam1, pathParam2) + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("DELETE", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewRequestDeploymentVersionDependencyUpsertRequest calls the generic RequestDeploymentVersionDependencyUpsert builder with application/json body +func NewRequestDeploymentVersionDependencyUpsertRequest(server string, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, body RequestDeploymentVersionDependencyUpsertJSONRequestBody) (*http.Request, error) { + var bodyReader io.Reader + buf, err := json.Marshal(body) + if err != nil { + return nil, err + } + bodyReader = bytes.NewReader(buf) + return NewRequestDeploymentVersionDependencyUpsertRequestWithBody(server, workspaceId, deploymentVersionId, dependencyDeploymentId, "application/json", bodyReader) +} + +// NewRequestDeploymentVersionDependencyUpsertRequestWithBody generates requests for RequestDeploymentVersionDependencyUpsert with any type of body +func NewRequestDeploymentVersionDependencyUpsertRequestWithBody(server string, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, contentType string, body io.Reader) (*http.Request, error) { + var err error + + var pathParam0 string + + pathParam0, err = runtime.StyleParamWithLocation("simple", false, "workspaceId", runtime.ParamLocationPath, workspaceId) + if err != nil { + return nil, err + } + + var pathParam1 string + + pathParam1, err = runtime.StyleParamWithLocation("simple", false, "deploymentVersionId", runtime.ParamLocationPath, deploymentVersionId) + if err != nil { + return nil, err + } + + var pathParam2 string + + pathParam2, err = runtime.StyleParamWithLocation("simple", false, "dependencyDeploymentId", runtime.ParamLocationPath, dependencyDeploymentId) + if err != nil { + return nil, err + } + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/v1/workspaces/%s/deployment-versions/%s/dependencies/%s", pathParam0, pathParam1, pathParam2) + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("PUT", queryURL.String(), body) + if err != nil { + return nil, err + } + + req.Header.Add("Content-Type", contentType) + + return req, nil +} + // NewRequestUserApprovalRecordUpsertRequest calls the generic RequestUserApprovalRecordUpsert builder with application/json body func NewRequestUserApprovalRecordUpsertRequest(server string, workspaceId string, deploymentVersionId string, body RequestUserApprovalRecordUpsertJSONRequestBody) (*http.Request, error) { var bodyReader io.Reader @@ -4947,6 +5228,22 @@ func NewListDeploymentsRequest(server string, workspaceId string, params *ListDe } + if params.Cel != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cel", runtime.ParamLocationQuery, *params.Cel); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + queryURL.RawQuery = queryValues.Encode() } @@ -5005,8 +5302,8 @@ func NewRequestDeploymentCreationRequestWithBody(server string, workspaceId stri return req, nil } -// NewRequestDeploymentDeletionRequest generates requests for RequestDeploymentDeletion -func NewRequestDeploymentDeletionRequest(server string, workspaceId string, deploymentId string) (*http.Request, error) { +// NewGetDeploymentByNameRequest generates requests for GetDeploymentByName +func NewGetDeploymentByNameRequest(server string, workspaceId string, name string) (*http.Request, error) { var err error var pathParam0 string @@ -5018,7 +5315,7 @@ func NewRequestDeploymentDeletionRequest(server string, workspaceId string, depl var pathParam1 string - pathParam1, err = runtime.StyleParamWithLocation("simple", false, "deploymentId", runtime.ParamLocationPath, deploymentId) + pathParam1, err = runtime.StyleParamWithLocation("simple", false, "name", runtime.ParamLocationPath, name) if err != nil { return nil, err } @@ -5028,7 +5325,48 @@ func NewRequestDeploymentDeletionRequest(server string, workspaceId string, depl return nil, err } - operationPath := fmt.Sprintf("/v1/workspaces/%s/deployments/%s", pathParam0, pathParam1) + operationPath := fmt.Sprintf("/v1/workspaces/%s/deployments/name/%s", pathParam0, pathParam1) + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + +// NewRequestDeploymentDeletionRequest generates requests for RequestDeploymentDeletion +func NewRequestDeploymentDeletionRequest(server string, workspaceId string, deploymentId string) (*http.Request, error) { + var err error + + var pathParam0 string + + pathParam0, err = runtime.StyleParamWithLocation("simple", false, "workspaceId", runtime.ParamLocationPath, workspaceId) + if err != nil { + return nil, err + } + + var pathParam1 string + + pathParam1, err = runtime.StyleParamWithLocation("simple", false, "deploymentId", runtime.ParamLocationPath, deploymentId) + if err != nil { + return nil, err + } + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/v1/workspaces/%s/deployments/%s", pathParam0, pathParam1) if operationPath[0] == '/' { operationPath = "." + operationPath } @@ -5406,6 +5744,22 @@ func NewListDeploymentVersionsRequest(server string, workspaceId string, deploym } + if params.Cel != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", true, "cel", runtime.ParamLocationQuery, *params.Cel); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + queryURL.RawQuery = queryValues.Encode() } @@ -5644,6 +5998,47 @@ func NewRequestEnvironmentCreationRequestWithBody(server string, workspaceId str return req, nil } +// NewGetEnvironmentByNameRequest generates requests for GetEnvironmentByName +func NewGetEnvironmentByNameRequest(server string, workspaceId string, name string) (*http.Request, error) { + var err error + + var pathParam0 string + + pathParam0, err = runtime.StyleParamWithLocation("simple", false, "workspaceId", runtime.ParamLocationPath, workspaceId) + if err != nil { + return nil, err + } + + var pathParam1 string + + pathParam1, err = runtime.StyleParamWithLocation("simple", false, "name", runtime.ParamLocationPath, name) + if err != nil { + return nil, err + } + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/v1/workspaces/%s/environments/name/%s", pathParam0, pathParam1) + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + // NewRequestEnvironmentDeletionRequest generates requests for RequestEnvironmentDeletion func NewRequestEnvironmentDeletionRequest(server string, workspaceId string, environmentId string) (*http.Request, error) { var err error @@ -9065,6 +9460,17 @@ type ClientWithResponsesInterface interface { RequestDeploymentVariableUpdateWithResponse(ctx context.Context, workspaceId string, variableId string, body RequestDeploymentVariableUpdateJSONRequestBody, reqEditors ...RequestEditorFn) (*RequestDeploymentVariableUpdateResponse, error) + // ListDeploymentVersionDependenciesWithResponse request + ListDeploymentVersionDependenciesWithResponse(ctx context.Context, workspaceId string, deploymentVersionId string, reqEditors ...RequestEditorFn) (*ListDeploymentVersionDependenciesResponse, error) + + // RequestDeploymentVersionDependencyDeletionWithResponse request + RequestDeploymentVersionDependencyDeletionWithResponse(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, reqEditors ...RequestEditorFn) (*RequestDeploymentVersionDependencyDeletionResponse, error) + + // RequestDeploymentVersionDependencyUpsertWithBodyWithResponse request with any body + RequestDeploymentVersionDependencyUpsertWithBodyWithResponse(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*RequestDeploymentVersionDependencyUpsertResponse, error) + + RequestDeploymentVersionDependencyUpsertWithResponse(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, body RequestDeploymentVersionDependencyUpsertJSONRequestBody, reqEditors ...RequestEditorFn) (*RequestDeploymentVersionDependencyUpsertResponse, error) + // RequestUserApprovalRecordUpsertWithBodyWithResponse request with any body RequestUserApprovalRecordUpsertWithBodyWithResponse(ctx context.Context, workspaceId string, deploymentVersionId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*RequestUserApprovalRecordUpsertResponse, error) @@ -9078,6 +9484,9 @@ type ClientWithResponsesInterface interface { RequestDeploymentCreationWithResponse(ctx context.Context, workspaceId string, body RequestDeploymentCreationJSONRequestBody, reqEditors ...RequestEditorFn) (*RequestDeploymentCreationResponse, error) + // GetDeploymentByNameWithResponse request + GetDeploymentByNameWithResponse(ctx context.Context, workspaceId string, name string, reqEditors ...RequestEditorFn) (*GetDeploymentByNameResponse, error) + // RequestDeploymentDeletionWithResponse request RequestDeploymentDeletionWithResponse(ctx context.Context, workspaceId string, deploymentId string, reqEditors ...RequestEditorFn) (*RequestDeploymentDeletionResponse, error) @@ -9121,6 +9530,9 @@ type ClientWithResponsesInterface interface { RequestEnvironmentCreationWithResponse(ctx context.Context, workspaceId string, body RequestEnvironmentCreationJSONRequestBody, reqEditors ...RequestEditorFn) (*RequestEnvironmentCreationResponse, error) + // GetEnvironmentByNameWithResponse request + GetEnvironmentByNameWithResponse(ctx context.Context, workspaceId string, name string, reqEditors ...RequestEditorFn) (*GetEnvironmentByNameResponse, error) + // RequestEnvironmentDeletionWithResponse request RequestEnvironmentDeletionWithResponse(ctx context.Context, workspaceId string, environmentId string, reqEditors ...RequestEditorFn) (*RequestEnvironmentDeletionResponse, error) @@ -9648,6 +10060,77 @@ func (r RequestDeploymentVariableUpdateResponse) StatusCode() int { return 0 } +type ListDeploymentVersionDependenciesResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *[]DeploymentVersionDependency + JSON404 *ErrorResponse +} + +// Status returns HTTPResponse.Status +func (r ListDeploymentVersionDependenciesResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r ListDeploymentVersionDependenciesResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type RequestDeploymentVersionDependencyDeletionResponse struct { + Body []byte + HTTPResponse *http.Response + JSON202 *DeploymentRequestAccepted + JSON400 *ErrorResponse + JSON404 *ErrorResponse +} + +// Status returns HTTPResponse.Status +func (r RequestDeploymentVersionDependencyDeletionResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r RequestDeploymentVersionDependencyDeletionResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +type RequestDeploymentVersionDependencyUpsertResponse struct { + Body []byte + HTTPResponse *http.Response + JSON202 *DeploymentRequestAccepted + JSON400 *ErrorResponse + JSON404 *ErrorResponse +} + +// Status returns HTTPResponse.Status +func (r RequestDeploymentVersionDependencyUpsertResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r RequestDeploymentVersionDependencyUpsertResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + type RequestUserApprovalRecordUpsertResponse struct { Body []byte HTTPResponse *http.Response @@ -9709,6 +10192,8 @@ type RequestDeploymentCreationResponse struct { Body []byte HTTPResponse *http.Response JSON202 *DeploymentRequestAccepted + JSON400 *ErrorResponse + JSON409 *ErrorResponse } // Status returns HTTPResponse.Status @@ -9727,6 +10212,30 @@ func (r RequestDeploymentCreationResponse) StatusCode() int { return 0 } +type GetDeploymentByNameResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *DeploymentWithVariablesAndSystems + JSON400 *ErrorResponse + JSON404 *ErrorResponse +} + +// Status returns HTTPResponse.Status +func (r GetDeploymentByNameResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetDeploymentByNameResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + type RequestDeploymentDeletionResponse struct { Body []byte HTTPResponse *http.Response @@ -9779,6 +10288,8 @@ type RequestDeploymentUpsertResponse struct { Body []byte HTTPResponse *http.Response JSON202 *DeploymentRequestAccepted + JSON400 *ErrorResponse + JSON409 *ErrorResponse } // Status returns HTTPResponse.Status @@ -9917,8 +10428,9 @@ func (r ListDeploymentVersionsResponse) StatusCode() int { type CreateDeploymentVersionResponse struct { Body []byte HTTPResponse *http.Response - JSON202 *DeploymentVersion + JSON200 *DeploymentVersion JSON400 *ErrorResponse + JSON404 *ErrorResponse } // Status returns HTTPResponse.Status @@ -9997,6 +10509,8 @@ type RequestEnvironmentCreationResponse struct { Body []byte HTTPResponse *http.Response JSON202 *EnvironmentRequestAccepted + JSON400 *ErrorResponse + JSON409 *ErrorResponse } // Status returns HTTPResponse.Status @@ -10015,6 +10529,30 @@ func (r RequestEnvironmentCreationResponse) StatusCode() int { return 0 } +type GetEnvironmentByNameResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *EnvironmentWithSystems + JSON400 *ErrorResponse + JSON404 *ErrorResponse +} + +// Status returns HTTPResponse.Status +func (r GetEnvironmentByNameResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetEnvironmentByNameResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + type RequestEnvironmentDeletionResponse struct { Body []byte HTTPResponse *http.Response @@ -10069,6 +10607,7 @@ type RequestEnvironmentUpsertResponse struct { JSON202 *EnvironmentRequestAccepted JSON400 *ErrorResponse JSON404 *ErrorResponse + JSON409 *ErrorResponse } // Status returns HTTPResponse.Status @@ -11806,6 +12345,41 @@ func (c *ClientWithResponses) RequestDeploymentVariableUpdateWithResponse(ctx co return ParseRequestDeploymentVariableUpdateResponse(rsp) } +// ListDeploymentVersionDependenciesWithResponse request returning *ListDeploymentVersionDependenciesResponse +func (c *ClientWithResponses) ListDeploymentVersionDependenciesWithResponse(ctx context.Context, workspaceId string, deploymentVersionId string, reqEditors ...RequestEditorFn) (*ListDeploymentVersionDependenciesResponse, error) { + rsp, err := c.ListDeploymentVersionDependencies(ctx, workspaceId, deploymentVersionId, reqEditors...) + if err != nil { + return nil, err + } + return ParseListDeploymentVersionDependenciesResponse(rsp) +} + +// RequestDeploymentVersionDependencyDeletionWithResponse request returning *RequestDeploymentVersionDependencyDeletionResponse +func (c *ClientWithResponses) RequestDeploymentVersionDependencyDeletionWithResponse(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, reqEditors ...RequestEditorFn) (*RequestDeploymentVersionDependencyDeletionResponse, error) { + rsp, err := c.RequestDeploymentVersionDependencyDeletion(ctx, workspaceId, deploymentVersionId, dependencyDeploymentId, reqEditors...) + if err != nil { + return nil, err + } + return ParseRequestDeploymentVersionDependencyDeletionResponse(rsp) +} + +// RequestDeploymentVersionDependencyUpsertWithBodyWithResponse request with arbitrary body returning *RequestDeploymentVersionDependencyUpsertResponse +func (c *ClientWithResponses) RequestDeploymentVersionDependencyUpsertWithBodyWithResponse(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*RequestDeploymentVersionDependencyUpsertResponse, error) { + rsp, err := c.RequestDeploymentVersionDependencyUpsertWithBody(ctx, workspaceId, deploymentVersionId, dependencyDeploymentId, contentType, body, reqEditors...) + if err != nil { + return nil, err + } + return ParseRequestDeploymentVersionDependencyUpsertResponse(rsp) +} + +func (c *ClientWithResponses) RequestDeploymentVersionDependencyUpsertWithResponse(ctx context.Context, workspaceId string, deploymentVersionId string, dependencyDeploymentId string, body RequestDeploymentVersionDependencyUpsertJSONRequestBody, reqEditors ...RequestEditorFn) (*RequestDeploymentVersionDependencyUpsertResponse, error) { + rsp, err := c.RequestDeploymentVersionDependencyUpsert(ctx, workspaceId, deploymentVersionId, dependencyDeploymentId, body, reqEditors...) + if err != nil { + return nil, err + } + return ParseRequestDeploymentVersionDependencyUpsertResponse(rsp) +} + // RequestUserApprovalRecordUpsertWithBodyWithResponse request with arbitrary body returning *RequestUserApprovalRecordUpsertResponse func (c *ClientWithResponses) RequestUserApprovalRecordUpsertWithBodyWithResponse(ctx context.Context, workspaceId string, deploymentVersionId string, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*RequestUserApprovalRecordUpsertResponse, error) { rsp, err := c.RequestUserApprovalRecordUpsertWithBody(ctx, workspaceId, deploymentVersionId, contentType, body, reqEditors...) @@ -11849,6 +12423,15 @@ func (c *ClientWithResponses) RequestDeploymentCreationWithResponse(ctx context. return ParseRequestDeploymentCreationResponse(rsp) } +// GetDeploymentByNameWithResponse request returning *GetDeploymentByNameResponse +func (c *ClientWithResponses) GetDeploymentByNameWithResponse(ctx context.Context, workspaceId string, name string, reqEditors ...RequestEditorFn) (*GetDeploymentByNameResponse, error) { + rsp, err := c.GetDeploymentByName(ctx, workspaceId, name, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetDeploymentByNameResponse(rsp) +} + // RequestDeploymentDeletionWithResponse request returning *RequestDeploymentDeletionResponse func (c *ClientWithResponses) RequestDeploymentDeletionWithResponse(ctx context.Context, workspaceId string, deploymentId string, reqEditors ...RequestEditorFn) (*RequestDeploymentDeletionResponse, error) { rsp, err := c.RequestDeploymentDeletion(ctx, workspaceId, deploymentId, reqEditors...) @@ -11988,6 +12571,15 @@ func (c *ClientWithResponses) RequestEnvironmentCreationWithResponse(ctx context return ParseRequestEnvironmentCreationResponse(rsp) } +// GetEnvironmentByNameWithResponse request returning *GetEnvironmentByNameResponse +func (c *ClientWithResponses) GetEnvironmentByNameWithResponse(ctx context.Context, workspaceId string, name string, reqEditors ...RequestEditorFn) (*GetEnvironmentByNameResponse, error) { + rsp, err := c.GetEnvironmentByName(ctx, workspaceId, name, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetEnvironmentByNameResponse(rsp) +} + // RequestEnvironmentDeletionWithResponse request returning *RequestEnvironmentDeletionResponse func (c *ClientWithResponses) RequestEnvironmentDeletionWithResponse(ctx context.Context, workspaceId string, environmentId string, reqEditors ...RequestEditorFn) (*RequestEnvironmentDeletionResponse, error) { rsp, err := c.RequestEnvironmentDeletion(ctx, workspaceId, environmentId, reqEditors...) @@ -13252,6 +13844,119 @@ func ParseRequestDeploymentVariableUpdateResponse(rsp *http.Response) (*RequestD return response, nil } +// ParseListDeploymentVersionDependenciesResponse parses an HTTP response from a ListDeploymentVersionDependenciesWithResponse call +func ParseListDeploymentVersionDependenciesResponse(rsp *http.Response) (*ListDeploymentVersionDependenciesResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &ListDeploymentVersionDependenciesResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: + var dest []DeploymentVersionDependency + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 404: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON404 = &dest + + } + + return response, nil +} + +// ParseRequestDeploymentVersionDependencyDeletionResponse parses an HTTP response from a RequestDeploymentVersionDependencyDeletionWithResponse call +func ParseRequestDeploymentVersionDependencyDeletionResponse(rsp *http.Response) (*RequestDeploymentVersionDependencyDeletionResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &RequestDeploymentVersionDependencyDeletionResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 202: + var dest DeploymentRequestAccepted + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON202 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON400 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 404: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON404 = &dest + + } + + return response, nil +} + +// ParseRequestDeploymentVersionDependencyUpsertResponse parses an HTTP response from a RequestDeploymentVersionDependencyUpsertWithResponse call +func ParseRequestDeploymentVersionDependencyUpsertResponse(rsp *http.Response) (*RequestDeploymentVersionDependencyUpsertResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &RequestDeploymentVersionDependencyUpsertResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 202: + var dest DeploymentRequestAccepted + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON202 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON400 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 404: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON404 = &dest + + } + + return response, nil +} + // ParseRequestUserApprovalRecordUpsertResponse parses an HTTP response from a RequestUserApprovalRecordUpsertWithResponse call func ParseRequestUserApprovalRecordUpsertResponse(rsp *http.Response) (*RequestUserApprovalRecordUpsertResponse, error) { bodyBytes, err := io.ReadAll(rsp.Body) @@ -13350,6 +14055,60 @@ func ParseRequestDeploymentCreationResponse(rsp *http.Response) (*RequestDeploym } response.JSON202 = &dest + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON400 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 409: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON409 = &dest + + } + + return response, nil +} + +// ParseGetDeploymentByNameResponse parses an HTTP response from a GetDeploymentByNameWithResponse call +func ParseGetDeploymentByNameResponse(rsp *http.Response) (*GetDeploymentByNameResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetDeploymentByNameResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: + var dest DeploymentWithVariablesAndSystems + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON400 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 404: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON404 = &dest + } return response, nil @@ -13456,6 +14215,20 @@ func ParseRequestDeploymentUpsertResponse(rsp *http.Response) (*RequestDeploymen } response.JSON202 = &dest + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON400 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 409: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON409 = &dest + } return response, nil @@ -13650,12 +14423,12 @@ func ParseCreateDeploymentVersionResponse(rsp *http.Response) (*CreateDeployment } switch { - case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 202: + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: var dest DeploymentVersion if err := json.Unmarshal(bodyBytes, &dest); err != nil { return nil, err } - response.JSON202 = &dest + response.JSON200 = &dest case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: var dest ErrorResponse @@ -13664,6 +14437,13 @@ func ParseCreateDeploymentVersionResponse(rsp *http.Response) (*CreateDeployment } response.JSON400 = &dest + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 404: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON404 = &dest + } return response, nil @@ -13760,6 +14540,60 @@ func ParseRequestEnvironmentCreationResponse(rsp *http.Response) (*RequestEnviro } response.JSON202 = &dest + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON400 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 409: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON409 = &dest + + } + + return response, nil +} + +// ParseGetEnvironmentByNameResponse parses an HTTP response from a GetEnvironmentByNameWithResponse call +func ParseGetEnvironmentByNameResponse(rsp *http.Response) (*GetEnvironmentByNameResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetEnvironmentByNameResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: + var dest EnvironmentWithSystems + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON400 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 404: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON404 = &dest + } return response, nil @@ -13880,6 +14714,13 @@ func ParseRequestEnvironmentUpsertResponse(rsp *http.Response) (*RequestEnvironm } response.JSON404 = &dest + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 409: + var dest ErrorResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON409 = &dest + } return response, nil