
go get [-u] github.com/iwdgo/toolstash-check
Toolstash-check automates running toolstash -cmp against a CL.
Usage:
toolstash-check [options] [commit]
Toolstash-check automates the following workflow for compiler
regression testing a CL:
-
Clone the $GOROOT Git repo into a new temporary directory.
-
Checks out the specified commit's parent.
-
Runs make.bash and toolstash save. (It sets GOROOT so that
toolstash saves into the temporary directory.)
-
Checks out the specified commit itself.
-
Runs "go install std cmd".
-
Runs "go build -a -toolexec='toolstash -cmp' std cmd".
If no commit ID is specified, toolstash-check defaults to HEAD.
If -all is specified, toolstash-check instead runs
golang.org/x/tools/cmd/toolstash/buildall
for the final step.
Using Continuous Integration
Flag -repo <filepath to repo>
Flag allows set file path to repository which defaults to GOROOT
.
Flag -v
Logs key steps for debugging purposes.
Travis CI
The compiler-travis
branch of go-upon-ci runs this fork of
toolstash-check on tip of
golang/go repository.
Patch files are produced using git format-patch <your commit>
or git format-patch -1
.
After commit
, git push
to your account to trigger CI.
Travis CI detects your file after account setup and granting rights to the repository.