Skip to content
This repository has been archived by the owner on Jan 14, 2022. It is now read-only.

Commit

Permalink
issue #56 switch to kingpin for flag processing
Browse files Browse the repository at this point in the history
  • Loading branch information
nickg committed Mar 14, 2018
1 parent d724148 commit 33385e0
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 28 deletions.
40 changes: 31 additions & 9 deletions Gopkg.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

21 changes: 9 additions & 12 deletions main.go
Expand Up @@ -2,7 +2,6 @@ package main

import (
"bytes"
"flag"
"fmt"
"log"
"net/http"
Expand All @@ -14,6 +13,8 @@ import (
"github.com/goreleaser/goreleaser/config"
"github.com/goreleaser/goreleaser/context"
"github.com/goreleaser/goreleaser/pipeline/defaults"

"gopkg.in/alecthomas/kingpin.v2"
)

// given a template, and a config, generate shell script
Expand Down Expand Up @@ -174,26 +175,22 @@ func Load(repo string, file string) (project *config.Project, err error) {

func main() {
var (
source = flag.String("source", "godownloader", "download source")
exe = flag.String("exe", "", "name of binary, used only in raw")
nametpl = flag.String("nametpl", "", "name template, used only in raw")
repo = flag.String("repo", "", "owner/name of repository")
repo = kingpin.Flag("repo", "owner/name or URL of GitHub repository").Required().String()
source = kingpin.Flag("source", "source type [godownloader|raw|equinoxio]").Default("godownloader").String()
exe = kingpin.Flag("exe", "name of binary, used only in raw").String()
nametpl = kingpin.Flag("nametpl", "name template, used only in raw").String()
file = kingpin.Arg("file", "??").String()
)

flag.Parse()
args := flag.Args()
file := ""
if len(args) > 0 {
file = args[0]
}
kingpin.Parse()
var (
out string
err error
)
switch *source {
case "godownloader":
// https://github.com/goreleaser/godownloader
out, err = processGodownloader(*repo, file)
out, err = processGodownloader(*repo, *file)
case "equinoxio":
// https://equinox.io
out, err = processEquinoxio(*repo)
Expand Down
14 changes: 7 additions & 7 deletions scripts/build_samples.sh
@@ -1,17 +1,17 @@
#!/bin/sh -ex
./godownloader -repo gohugoio/hugo >samples/godownloader-hugo.sh
./godownloader -repo goreleaser/goreleaser >samples/godownloader-goreleaser.sh
./godownloader -repo client9/misspell >samples/godownloader-misspell.sh
./godownloader -repo tdewolff/minify >samples/godownloader-minify.sh
./godownloader --repo gohugoio/hugo >samples/godownloader-hugo.sh
./godownloader --repo goreleaser/goreleaser >samples/godownloader-goreleaser.sh
./godownloader --repo client9/misspell >samples/godownloader-misspell.sh
./godownloader --repo tdewolff/minify >samples/godownloader-minify.sh

# good example of multi-build and wrapped directory
./godownloader -repo https://github.com/alecthomas/gometalinter >samples/godownloader-gometalinter.sh
./godownloader --repo https://github.com/alecthomas/gometalinter >samples/godownloader-gometalinter.sh

# binary and repo name do not match
./godownloader -source raw -repo mvdan/sh -exe shfmt >samples/godownloader-shfmt.sh
./godownloader --source raw --repo mvdan/sh --exe shfmt >samples/godownloader-shfmt.sh

# uses zip
./godownloader -repo serverless/event-gateway >samples/godownloader-event-gateway.sh
./godownloader --repo serverless/event-gateway >samples/godownloader-event-gateway.sh

chmod a+x samples/*.sh

Expand Down

0 comments on commit 33385e0

Please sign in to comment.