Skip to content

Commit

Permalink
Support returning status transitions in runs
Browse files Browse the repository at this point in the history
  • Loading branch information
impl committed Sep 6, 2023
1 parent 6aa9155 commit 0b38b44
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 2 deletions.
5 changes: 3 additions & 2 deletions run.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ type runs struct {
// RunStatus represents a run state.
type RunStatus string

//List all available run statuses.
// List all available run statuses.
const (
RunApplied RunStatus = "applied"
RunApplyQueued RunStatus = "apply_queued"
Expand Down Expand Up @@ -79,6 +79,7 @@ type Run struct {
Plan *Plan `jsonapi:"relation,plan"`
PolicyChecks []*PolicyCheck `jsonapi:"relation,policy-checks"`
Workspace *Workspace `jsonapi:"relation,workspace"`
StatusTransitions []*StatusTransition `jsonapi:"relation,status-transitions"`
}

// RunCreateOptions represents the options for creating a new run.
Expand Down Expand Up @@ -140,7 +141,7 @@ func (s *runs) Read(ctx context.Context, runID string) (*Run, error) {
options := struct {
Include string `url:"include"`
}{
Include: "vcs-revision",
Include: "vcs-revision,status-transitions",
}

u := fmt.Sprintf("runs/%s", url.QueryEscape(runID))
Expand Down
10 changes: 10 additions & 0 deletions status_transition.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package scalr

import "time"

type StatusTransition struct {
ID string `jsonapi:"primary,status-transitions"`
Status RunStatus `jsonapi:"attr,status"`
Reason *string `jsonapi:"attr,reason,omitempty"`
CreatedAt time.Time `jsonapi:"attr,occurred-at,iso8601"`
}

0 comments on commit 0b38b44

Please sign in to comment.