-
Notifications
You must be signed in to change notification settings - Fork 1k
Update CI and add version command #996
Changes from 10 commits
d04e58e
33610e5
a189bb1
61c0b05
399752e
9a15432
52f2cc9
2484c39
f4428b6
ad93f48
9217125
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -37,11 +37,7 @@ That said, keep in mind the following: | |
|
||
## Setup | ||
|
||
Get the tool via | ||
|
||
```sh | ||
$ go get -u github.com/golang/dep/cmd/dep | ||
``` | ||
Grab the latest binary from the [releases](https://github.com/golang/dep/releases) page. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm not sure we want to remove the traditional way of getting Go tools from the README. 🤔 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Will There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. i don't think we can remove it, but we should de-emphasize it - put it after other recommended methods. |
||
|
||
On macOS you can install or upgrade to the latest released version with Homebrew: | ||
|
||
|
@@ -50,6 +46,12 @@ $ brew install dep | |
$ brew upgrade dep | ||
``` | ||
|
||
You can also install dep via | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. let's further advise against this by making the sentence read: "If you're interested in hacking on |
||
|
||
```sh | ||
go get -u github.com/dep/cmd/dep | ||
``` | ||
|
||
To start managing dependencies using dep, run the following from your project's root directory: | ||
|
||
```sh | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
// Copyright 2016 The Go Authors. All rights reserved. | ||
// Use of this source code is governed by a BSD-style | ||
// license that can be found in the LICENSE file. | ||
|
||
package main | ||
|
||
import ( | ||
"flag" | ||
"runtime" | ||
|
||
"github.com/golang/dep" | ||
) | ||
|
||
var ( | ||
version = "devel" | ||
buildDate string | ||
commitHash string | ||
) | ||
|
||
const versionHelp = `Show the dep version information` | ||
|
||
func (cmd *versionCommand) Name() string { return "version" } | ||
func (cmd *versionCommand) Args() string { | ||
return "" | ||
} | ||
func (cmd *versionCommand) ShortHelp() string { return versionHelp } | ||
func (cmd *versionCommand) LongHelp() string { return versionHelp } | ||
func (cmd *versionCommand) Hidden() bool { return false } | ||
|
||
func (cmd *versionCommand) Register(fs *flag.FlagSet) {} | ||
|
||
type versionCommand struct{} | ||
|
||
func (cmd *versionCommand) Run(ctx *dep.Ctx, args []string) error { | ||
ctx.Out.Printf(`dep: | ||
version : %s | ||
build date : %s | ||
git hash : %s | ||
go version : %s | ||
go compiler : %s | ||
platform : %s/%s | ||
`, version, buildDate, commitHash, | ||
runtime.Version(), runtime.Compiler, runtime.GOOS, runtime.GOARCH) | ||
return nil | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
#!/usr/bin/env bash | ||
# Copyright 2017 The Go Authors. All rights reserved. | ||
# Use of this source code is governed by a BSD-style | ||
# license that can be found in the LICENSE file. | ||
# | ||
# This script will build dep and calculate hash for each | ||
# (DEP_BUILD_PLATFORMS, DEP_BUILD_ARCHS) pair. | ||
# DEP_BUILD_PLATFORMS="linux" DEP_BUILD_ARCHS="amd64" ./hack/build-all.sh | ||
# can be called to build only for linux-amd64 | ||
|
||
set -e | ||
|
||
VERSION=$(git describe --tags --dirty) | ||
COMMIT_HASH=$(git rev-parse --short HEAD 2>/dev/null) | ||
DATE=$(date --iso-8601) | ||
|
||
GO_BUILD_CMD="go build -a -installsuffix cgo" | ||
GO_BUILD_LDFLAGS="-s -w -X main.commitHash=$COMMIT_HASH -X main.buildDate=$DATE -X main.version=$VERSION" | ||
|
||
if [ -z "$DEP_BUILD_PLATFORMS" ]; then | ||
DEP_BUILD_PLATFORMS="linux windows darwin" | ||
fi | ||
|
||
if [ -z "$DEP_BUILD_ARCHS" ]; then | ||
DEP_BUILD_ARCHS="amd64" | ||
fi | ||
|
||
mkdir -p release | ||
|
||
for OS in ${DEP_BUILD_PLATFORMS[@]}; do | ||
for ARCH in ${DEP_BUILD_ARCHS[@]}; do | ||
echo "Building for $OS/$ARCH" | ||
GOARCH=$ARCH GOOS=$OS CGO_ENABLED=0 $GO_BUILD_CMD -ldflags "$GO_BUILD_LDFLAGS"\ | ||
-o "release/dep-$OS-$ARCH" ./cmd/dep/ | ||
sha256sum "release/dep-$OS-$ARCH" > "release/dep-$OS-$ARCH".sha256 | ||
done | ||
done |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
#!/usr/bin/env bash | ||
# Copyright 2017 The Go Authors. All rights reserved. | ||
# Use of this source code is governed by a BSD-style | ||
# license that can be found in the LICENSE file. | ||
# | ||
# This script will generate coverage.txt | ||
set -e | ||
|
||
PKGS=$(go list ./... | grep -v /vendor/) | ||
for pkg in $PKGS; do | ||
go test -race -coverprofile=profile.out -covermode=atomic $pkg | ||
if [[ -f profile.out ]]; then | ||
cat profile.out >> coverage.txt | ||
rm profile.out | ||
fi | ||
done |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
#!/usr/bin/env bash | ||
# Copyright 2017 The Go Authors. All rights reserved. | ||
# Use of this source code is governed by a BSD-style | ||
# license that can be found in the LICENSE file. | ||
# | ||
# This script will validate code with various linters | ||
set -e | ||
|
||
PKGS=$(go list ./... | grep -v /vendor/) | ||
go vet $PKGS | ||
staticcheck $PKGS | ||
gosimple $PKGS |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
#!/usr/bin/env bash | ||
# Copyright 2017 The Go Authors. All rights reserved. | ||
# Use of this source code is governed by a BSD-style | ||
# license that can be found in the LICENSE file. | ||
# | ||
# This script will build licenseok and run it on all | ||
# source files to check licence | ||
set -e | ||
|
||
go build ./hack/licenseok | ||
find . -path ./vendor -prune -o -type f -name "*.go"\ | ||
-printf '%P\n' | xargs ./licenseok |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let's replace with "If you installed
dep
viago get
, report the version instead withcd $GOPATH/src/github.com/golang/dep && git describe --tags