Skip to content

Commit 9d0cf23

Browse files
committed
chore: update stacks resource schemas
1 parent 9f57f8d commit 9d0cf23

File tree

4 files changed

+67
-56
lines changed

4 files changed

+67
-56
lines changed

stack.go

Lines changed: 44 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -83,22 +83,27 @@ type StackVCSRepoOptions struct {
8383
OAuthTokenID string `json:"oauth-token-id,omitempty"`
8484
}
8585

86+
type LinkedStackConnections struct {
87+
UpstreamCount int `jsonapi:"attr,upstream-count"`
88+
DownstreamCount int `jsonapi:"attr,downstream-count"`
89+
InputsCount int `jsonapi:"attr,inputs-count"`
90+
OutputsCount int `jsonapi:"attr,outputs-count"`
91+
}
92+
8693
// Stack represents a stack.
8794
type Stack struct {
88-
ID string `jsonapi:"primary,stacks"`
89-
Name string `jsonapi:"attr,name"`
90-
Description string `jsonapi:"attr,description"`
91-
DeploymentNames []string `jsonapi:"attr,deployment-names"`
92-
VCSRepo *StackVCSRepo `jsonapi:"attr,vcs-repo"`
93-
ErrorsCount int `jsonapi:"attr,errors-count"`
94-
WarningsCount int `jsonapi:"attr,warnings-count"`
95-
SpeculativeEnabled bool `jsonapi:"attr,speculative-enabled"`
96-
CreatedAt time.Time `jsonapi:"attr,created-at,iso8601"`
97-
UpdatedAt time.Time `jsonapi:"attr,updated-at,iso8601"`
95+
ID string `jsonapi:"primary,stacks"`
96+
Name string `jsonapi:"attr,name"`
97+
Description string `jsonapi:"attr,description"`
98+
VCSRepo *StackVCSRepo `jsonapi:"attr,vcs-repo"`
99+
SpeculativeEnabled bool `jsonapi:"attr,speculative-enabled"`
100+
CreatedAt time.Time `jsonapi:"attr,created-at,iso8601"`
101+
UpdatedAt time.Time `jsonapi:"attr,updated-at,iso8601"`
102+
LinkedStackConnections *LinkedStackConnections `jsonapi:"attr,linked-stack-connections"`
98103

99104
// Relationships
100-
AgentPool *AgentPool `jsonapi:"relation,agent-pool"`
101105
Project *Project `jsonapi:"relation,project"`
106+
AgentPool *AgentPool `jsonapi:"relation,agent-pool"`
102107
LatestStackConfiguration *StackConfiguration `jsonapi:"relation,latest-stack-configuration"`
103108
}
104109

@@ -117,54 +122,49 @@ type StackComponent struct {
117122
Name string `json:"name"`
118123
Correlator string `json:"correlator"`
119124
Expanded bool `json:"expanded"`
125+
Removed bool `json:"removed"`
120126
}
121127

122128
// StackConfiguration represents a stack configuration snapshot
123129
type StackConfiguration struct {
124130
// Attributes
125-
ID string `jsonapi:"primary,stack-configurations"`
126-
Status string `jsonapi:"attr,status"`
127-
StatusTimestamps *StackConfigurationStatusTimestamps `jsonapi:"attr,status-timestamps"`
128-
SequenceNumber int `jsonapi:"attr,sequence-number"`
129-
DeploymentNames []string `jsonapi:"attr,deployment-names"`
130-
ConvergedDeployments []string `jsonapi:"attr,converged-deployments"`
131-
Components []*StackComponent `jsonapi:"attr,components"`
132-
ErrorMessage *string `jsonapi:"attr,error-message"`
133-
EventStreamURL string `jsonapi:"attr,event-stream-url"`
134-
Diagnostics []*StackDiagnostic `jsonapi:"attr,diags"`
135-
CreatedAt time.Time `jsonapi:"attr,created-at,iso8601"`
136-
UpdatedAt time.Time `jsonapi:"attr,updated-at,iso8601"`
137-
138-
Stack *Stack `jsonapi:"relation,stack"`
131+
ID string `jsonapi:"primary,stack-configurations"`
132+
Status string `jsonapi:"attr,status"`
133+
SequenceNumber int `jsonapi:"attr,sequence-number"`
134+
Components []*StackComponent `jsonapi:"attr,components"`
135+
PreparingEventStreamURL string `jsonapi:"attr,preparing-event-stream-url"`
136+
CreatedAt time.Time `jsonapi:"attr,created-at,iso8601"`
137+
UpdatedAt time.Time `jsonapi:"attr,updated-at,iso8601"`
138+
Speculative bool `jsonapi:"attr,speculative"`
139+
140+
// Relationships
141+
Stack *Stack `jsonapi:"relation,stack"`
142+
IngressAttributes *IngressAttributes `jsonapi:"relation,ingress-attributes"`
139143
}
140144

141145
// StackState represents a stack state
142146
type StackState struct {
143147
// Attributes
144-
ID string `jsonapi:"primary,stack-states"`
145-
}
148+
ID string `jsonapi:"primary,stack-states"`
149+
Description string `jsonapi:"attr,description"`
150+
Generation int `jsonapi:"attr,generation"`
151+
Status string `jsonapi:"attr,status"`
152+
Deployment string `jsonapi:"attr,deployment"`
153+
Components string `jsonapi:"attr,components"`
154+
IsCurrent bool `jsonapi:"attr,is-current"`
155+
ResourceInstanceCount int `jsonapi:"attr,resource-instance-count"`
146156

147-
// StackIncludeOpt represents the include options for a stack.
148-
type StackIncludeOpt string
149-
150-
const (
151-
StackIncludeOrganization StackIncludeOpt = "organization"
152-
StackIncludeProject StackIncludeOpt = "project"
153-
StackIncludeLatestStackConfiguration StackIncludeOpt = "latest_stack_configuration"
154-
StackIncludeStackDiagnostics StackIncludeOpt = "stack_diagnostics"
155-
)
157+
// Relationships
158+
Stack *Stack `jsonapi:"relation,stack"`
159+
StackDeploymentRun *StackDeploymentRun `jsonapi:"relation,stack-deployment-run"`
160+
}
156161

157162
// StackListOptions represents the options for listing stacks.
158163
type StackListOptions struct {
159164
ListOptions
160-
ProjectID string `url:"filter[project[id]],omitempty"`
161-
Sort StackSortColumn `url:"sort,omitempty"`
162-
SearchByName string `url:"search[name],omitempty"`
163-
Include []StackIncludeOpt `url:"include,omitempty"`
164-
}
165-
166-
type StackReadOptions struct {
167-
Include []StackIncludeOpt `url:"include,omitempty"`
165+
ProjectID string `url:"filter[project[id]],omitempty"`
166+
Sort StackSortColumn `url:"sort,omitempty"`
167+
SearchByName string `url:"search[name],omitempty"`
168168
}
169169

170170
// StackCreateOptions represents the options for creating a stack. The project

stack_configuration.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,6 @@ const (
5151
StackConfigurationStatusQueued StackConfigurationStatus = "queued"
5252
StackConfigurationStatusPreparing StackConfigurationStatus = "preparing"
5353
StackConfigurationStatusEnqueueing StackConfigurationStatus = "enqueueing"
54-
StackConfigurationStatusConverged StackConfigurationStatus = "converged"
55-
StackConfigurationStatusConverging StackConfigurationStatus = "converging"
5654
StackConfigurationStatusErrored StackConfigurationStatus = "errored"
5755
StackConfigurationStatusCanceled StackConfigurationStatus = "canceled"
5856
StackConfigurationStatusCompleted StackConfigurationStatus = "completed"
@@ -117,7 +115,7 @@ func (s stackConfigurations) AwaitCompleted(ctx context.Context, stackConfigurat
117115
}
118116

119117
return stackConfiguration.Status, nil
120-
}, []string{StackConfigurationStatusConverged.String(), StackConfigurationStatusConverging.String(), StackConfigurationStatusCompleted.String(), StackConfigurationStatusErrored.String(), StackConfigurationStatusCanceled.String()})
118+
}, []string{StackConfigurationStatusCompleted.String(), StackConfigurationStatusErrored.String(), StackConfigurationStatusCanceled.String()})
121119
}
122120

123121
// AwaitStatus generates a channel that will receive the status of the stack configuration as it progresses.

stack_deployment_groups.go

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,14 @@ type StackDeploymentGroups interface {
3232
type DeploymentGroupStatus string
3333

3434
const (
35-
DeploymentGroupStatusPending DeploymentGroupStatus = "pending"
36-
DeploymentGroupStatusDeploying DeploymentGroupStatus = "deploying"
37-
DeploymentGroupStatusSucceeded DeploymentGroupStatus = "succeeded"
38-
DeploymentGroupStatusFailed DeploymentGroupStatus = "failed"
39-
DeploymentGroupStatusAbandoned DeploymentGroupStatus = "abandoned"
35+
DeploymentGroupStatusPending DeploymentGroupStatus = "pending"
36+
DeploymentGroupStatusPreDeploying DeploymentGroupStatus = "pre-deploying"
37+
DeploymentGroupStatusPreDeployingPendingOperator DeploymentGroupStatus = "pending-operator"
38+
DeploymentGroupStatusAcquiringLock DeploymentGroupStatus = "acquiring-lock"
39+
DeploymentGroupStatusDeploying DeploymentGroupStatus = "deploying"
40+
DeploymentGroupStatusSucceeded DeploymentGroupStatus = "succeeded"
41+
DeploymentGroupStatusFailed DeploymentGroupStatus = "failed"
42+
DeploymentGroupStatusAbandoned DeploymentGroupStatus = "abandoned"
4043
)
4144

4245
// stackDeploymentGroups implements StackDeploymentGroups.

stack_diagnostic.go

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,25 @@
33

44
package tfe
55

6+
import "time"
7+
68
// StackDiagnostic represents any sourcebundle.Diagnostic value. The simplest form has
79
// just a severity, single line summary, and optional detail. If there is more
810
// information about the source of the diagnostic, this is represented in the
911
// range field.
1012
type StackDiagnostic struct {
11-
Severity string `jsonapi:"attr,severity"`
12-
Summary string `jsonapi:"attr,summary"`
13-
Detail string `jsonapi:"attr,detail"`
14-
Range *DiagnosticRange `jsonapi:"attr,range"`
13+
Severity string `jsonapi:"attr,severity"`
14+
Summary string `jsonapi:"attr,summary"`
15+
Detail string `jsonapi:"attr,detail"`
16+
Diags *DiagnosticRange `jsonapi:"attr,diags"`
17+
Acknowledged bool `jsonapi:"attr,acknowledged"`
18+
AcknowledgedAt *time.Time `jsonapi:"attr,acknowledged-at,iso8601"`
19+
CreatedAt *time.Time `jsonapi:"attr,created-at,iso8601"`
20+
21+
// Relationships
22+
StackDeploymentStep *StackConfiguration `jsonapi:"relation,stack-deployment-step"`
23+
StackConfiguration *StackConfiguration `jsonapi:"relation,stack-configuration"`
24+
AcknowledgedBy *User `jsonapi:"relation,acknowledged-by"`
1525
}
1626

1727
// DiagnosticPos represents a position in the source code.

0 commit comments

Comments
 (0)