Skip to content

Instantly share code, notes, and snippets.

@bradrydzewski
Last active April 14, 2016 22:32
Show Gist options
  • Save bradrydzewski/bc6e96cb88718de51ce3 to your computer and use it in GitHub Desktop.
Save bradrydzewski/bc6e96cb88718de51ce3 to your computer and use it in GitHub Desktop.

Revisions

  1. bradrydzewski revised this gist Mar 24, 2016. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions build_latest.go
    Original file line number Diff line number Diff line change
    @@ -31,12 +31,12 @@ func main() {

    for _, build := range builds {
    if build.Status == drone.StatusPending || build.Status == drone.StatusRunning {
    log.Fatalf("Build is already in progress for %s. Exiting now.", name)
    log.Fatalf("Build is already in progress for %s.", name)
    }
    if build.Branch == *branch && build.Event == "push" {
    forked, err := client.BuildFork(owner, name, build.Number)
    if err != nil {
    log.Fatalf("Unable to fork build %s/%s#%d. %s. Exiting now.", owner, name, build.Number, err)
    log.Fatalf("Unable to fork build %s/%s#%d. %s.", owner, name, build.Number, err)
    }
    log.Printf("Created new build for %s/%s@%s", owner, name, forked.Commit)
    break
  2. bradrydzewski revised this gist Mar 24, 2016. 1 changed file with 1 addition and 2 deletions.
    3 changes: 1 addition & 2 deletions build_latest.go
    Original file line number Diff line number Diff line change
    @@ -36,8 +36,7 @@ func main() {
    if build.Branch == *branch && build.Event == "push" {
    forked, err := client.BuildFork(owner, name, build.Number)
    if err != nil {
    log.Fatalf("Unable to fork build %s/%s#%d. %s. Exiting now.",
    owner, name, build.Number, err)
    log.Fatalf("Unable to fork build %s/%s#%d. %s. Exiting now.", owner, name, build.Number, err)
    }
    log.Printf("Created new build for %s/%s@%s", owner, name, forked.Commit)
    break
  3. bradrydzewski revised this gist Mar 24, 2016. 1 changed file with 2 additions and 1 deletion.
    3 changes: 2 additions & 1 deletion build_latest.go
    Original file line number Diff line number Diff line change
    @@ -36,7 +36,8 @@ func main() {
    if build.Branch == *branch && build.Event == "push" {
    forked, err := client.BuildFork(owner, name, build.Number)
    if err != nil {
    log.Fatalf("Build is already in progress for %s. %s. Exiting now.", name, err)
    log.Fatalf("Unable to fork build %s/%s#%d. %s. Exiting now.",
    owner, name, build.Number, err)
    }
    log.Printf("Created new build for %s/%s@%s", owner, name, forked.Commit)
    break
  4. bradrydzewski created this gist Mar 23, 2016.
    45 changes: 45 additions & 0 deletions build_latest.go
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,45 @@
    package main

    import (
    "flag"
    "log"
    "strings"

    "github.com/drone/drone-go/drone"
    )

    var (
    repo = flag.String("repo", "", "repository name (ie octocat/hello-world")
    branch = flag.String("branch", "master", "repository branch (ie master)")
    token = flag.String("token", "", "drone token")
    server = flag.String("server", "", "drone server")
    )

    func main() {
    flag.Parse()

    var (
    owner = strings.Split(*repo, "/")[0]
    name = strings.Split(*repo, "/")[1]
    )

    client := drone.NewClientToken(*server, *token)
    builds, err := client.BuildList(owner, name)
    if err != nil {
    log.Fatalf("Unable to get build list for %s. %s", name, err)
    }

    for _, build := range builds {
    if build.Status == drone.StatusPending || build.Status == drone.StatusRunning {
    log.Fatalf("Build is already in progress for %s. Exiting now.", name)
    }
    if build.Branch == *branch && build.Event == "push" {
    forked, err := client.BuildFork(owner, name, build.Number)
    if err != nil {
    log.Fatalf("Build is already in progress for %s. %s. Exiting now.", name, err)
    }
    log.Printf("Created new build for %s/%s@%s", owner, name, forked.Commit)
    break
    }
    }
    }