Skip to content

Commit

Permalink
(dron-124) Add new command for build incomplete V2
Browse files Browse the repository at this point in the history
  • Loading branch information
TP Honey committed Oct 4, 2021
1 parent f535034 commit 6b1bfff
Show file tree
Hide file tree
Showing 4 changed files with 116 additions and 3 deletions.
1 change: 1 addition & 0 deletions drone/build/build.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,6 @@ var Command = cli.Command{
buildPromoteCmd,
buildRollbackCmd,
buildQueueCmd,
buildStatusCmd,
},
}
112 changes: 112 additions & 0 deletions drone/build/build_status.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
package build

import (
"os"
"text/template"

"github.com/drone/drone-cli/drone/internal"
"github.com/drone/funcmap"
"github.com/urfave/cli"
)

var buildStatusCmd = cli.Command{
Name: "status",
Usage: "show running builds status",
ArgsUsage: "",
Action: buildStatus,
Flags: []cli.Flag{
cli.StringFlag{
Name: "format",
Usage: "format output",
Value: tmplBuildStatus,
},
cli.StringFlag{
Name: "repo",
Usage: "repo filter",
},
cli.StringFlag{
Name: "branch",
Usage: "branch filter",
},
cli.StringFlag{
Name: "event",
Usage: "event filter",
},
cli.StringFlag{
Name: "status",
Usage: "status filter",
},
},
}

func buildStatus(c *cli.Context) error {
client, err := internal.NewClient(c)
if err != nil {
return err
}

instances, err := client.IncompleteV2()
if err != nil {
return err
}

tmpl, err := template.New("_").Funcs(funcmap.Funcs).Parse(c.String("format") + "\n")
if err != nil {
return err
}

slug := c.String("repo")
// branch := c.String("branch")
// event := c.String("event")
// status := c.String("status")

for _, instance := range instances {
if slug != "" && instance.RepoSlug != slug {
continue
}
// if branch != "" && instance. != branch {
// continue
// }
// if event != "" && instance.Build.Event != event {
// continue
// }
// if status != "" && instance.builds != status {
// continue
// }
templateErr := tmpl.Execute(os.Stdout, instance)
if templateErr != nil {
return templateErr
}
}
return nil
}

// template for build queue information
var tmplBuildStatus = "\x1b[33m{{ .RepoSlug }}#{{ .BuildNumber }} \x1b[0m" + `
Repo Namespace: {{ .RepoNamespace }}
Repo Name: {{ .RepoName }}
Repo Slug: {{ .RepoSlug }}
Build Number: {{ .BuildNumber }}
Build Author: {{ .BuildAuthor }}
Build Author Name : {{ .BuildAuthorName }}
Build Author Email: {{ .BuildAuthorEmail }}
Build Author Avatar : {{ .BuildAuthorAvatar }}
Build Sender: {{ .BuildSender }}
Build Started: {{ .BuildStarted | time }}
Build Finished: {{ .BuildFinished | time}}
Build Created: {{ .BuildCreated | time}}
Build Updated: {{ .BuildUpdated | time }}
Stage Name: {{ .StageName }}
Stage Kind: {{ .StageKind }}
Stage Type: {{ .StageType }}
Stage Status: {{ .StageStatus }}
Stage Machine: {{ .StageMachine }}
Stage OS: {{ .StageOS }}
Stage Arch: {{ .StageArch }}
Stage Variant: {{ .StageVariant }}
Stage Kernel: {{ .StageKernel }}
Stage Limit: {{ .StageLimit }}
Stage Limit Repo: {{ .StageLimitRepo }}
Stage Started: {{ .StageStarted | time }}
Stage Stopped: {{ .StageStopped | time }}
`
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ replace github.com/docker/docker => github.com/docker/engine v17.12.0-ce-rc1.0.2

require (
github.com/docker/go-units v0.3.3
github.com/drone/drone-go v1.6.2
github.com/drone/drone-go v1.7.0
github.com/drone/drone-runtime v1.1.1-0.20200623162453-61e33e2cab5d
github.com/drone/drone-yaml v0.0.0-20190729072335-70fa398b3560
github.com/drone/envsubst v1.0.3
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ github.com/docker/go-connections v0.3.0 h1:3lOnM9cSzgGwx8VfK/NGOW5fLQ0GjIlCkaktF
github.com/docker/go-connections v0.3.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec=
github.com/docker/go-units v0.3.3 h1:Xk8S3Xj5sLGlG5g67hJmYMmUgXv5N4PhkjJHHqrwnTk=
github.com/docker/go-units v0.3.3/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
github.com/drone/drone-go v1.6.2 h1:QT7o6Bfe5UCUea4ZU74JfzgkwFYbBNduuSQZTr1fQJE=
github.com/drone/drone-go v1.6.2/go.mod h1:fxCf9jAnXDZV1yDr0ckTuWd1intvcQwfJmTRpTZ1mXg=
github.com/drone/drone-go v1.7.0 h1:oEFWVcagBmAkVuFBpBq9lImZX1caDM+zRsmC4O1vXgQ=
github.com/drone/drone-go v1.7.0/go.mod h1:fxCf9jAnXDZV1yDr0ckTuWd1intvcQwfJmTRpTZ1mXg=
github.com/drone/drone-runtime v1.0.7-0.20190729070836-38f28a11afe8/go.mod h1:+osgwGADc/nyl40J0fdsf8Z09bgcBZXvXXnLOY48zYs=
github.com/drone/drone-runtime v1.1.1-0.20200623162453-61e33e2cab5d h1:P5HI/Y9hARTZ3F3EKs0kYijhjXZWQRQHYn1neTi0pWM=
github.com/drone/drone-runtime v1.1.1-0.20200623162453-61e33e2cab5d/go.mod h1:4/2QToW5+HGD0y1sTw7X35W1f7YINS14UfDY4isggT8=
Expand Down

0 comments on commit 6b1bfff

Please sign in to comment.