diff --git a/.travis.yml b/.travis.yml index 0fc4d88484..c4f154a345 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,7 +12,6 @@ cache: script: - ./build.sh setup - - ./build.sh vendor - ./build.sh utils - ./build.sh protobuf_verify - ./build.sh test @@ -42,8 +41,8 @@ deploy: on: tags: true condition: $GITHUB_TOKEN != "" - + notifications: slack: secure: auV9VWkA50+tf4cKUUkMH/KqggKSJCBV9ruLSF1LVgqQYnK34rp/PPzx4gTiQYA07ltnu8Hi13XMoN5+OFsRfzVRCKP1tlGuTvVhpsoyMGiNxBY1Yw2OhZXRoSjCwJkuBsAkkaxAgsC58IEnxhKq+M83dDYx+WiybO+aQnQ6ExbGE4oUBhhBkYKrHy4Kt9/3yWLqicV/VXFtvwbXG5OG1zNNOYCUEud4Y8j6pcb0kyVqlHFjAjasLPsln0QSaTxOThLZCxMZD2zpbI1xxO5tBusqDe1QOMSgsyAbDaNk7wCb2kU+0hRKcfiuWShrswhECSJsYUImLq4c77WbdhrjRgscgY2779T/jaJHbG3Lx7GlDWYLSgFcM8VfZK+K5XPcm35F2qGPiEjtYEEAPS2qQM9PZyvTEVPxjNEc2PE3bINTjibcKbfATNa1ULQvJ6ixtSL9Ao8828iUfaR0mK4eaWnJckov5OaGvah+v6vh49JqZTEN3Or8XTUw0ra14euS6jR30XB2Y3S8/0NuvHY+ytJe36yQn9FdFM3asNpBuNP7F9v00WJr3+Lhg7KHMd0m19ulwtmXiWJYU25AVMk/oXp+aq+678AvhYkYZGaUzC3timsuTlAjH9DA9yxBW+8KE9y46Jq8vXHXhKTfdKDVVUyOFxKKGAjCA5QbeKx+5QU= - + diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 68721fd983..4b45cd084a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -10,8 +10,7 @@ from the SPIFFE project. For basic development you will need: -* **Go** (https://golang.org/dl/) -* **Dep**, for managing third-party dependancies (https://github.com/golang/dep) +* **Go 1.11** or higher (https://golang.org/dl/) For development that requires changes to the gRPC interfaces you will need: @@ -22,13 +21,10 @@ For development that requires changes to the gRPC interfaces you will need: # Building -It is assumed that this repository lives in $GOPATH/src/github.com/spiffe/spire on your local disk, -and that your GOPATH only contains one element. +Since go modules are used, this repository can live in any folder on your local disk (it is not required to be in GOPATH). -Because of the use of dep and the unusual layout of this repository a Makefile is provide for -common actions. +A Makefile is provided for common actions. -* `dep ensure` - installs all the dependencies listed in Gopkg.toml * `make all` - installs 3rd-party dependencies, build all binaries, and run all tests * `make` - builds all binaries * `make cmd/spire-agent` - builds one binary @@ -36,11 +32,12 @@ common actions. **Other Makefile targets** -* `vendor` - installs 3rd-party dependencies using dep +* `vendor` - Make vendored copy of dependencies using go mod * `race-test` - run `go test -race` -* `clean` - cleans `vendor` directory, dep cache +* `clean` - cleans `vendor` directory * `distclean` - removes caches in addition to `make clean` * `utils` - installs gRPC related development utilities +* `help` - shows makefile targets and description ## Development in Docker @@ -60,10 +57,7 @@ $ make container $ make cmd ``` -Because the docker container shares $GOPATH you will not have to re-install the go dependencies -every time you run the container. NOTE: any binaries installed from within the container will be -located in $GOPATH/bin/linux_amd64 to avoid conflicts with the host OS (Packages are automatically -versioned by golang into `$GOPATH/pkg/_`) +Because the docker container shares `$GOPATH/pkg/mod` you will not have to re-install the go dependencies every time you run the container. ## CI @@ -74,7 +68,6 @@ checks. It is also used to bootstrap the Go environment in the Docker container. * `protobuf` - regenerate the gRPC pb.go and README.md files * `protobuf_verify` - check that the checked-in generated code is up-to-date * `distclean` - calls `make distclean` and removes the directory `.build--` -* `vendor` - calls `make vendor` and checks that the `Gopkg.lock` file is up-to-date * `artifact` - generate a `.tgz` containing all of the SPIFFE binaries * `test` - when called from within a Travis-CI build, runs coverage tests in addition to the regular tests diff --git a/Dockerfile b/Dockerfile index 1b714fbeea..6d890b2972 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,4 +12,4 @@ ENV GOROOT=/root/build ENV GOBIN=$GOPATH/bin/linux_amd64 ENV PATH=$GOROOT/bin:$GOBIN:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin RUN mkdir /root/go -WORKDIR /root/go/src/github.com/spiffe/spire +WORKDIR /root/spire diff --git a/Gopkg.lock b/Gopkg.lock deleted file mode 100644 index 83b849cbfa..0000000000 --- a/Gopkg.lock +++ /dev/null @@ -1,714 +0,0 @@ -# This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. - - -[[projects]] - digest = "1:7af143c2c7ee68cbfc2479e997d8341aaa459114a2843b3f8e23130c0e4d0bf8" - name = "github.com/Azure/azure-sdk-for-go" - packages = [ - "profiles/latest/compute/mgmt/compute", - "profiles/latest/network/mgmt/network", - "profiles/latest/resources/mgmt/resources", - "services/compute/mgmt/2018-04-01/compute", - "services/network/mgmt/2018-01-01/network", - "services/resources/mgmt/2018-02-01/resources", - "version", - ] - pruneopts = "UT" - revision = "4e8cbbfb1aeab140cd0fa97fd16b64ee18c3ca6a" - version = "v19.1.0" - -[[projects]] - digest = "1:e782078a170a8f36451e2b6468d0cce2ac394d809054d8ec6820961fa58430fe" - name = "github.com/Azure/go-autorest" - packages = [ - "autorest", - "autorest/adal", - "autorest/azure", - "autorest/azure/auth", - "autorest/date", - "autorest/to", - "autorest/validation", - "logger", - "version", - ] - pruneopts = "UT" - revision = "39013ecb48eaf6ced3f4e3e1d95515140ce6b3cf" - version = "v10.15.2" - -[[projects]] - digest = "1:e92f5581902c345eb4ceffdcd4a854fb8f73cf436d47d837d1ec98ef1fe0a214" - name = "github.com/StackExchange/wmi" - packages = ["."] - pruneopts = "UT" - revision = "5d049714c4a64225c3c79a7cf7d02f7fb5b96338" - version = "1.0.0" - -[[projects]] - branch = "master" - digest = "1:ef5b0622d834c139454148b8fd0c92bb314828900532b267ae62da9fec109866" - name = "github.com/armon/go-metrics" - packages = ["."] - pruneopts = "UT" - revision = "3c58d8115a78a6879e5df75ae900846768d36895" - -[[projects]] - digest = "1:c47f4964978e211c6e566596ec6246c329912ea92e9bb99c00798bb4564c5b09" - name = "github.com/armon/go-radix" - packages = ["."] - pruneopts = "UT" - revision = "1a2de0c21c94309923825da3df33a4381872c795" - version = "v1.0.0" - -[[projects]] - digest = "1:90d9ba275cb7a7c2c926c5e1d4f9f2b6fe96b8e85c3b7c5f60bdc7d9ad6f8f52" - name = "github.com/aws/aws-sdk-go" - packages = [ - "aws", - "aws/awserr", - "aws/awsutil", - "aws/client", - "aws/client/metadata", - "aws/corehandlers", - "aws/credentials", - "aws/credentials/ec2rolecreds", - "aws/credentials/endpointcreds", - "aws/credentials/stscreds", - "aws/csm", - "aws/defaults", - "aws/ec2metadata", - "aws/endpoints", - "aws/request", - "aws/session", - "aws/signer/v4", - "internal/sdkio", - "internal/sdkrand", - "internal/sdkuri", - "internal/shareddefaults", - "private/protocol", - "private/protocol/ec2query", - "private/protocol/query", - "private/protocol/query/queryutil", - "private/protocol/rest", - "private/protocol/xml/xmlutil", - "service/ec2", - "service/iam", - "service/sts", - ] - pruneopts = "UT" - revision = "7715ed93fca215da2c707088a0cca5646ad91543" - version = "v1.15.24" - -[[projects]] - digest = "1:1343a2963481a305ca4d051e84bc2abd16b601ee22ed324f8d605de1adb291b0" - name = "github.com/bgentry/speakeasy" - packages = ["."] - pruneopts = "UT" - revision = "4aabc24848ce5fd31929f7d1e4ea74d3709c14cd" - version = "v0.1.0" - -[[projects]] - digest = "1:ffe9824d294da03b391f44e1ae8281281b4afc1bdaa9588c9097785e3af10cec" - name = "github.com/davecgh/go-spew" - packages = ["spew"] - pruneopts = "UT" - revision = "8991bc29aa16c548c550c7ff78260e27b9ab7c73" - version = "v1.1.1" - -[[projects]] - digest = "1:76dc72490af7174349349838f2fe118996381b31ea83243812a97e5a0fd5ed55" - name = "github.com/dgrijalva/jwt-go" - packages = ["."] - pruneopts = "UT" - revision = "06ea1031745cb8b3dab3f6a236daf2b0aa468b7e" - version = "v3.2.0" - -[[projects]] - branch = "master" - digest = "1:e608bc2d867c3ded40ccea5417715393a50704ac24004afa87431a0e1976e50d" - name = "github.com/dimchansky/utfbom" - packages = ["."] - pruneopts = "UT" - revision = "5448fe645cb1964ba70ac8f9f2ffe975e61a536c" - -[[projects]] - digest = "1:865079840386857c809b72ce300be7580cb50d3d3129ce11bf9aa6ca2bc1934a" - name = "github.com/fatih/color" - packages = ["."] - pruneopts = "UT" - revision = "5b77d2a35fb0ede96d138fc9a99f5c9b6aef11b4" - version = "v1.7.0" - -[[projects]] - digest = "1:2cd7915ab26ede7d95b8749e6b1f933f1c6d5398030684e6505940a10f31cfda" - name = "github.com/ghodss/yaml" - packages = ["."] - pruneopts = "UT" - revision = "0ca9ea5df5451ffdf184b4428c902747c2c11cd7" - version = "v1.0.0" - -[[projects]] - digest = "1:5abd6a22805b1919f6a6bca0ae58b13cef1f3412812f38569978f43ef02743d4" - name = "github.com/go-ini/ini" - packages = ["."] - pruneopts = "UT" - revision = "5cf292cae48347c2490ac1a58fe36735fb78df7e" - version = "v1.38.2" - -[[projects]] - digest = "1:64a5a67c69b70c2420e607a8545d674a23778ed9c3e80607bfd17b77c6c87f6a" - name = "github.com/go-ole/go-ole" - packages = [ - ".", - "oleutil", - ] - pruneopts = "UT" - revision = "a41e3c4b706f6ae8dfbff342b06e40fa4d2d0506" - version = "v1.2.1" - -[[projects]] - digest = "1:c594a691090b434d55c67f6cc8e326ef5ba49452abc059821bd5d4fd4cdef08c" - name = "github.com/gofrs/uuid" - packages = ["."] - pruneopts = "UT" - revision = "7077aa61129615a0d7f45c49101cd011ab221c27" - version = "v3.1.2" - -[[projects]] - branch = "master" - digest = "1:1ba1d79f2810270045c328ae5d674321db34e3aae468eb4233883b473c5c0467" - name = "github.com/golang/glog" - packages = ["."] - pruneopts = "UT" - revision = "23def4e6c14b4da8ac2ed8007337bc5eb5007998" - -[[projects]] - digest = "1:bc38c7c481812e178d85160472e231c5e1c9a7f5845d67e23ee4e706933c10d8" - name = "github.com/golang/mock" - packages = ["gomock"] - pruneopts = "UT" - revision = "c34cdb4725f4c3844d095133c6e40e448b86589b" - version = "v1.1.1" - -[[projects]] - digest = "1:77303a120dcd145972685b3465e58e1a0910544fcb323ca24755e073c1ea6d2c" - name = "github.com/golang/protobuf" - packages = [ - "jsonpb", - "proto", - "protoc-gen-go", - "protoc-gen-go/descriptor", - "protoc-gen-go/generator", - "protoc-gen-go/generator/internal/remap", - "protoc-gen-go/grpc", - "protoc-gen-go/plugin", - "ptypes", - "ptypes/any", - "ptypes/duration", - "ptypes/empty", - "ptypes/struct", - "ptypes/timestamp", - "ptypes/wrappers", - ] - pruneopts = "UT" - revision = "aa810b61a9c79d51363740d207bb46cf8e620ed5" - version = "v1.2.0" - -[[projects]] - digest = "1:69cd81163a00bb8405194d47b8be19283744779b6104f2d6b3735e2a01cdb6fa" - name = "github.com/grpc-ecosystem/grpc-gateway" - packages = [ - "codegenerator", - "protoc-gen-grpc-gateway", - "protoc-gen-grpc-gateway/descriptor", - "protoc-gen-grpc-gateway/generator", - "protoc-gen-grpc-gateway/gengateway", - "protoc-gen-grpc-gateway/httprule", - "protoc-gen-swagger", - "protoc-gen-swagger/genswagger", - "protoc-gen-swagger/options", - "runtime", - "runtime/internal", - "utilities", - ] - pruneopts = "T" - revision = "92583770e3f01b09a0d3e9bdf64321d8bebd48f2" - version = "v1.4.1" - -[[projects]] - digest = "1:0ade334594e69404d80d9d323445d2297ff8161637f9b2d347cc6973d2d6f05b" - name = "github.com/hashicorp/errwrap" - packages = ["."] - pruneopts = "UT" - revision = "8a6fb523712970c966eefc6b39ed2c5e74880354" - version = "v1.0.0" - -[[projects]] - branch = "master" - digest = "1:37630fa6a9fe688c7b654228adb4b064cba73ae3ca0437aa1568b1cf7d27606f" - name = "github.com/hashicorp/go-hclog" - packages = ["."] - pruneopts = "UT" - revision = "75ecd6e6d64509d675da33386b15e1174566177b" - -[[projects]] - digest = "1:2be5a35f0c5b35162c41bb24971e5dcf6ce825403296ee435429cdcc4e1e847e" - name = "github.com/hashicorp/go-immutable-radix" - packages = ["."] - pruneopts = "UT" - revision = "27df80928bb34bb1b0d6d0e01b9e679902e7a6b5" - version = "v1.0.0" - -[[projects]] - digest = "1:f668349b83f7d779567c880550534addeca7ebadfdcf44b0b9c39be61864b4b7" - name = "github.com/hashicorp/go-multierror" - packages = ["."] - pruneopts = "UT" - revision = "886a7fbe3eb1c874d46f623bfa70af45f425b3d1" - version = "v1.0.0" - -[[projects]] - digest = "1:58344c36890670070d279ee43e35babbb8d55f1dc4689900ff4d50c6f706b90a" - name = "github.com/hashicorp/go-plugin" - packages = ["."] - pruneopts = "UT" - revision = "e37881a3f1a07fce82b3d99ce0342a72e53386bc" - -[[projects]] - digest = "1:67474f760e9ac3799f740db2c489e6423a4cde45520673ec123ac831ad849cb8" - name = "github.com/hashicorp/golang-lru" - packages = ["simplelru"] - pruneopts = "UT" - revision = "20f1fb78b0740ba8c3cb143a61e86ba5c8669768" - version = "v0.5.0" - -[[projects]] - digest = "1:c0d19ab64b32ce9fe5cf4ddceba78d5bc9807f0016db6b1183599da3dcc24d10" - name = "github.com/hashicorp/hcl" - packages = [ - ".", - "hcl/ast", - "hcl/parser", - "hcl/printer", - "hcl/scanner", - "hcl/strconv", - "hcl/token", - "json/parser", - "json/scanner", - "json/token", - ] - pruneopts = "UT" - revision = "8cb6e5b959231cc1119e43259c4a608f9c51a241" - version = "v1.0.0" - -[[projects]] - branch = "master" - digest = "1:8090c1e604762fca030d3d9a909e130a3e500389a1567eaf3fefbf24e6134d39" - name = "github.com/hashicorp/yamux" - packages = ["."] - pruneopts = "UT" - revision = "cc6d2ea263b2471faabce371255777a365bf8306" - -[[projects]] - digest = "1:095ee836e834d2ddf49549950b4f85bced5f1836754d1e7dbfa5fc472ad5dfad" - name = "github.com/imkira/go-observer" - packages = ["."] - pruneopts = "UT" - revision = "2b5c0039075a41408f1a33aa6391bd77d3e5a132" - version = "v1.0.3" - -[[projects]] - branch = "master" - digest = "1:5be3e54d888fbda5628080e633c638808a14c6cad2d10255ae2079b70eeb7a59" - name = "github.com/jinzhu/gorm" - packages = [ - ".", - "dialects/postgres", - "dialects/sqlite", - ] - pruneopts = "UT" - revision = "32455088f24d6b1e9a502fb8e40fdc16139dbea8" - -[[projects]] - branch = "master" - digest = "1:fd97437fbb6b7dce04132cf06775bd258cce305c44add58eb55ca86c6c325160" - name = "github.com/jinzhu/inflection" - packages = ["."] - pruneopts = "UT" - revision = "04140366298a54a039076d798123ffa108fff46c" - -[[projects]] - digest = "1:e22af8c7518e1eab6f2eab2b7d7558927f816262586cd6ed9f349c97a6c285c4" - name = "github.com/jmespath/go-jmespath" - packages = ["."] - pruneopts = "UT" - revision = "0b12d6b5" - -[[projects]] - digest = "1:611cdcd3bd9781ebe9ea11d21edbb71528ad75bf3ff76fc41897f20b4c787d98" - name = "github.com/jteeuwen/go-bindata" - packages = [ - ".", - "go-bindata", - ] - pruneopts = "UT" - revision = "bbd0c6e271208dce66d8fda4bc536453cd27fc4a" - version = "v3.0.7" - -[[projects]] - digest = "1:b18ffc558326ebaed3b4a175617f1e12ed4e3f53d6ebfe5ba372a3de16d22278" - name = "github.com/lib/pq" - packages = [ - ".", - "hstore", - "oid", - ] - pruneopts = "UT" - revision = "4ded0e9383f75c197b3a2aaa6d590ac52df6fd79" - version = "v1.0.0" - -[[projects]] - digest = "1:c658e84ad3916da105a761660dcaeb01e63416c8ec7bc62256a9b411a05fcd67" - name = "github.com/mattn/go-colorable" - packages = ["."] - pruneopts = "UT" - revision = "167de6bfdfba052fa6b2d3664c8f5272e23c9072" - version = "v0.0.9" - -[[projects]] - digest = "1:d4d17353dbd05cb52a2a52b7fe1771883b682806f68db442b436294926bbfafb" - name = "github.com/mattn/go-isatty" - packages = ["."] - pruneopts = "UT" - revision = "0360b2af4f38e8d38c7fce2a9f4e702702d73a39" - version = "v0.0.3" - -[[projects]] - digest = "1:3cafc6a5a1b8269605d9df4c6956d43d8011fc57f266ca6b9d04da6c09dee548" - name = "github.com/mattn/go-sqlite3" - packages = ["."] - pruneopts = "UT" - revision = "25ecb14adfc7543176f7d85291ec7dba82c6f7e4" - version = "v1.9.0" - -[[projects]] - digest = "1:dac0667a3fcdd4102a5da07abeddc89eb2f125b1e91af1ea9544c80eaff19c9a" - name = "github.com/mitchellh/cli" - packages = ["."] - pruneopts = "UT" - revision = "3d22a244be8aa6fb16ac24af0e195c08b7d973aa" - version = "v1.0.0" - -[[projects]] - digest = "1:42eb1f52b84a06820cedc9baec2e710bfbda3ee6dac6cdb97f8b9a5066134ec6" - name = "github.com/mitchellh/go-testing-interface" - packages = ["."] - pruneopts = "UT" - revision = "6d0b8010fcc857872e42fc6c931227569016843c" - version = "v1.0.0" - -[[projects]] - digest = "1:0028cb19b2e4c3112225cd871870f2d9cf49b9b4276531f03438a88e94be86fe" - name = "github.com/pmezard/go-difflib" - packages = ["difflib"] - pruneopts = "UT" - revision = "792786c7400a136282c1664665ae0a8db921c6c2" - version = "v1.0.0" - -[[projects]] - digest = "1:963772912b1d71f582a78a3f55a0e83bbd88777335a07a57cfbe0f01df2df06b" - name = "github.com/posener/complete" - packages = [ - ".", - "cmd", - "cmd/install", - "match", - ] - pruneopts = "UT" - revision = "dcda3199365ca2a5f24aea4c42aa56f6a197d117" - version = "v1.1.2" - -[[projects]] - digest = "1:7395b855a6078ad2e6c40311402a057a91125fb9f32cf228e1b32cdc57c33538" - name = "github.com/shirou/gopsutil" - packages = [ - "cpu", - "host", - "internal/common", - "mem", - "net", - "process", - ] - pruneopts = "UT" - revision = "8048a2e9c5773235122027dd585cf821b2af1249" - version = "v2.18.07" - -[[projects]] - branch = "master" - digest = "1:99c6a6dab47067c9b898e8c8b13d130c6ab4ffbcc4b7cc6236c2cd0b1e344f5b" - name = "github.com/shirou/w32" - packages = ["."] - pruneopts = "UT" - revision = "bb4de0191aa41b5507caa14b0650cdbddcd9280b" - -[[projects]] - digest = "1:107b2ac5dd768f2605128e603a358eec5681ee898559ea0361732fe2b7aa8a1f" - name = "github.com/sirupsen/logrus" - packages = [ - ".", - "hooks/test", - ] - pruneopts = "UT" - revision = "3e01752db0189b9157070a0e1668a620f9a85da2" - version = "v1.0.6" - -[[projects]] - branch = "master" - digest = "1:4a61c028c4357be907431f2c73c94df6b0834c9ccc835410add302db9e751b85" - name = "github.com/spiffe/go-spiffe" - packages = [ - "spiffe", - "tls", - "uri", - ] - pruneopts = "UT" - revision = "2bb3101d62b4bea6371d792e818360e3f056867b" - -[[projects]] - digest = "1:5110e3d4f130772fd39e6ce8208ad1955b242ccfcc8ad9d158857250579c82f4" - name = "github.com/stretchr/testify" - packages = [ - "assert", - "require", - "suite", - ] - pruneopts = "UT" - revision = "f35b8ab0b5a2cef36673838d662e249dd9c94686" - version = "v1.2.2" - -[[projects]] - digest = "1:cb7e5574de8e45ab0fc660c562aa6db43fdff4896190bc70069213cb19f39eaf" - name = "github.com/zeebo/errs" - packages = ["."] - pruneopts = "UT" - revision = "631dbed224b5670a1e8adc5f60fc4b7fc1680d70" - version = "v1.0.0" - -[[projects]] - branch = "master" - digest = "1:f70c339170dcfa928e84ea85efdaf68d5b089b249bb94f4ad4262ca11d6ec117" - name = "golang.org/x/crypto" - packages = [ - "ed25519", - "ed25519/internal/edwards25519", - "pbkdf2", - "pkcs12", - "pkcs12/internal/rc2", - "ssh/terminal", - ] - pruneopts = "UT" - revision = "614d502a4dac94afa3a6ce146bd1736da82514c6" - -[[projects]] - branch = "master" - digest = "1:deafe4ab271911fec7de5b693d7faae3f38796d9eb8622e2b9e7df42bb3dfea9" - name = "golang.org/x/net" - packages = [ - "context", - "http/httpguts", - "http2", - "http2/hpack", - "idna", - "internal/timeseries", - "trace", - ] - pruneopts = "UT" - revision = "8a410e7b638dca158bf9e766925842f6651ff828" - -[[projects]] - branch = "master" - digest = "1:9c99029818a3d4f53bcfd6c0158ca068aeacfecb29283f82a1f9c79b8d2a7da4" - name = "golang.org/x/sys" - packages = [ - "unix", - "windows", - ] - pruneopts = "UT" - revision = "49385e6e15226593f68b26af201feec29d5bba22" - -[[projects]] - digest = "1:a2ab62866c75542dd18d2b069fec854577a20211d7c0ea6ae746072a1dccdd18" - name = "golang.org/x/text" - packages = [ - "collate", - "collate/build", - "internal/colltab", - "internal/gen", - "internal/tag", - "internal/triegen", - "internal/ucd", - "language", - "secure/bidirule", - "transform", - "unicode/bidi", - "unicode/cldr", - "unicode/norm", - "unicode/rangetable", - ] - pruneopts = "UT" - revision = "f21a4dfb5e38f5895301dc265a8def02365cc3d0" - version = "v0.3.0" - -[[projects]] - branch = "master" - digest = "1:c9e7a4b4d47c0ed205d257648b0e5b0440880cb728506e318f8ac7cd36270bc4" - name = "golang.org/x/time" - packages = ["rate"] - pruneopts = "UT" - revision = "fbb02b2291d28baffd63558aa44b4b56f178d650" - -[[projects]] - branch = "master" - digest = "1:6c6b70cf6d2788d9f7dc6589bc88e0e1c7edc40612294431ebb7d09536d12240" - name = "google.golang.org/genproto" - packages = [ - "googleapis/api/annotations", - "googleapis/rpc/status", - ] - pruneopts = "UT" - revision = "c66870c02cf823ceb633bcd05be3c7cda29976f4" - -[[projects]] - digest = "1:047efbc3c9a51f3002b0002f92543857d372654a676fb6b01931982cd80467dd" - name = "google.golang.org/grpc" - packages = [ - ".", - "balancer", - "balancer/base", - "balancer/roundrobin", - "codes", - "connectivity", - "credentials", - "encoding", - "encoding/proto", - "grpclog", - "health", - "health/grpc_health_v1", - "internal", - "internal/backoff", - "internal/channelz", - "internal/envconfig", - "internal/grpcrand", - "internal/transport", - "keepalive", - "metadata", - "naming", - "peer", - "resolver", - "resolver/dns", - "resolver/passthrough", - "stats", - "status", - "tap", - ] - pruneopts = "UT" - revision = "32fb0ac620c32ba40a4626ddf94d90d12cce3455" - version = "v1.14.0" - -[[projects]] - digest = "1:b57bb9a6a2a03558d63166f1afc3c0c4f91ad137f63bf2bee995e9baeb976a9c" - name = "gopkg.in/square/go-jose.v2" - packages = [ - ".", - "cipher", - "json", - "jwt", - ] - pruneopts = "UT" - revision = "8254d6c783765f38c8675fae4427a1fe73fbd09d" - version = "v2.1.8" - -[[projects]] - branch = "v2" - digest = "1:5bb148b78468350091db2ffbb2370f35cc6dcd74d9378a31b1c7b86ff7528f08" - name = "gopkg.in/tomb.v2" - packages = ["."] - pruneopts = "UT" - revision = "d5d1b5820637886def9eef33e03a27a9f166942c" - -[[projects]] - digest = "1:342378ac4dcb378a5448dd723f0784ae519383532f5e70ade24132c4c8693202" - name = "gopkg.in/yaml.v2" - packages = ["."] - pruneopts = "UT" - revision = "5420a8b6744d3b0345ab293f6fcba19c978f1183" - version = "v2.2.1" - -[solve-meta] - analyzer-name = "dep" - analyzer-version = 1 - input-imports = [ - "github.com/Azure/azure-sdk-for-go/profiles/latest/compute/mgmt/compute", - "github.com/Azure/azure-sdk-for-go/profiles/latest/network/mgmt/network", - "github.com/Azure/azure-sdk-for-go/profiles/latest/resources/mgmt/resources", - "github.com/Azure/go-autorest/autorest", - "github.com/Azure/go-autorest/autorest/azure/auth", - "github.com/armon/go-metrics", - "github.com/aws/aws-sdk-go/aws", - "github.com/aws/aws-sdk-go/aws/credentials", - "github.com/aws/aws-sdk-go/aws/request", - "github.com/aws/aws-sdk-go/aws/session", - "github.com/aws/aws-sdk-go/service/ec2", - "github.com/aws/aws-sdk-go/service/iam", - "github.com/dgrijalva/jwt-go", - "github.com/gofrs/uuid", - "github.com/golang/mock/gomock", - "github.com/golang/protobuf/jsonpb", - "github.com/golang/protobuf/proto", - "github.com/golang/protobuf/protoc-gen-go", - "github.com/golang/protobuf/protoc-gen-go/descriptor", - "github.com/golang/protobuf/protoc-gen-go/plugin", - "github.com/golang/protobuf/ptypes/empty", - "github.com/golang/protobuf/ptypes/struct", - "github.com/golang/protobuf/ptypes/wrappers", - "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway", - "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger", - "github.com/grpc-ecosystem/grpc-gateway/runtime", - "github.com/grpc-ecosystem/grpc-gateway/utilities", - "github.com/hashicorp/go-hclog", - "github.com/hashicorp/go-plugin", - "github.com/hashicorp/hcl", - "github.com/hashicorp/hcl/hcl/ast", - "github.com/hashicorp/hcl/hcl/printer", - "github.com/imkira/go-observer", - "github.com/jinzhu/gorm", - "github.com/jinzhu/gorm/dialects/postgres", - "github.com/jinzhu/gorm/dialects/sqlite", - "github.com/jteeuwen/go-bindata/go-bindata", - "github.com/mitchellh/cli", - "github.com/shirou/gopsutil/process", - "github.com/sirupsen/logrus", - "github.com/sirupsen/logrus/hooks/test", - "github.com/spiffe/go-spiffe/tls", - "github.com/spiffe/go-spiffe/uri", - "github.com/stretchr/testify/assert", - "github.com/stretchr/testify/require", - "github.com/stretchr/testify/suite", - "github.com/zeebo/errs", - "golang.org/x/net/context", - "golang.org/x/net/trace", - "golang.org/x/sys/unix", - "golang.org/x/time/rate", - "google.golang.org/genproto/googleapis/api/annotations", - "google.golang.org/grpc", - "google.golang.org/grpc/codes", - "google.golang.org/grpc/credentials", - "google.golang.org/grpc/grpclog", - "google.golang.org/grpc/metadata", - "google.golang.org/grpc/peer", - "google.golang.org/grpc/status", - "gopkg.in/square/go-jose.v2", - "gopkg.in/square/go-jose.v2/jwt", - "gopkg.in/tomb.v2", - ] - solver-name = "gps-cdcl" - solver-version = 1 diff --git a/Gopkg.toml b/Gopkg.toml deleted file mode 100644 index 246068a894..0000000000 --- a/Gopkg.toml +++ /dev/null @@ -1,144 +0,0 @@ -# Gopkg.toml example -# -# Refer to https://golang.github.io/dep/docs/Gopkg.toml.html -# for detailed Gopkg.toml documentation. -# -# required = ["github.com/user/thing/cmd/thing"] -# ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"] -# -# [[constraint]] -# name = "github.com/user/project" -# version = "1.0.0" -# -# [[constraint]] -# name = "github.com/user/project2" -# branch = "dev" -# source = "github.com/myfork/project2" -# -# [[override]] -# name = "github.com/x/y" -# version = "2.4.0" -# -# [prune] -# non-go = false -# go-tests = true -# unused-packages = true - -required = ["github.com/hashicorp/go-plugin", - "github.com/gofrs/uuid", - "github.com/golang/protobuf/protoc-gen-go", - "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway", - "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger", - "github.com/jteeuwen/go-bindata/go-bindata"] - -[[constraint]] - name = "github.com/Azure/azure-sdk-for-go" - version = "19.1.0" - -[[constraint]] - name = "github.com/Azure/go-autorest" - version = "10.15.2" - -[[constraint]] - branch = "master" - name = "github.com/armon/go-metrics" - -[[constraint]] - name = "github.com/aws/aws-sdk-go" - version = "1.15.24" - -[[constraint]] - name = "github.com/dgrijalva/jwt-go" - version = "3.2.0" - -[[constraint]] - name = "github.com/golang/mock" - version = "1.1.1" - -[[constraint]] - name = "github.com/golang/protobuf" - version = "1.2.0" - -[[constraint]] - name = "github.com/grpc-ecosystem/grpc-gateway" - version = "1.4.1" - -[[constraint]] - branch = "master" - name = "github.com/hashicorp/go-hclog" - -[[constraint]] - revision = "e37881a3f1a07fce82b3d99ce0342a72e53386bc" - name = "github.com/hashicorp/go-plugin" - -[[constraint]] - name = "github.com/hashicorp/hcl" - version = "1.0.0" - -[[constraint]] - name = "github.com/imkira/go-observer" - version = "1.0.3" - -[[constraint]] - branch = "master" - name = "github.com/jinzhu/gorm" - -[[constraint]] - name = "github.com/mitchellh/cli" - version = "1.0.0" - -[[constraint]] - name = "github.com/gofrs/uuid" - version = "3.1.2" - -[[constraint]] - name = "github.com/shirou/gopsutil" - version = "2.18.7" - -[[constraint]] - name = "github.com/sirupsen/logrus" - version = "1.0.6" - -[[constraint]] - branch = "master" - name = "github.com/spiffe/go-spiffe" - -[[constraint]] - name = "github.com/stretchr/testify" - version = "1.2.2" - -[[constraint]] - name = "github.com/zeebo/errs" - version = "1.0.0" - -[[constraint]] - branch = "master" - name = "golang.org/x/net" - -[[constraint]] - branch = "master" - name = "golang.org/x/sys" - -[[constraint]] - branch = "master" - name = "google.golang.org/genproto" - -[[constraint]] - name = "google.golang.org/grpc" - version = "1.14.0" - -[[constraint]] - name = "gopkg.in/square/go-jose.v2" - version = "2.1.8" - -[[constraint]] - branch = "v2" - name = "gopkg.in/tomb.v2" - -[prune] - go-tests = true - unused-packages = true - - [[prune.project]] - name = "github.com/grpc-ecosystem/grpc-gateway" - unused-packages = false diff --git a/Makefile b/Makefile index ca649650ed..eac5dea106 100644 --- a/Makefile +++ b/Makefile @@ -1,16 +1,24 @@ +# Export SPIRE_DEV_HOST to docker to build SPIRE using a docker container ifeq ($(SPIRE_DEV_HOST), docker) - docker = docker run -v $(docker_volume) -it $(docker_image) + docker = docker run -v $(docker_volume_spire) -v $(docker_volume_gopath) -it $(docker_image) container = container + dev_host_status = "SET" else - docker = - container = + docker = + container = + dev_host_status = "UNSET" endif +# Enable go modules +export GO111MODULE=on + +# Makefile variables binary_dirs := $(shell find cmd/* functional/tools/* -maxdepth 0 -type d) -docker_volume := $(shell echo $${PWD%/src/*}):/root/go +docker_volume_gopath := $(shell echo $${GOPATH}/pkg/mod):/root/go/pkg/mod +docker_volume_spire := $(shell echo $${PWD}):/root/spire docker_image = spire-dev:latest gopath := $(shell go env GOPATH) -gittag := $(shell git tag --points-at) +gittag := $(shell git tag --points-at HEAD) gitdirty := $(shell git status -s) # don't provide the git tag if the git status is dirty. ifneq ($(gitdirty),) @@ -19,61 +27,83 @@ endif ldflags := '-X github.com/spiffe/spire/pkg/common/version.gittag=$(gittag)' utils = github.com/golang/protobuf/protoc-gen-go \ - github.com/grpc-ecosystem/grpc-gateway \ github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway \ github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger \ - github.com/jteeuwen/go-bindata/go-bindata - -.PHONY: all utils container-push cmd build test race-test clean functional vendor - -build: $(binary_dirs) - -all: $(container) vendor build test - -container: Dockerfile - docker build -t $(docker_image) --no-cache . - -container-push: - docker tag $(docker_image) spiffe/$(docker_image) - docker push spiffe/$(docker_image) + github.com/jteeuwen/go-bindata/go-bindata \ + github.com/AlekSi/gocoverutil \ + github.com/mattn/goveralls \ + github.com/spiffe/spire/tools/protoc-gen-spireplugin -cmd: - $(docker) /bin/bash +# Help message settings +cyan := $(shell tput setaf 6) +reset := $(shell tput sgr0) +bold := $(shell tput bold) +target_max_char=25 -utils: $(utils) +# Makefile options +.PHONY: all utils container-push cmd build test race-test clean functional vendor help -$(utils): noop - # some sources do not contain buildable go, hence || true - $(docker) /bin/sh -c "cd vendor/$@; go get . || true" - $(docker) mkdir -p $(gopath)/src/$@ - $(docker) cp -r vendor/$@/* $(gopath)/src/$@/ -vendor: Gopkg.toml Gopkg.lock - $(docker) dep ensure -vendor-only +# Make targets +##@ Building +build: $(binary_dirs) ## Build SPIRE binaries $(binary_dirs): noop - $(docker) /bin/sh -c "cd $@; go build -i -ldflags $(ldflags)" + $(docker) /bin/sh -c "cd $@; go build -ldflags $(ldflags)" -artifact: - $(docker) ./build.sh artifact +all: $(container) build test ## Build and run tests -test: + +##@ Testing +test: ## Run tests $(docker) go test -race -timeout 8m github.com/spiffe/spire/... -race-test: +race-test: ## Run race tests $(docker) go test -race github.com/spiffe/spire/... -integration: +integration: ## Run integration tests $(docker) script/e2e_test.sh -clean: +functional: ## Run functional tests + $(MAKE) -C functional/ all + + +##@ Cleaning +clean: ## Go-clean object files $(docker) go clean github.com/spiffe/spire/... -distclean: clean +distclean: clean ## Remove object files, vendor and .cache folders rm -rf .cache rm -rf vendor -functional: - $(MAKE) -C functional/ all + +##@ Container +container: Dockerfile ## Build Docker container for compilation + docker build -t $(docker_image) --no-cache . + +container-push: ## Push docker container image + docker tag $(docker_image) spiffe/$(docker_image) + docker push spiffe/$(docker_image) + +cmd: ## Opens a shell in docker container + $(docker) /bin/bash + + +##@ Others +utils: $(utils) ## Go-get SPIRE utils + +$(utils): noop + $(docker) /bin/sh -c "cd tools; go install $@" + +# Vendor is not needed for building. It is just kept for compatibility with IDEs that does not support modules yet. +vendor: ## Make vendored copy of dependencies. + $(docker) go mod vendor + +artifact: ## Build SPIRE artifacts + $(docker) ./build.sh artifact noop: + +help: ## Show this help message. + @awk 'BEGIN {FS = ":.*##"; printf "\n$(bold)Usage:$(reset) make $(cyan)$(reset)\n"} /^[a-zA-Z_-]+:.*?##/ { printf " $(cyan)%-$(target_max_char)s$(reset) %s\n", $$1, $$2 } /^##@/ { printf "\n $(bold)%s$(reset) \n", substr($$0, 5) } ' $(MAKEFILE_LIST) + @printf "\n$(bold)Enviroment variables$(reset)\n $(cyan)%-$(target_max_char)s $(reset) %s\n" SPIRE_DEV_HOST $(dev_host_status) diff --git a/build.sh b/build.sh index 63dbefaba7..4398c89909 100755 --- a/build.sh +++ b/build.sh @@ -28,15 +28,13 @@ declare -r BUILD_DIR=${BUILD_DIR:-$PWD/.build-${OS1}-${ARCH1}} declare -r BUILD_CACHE=${BUILD_CACHE:-$PWD/.cache} # versioned binaries that we need for builds +export GO111MODULE=on declare -r GO_VERSION=${GO_VERSION:-1.11.4} declare -r GO_URL="https://storage.googleapis.com/golang" declare -r GO_TGZ="go${GO_VERSION}.${OS1}-${ARCH2}.tar.gz" declare -r PROTOBUF_VERSION=${PROTOBUF_VERSION:-3.3.0} declare -r PROTOBUF_URL="https://github.com/google/protobuf/releases/download/v${PROTOBUF_VERSION}" declare -r PROTOBUF_TGZ="protoc-${PROTOBUF_VERSION}-${OS2}-${ARCH1}.zip" -declare -r DEP_VERSION=${DEP_VERSION:-0.5.0} -declare -r DEP_URL="https://github.com/golang/dep/releases/download/v${DEP_VERSION}" -declare -r DEP_BIN="dep-${OS1}-${ARCH2}" declare -r PROTOC_GEN_DOCS_VERSION=${PROTOC_GEN_DOCS_VERSION:-1.0.0} declare -r PROTOC_GEN_DOCS_URL="https://github.com/pseudomuto/protoc-gen-doc/releases/download/v${PROTOC_GEN_DOCS_VERSION}" declare -r PROTOC_GEN_DOCS_TGZ="protoc-gen-doc-${PROTOC_GEN_DOCS_VERSION}.${OS1}-${ARCH2}.go1.9.tar.gz" @@ -78,10 +76,6 @@ build_setup() { _fetch_url ${GO_URL} ${GO_TGZ} tar --directory ${BUILD_DIR} --strip 1 -xf ${BUILD_CACHE}/${GO_TGZ} - _fetch_url ${DEP_URL} ${DEP_BIN} - cp ${BUILD_CACHE}/${DEP_BIN} ${BUILD_DIR}/bin/dep - chmod +x ${BUILD_DIR}/bin/dep - _fetch_url ${PROTOC_GEN_DOCS_URL} ${PROTOC_GEN_DOCS_TGZ} tar --directory ${BUILD_DIR}/bin --strip 1 -xf ${BUILD_CACHE}/${PROTOC_GEN_DOCS_TGZ} @@ -94,21 +88,6 @@ build_utils() { eval $(build_env) make utils - go get github.com/AlekSi/gocoverutil - go get github.com/mattn/goveralls -} - -## Fetch all vendored dependancies and check if the lock file -## is up-to-date -build_vendor() { - eval $(build_env) - - dep status 2>&1 | tee /tmp/dep.out - if grep -q "Lock inputs-digest mismatch" /tmp/dep.out; then - _exit_error "Gopkg.lock file may be out of date" - fi - - make vendor 2>&1 } ## Rebuild all .proto files, generated README, and generated gRPC/REST interfaces @@ -116,8 +95,6 @@ build_protobuf() { local _n _d _dir _prefix="$1" eval $(build_env) - go install github.com/spiffe/spire/tools/protoc-gen-spireplugin - for _n in ${PROTO_FILES}; do _dir="$(dirname ${_n})" if [[ -n ${_prefix} ]]; then @@ -126,19 +103,23 @@ build_protobuf() { else _d=${_dir} fi + + # Set path to right version of grpc-gateway repo + grpc_gateway_path=$(go list -f '{{ .Dir }}' -m github.com/grpc-ecosystem/grpc-gateway)/third_party/googleapis + _log_info "creating \"${_n%.proto}.pb.go\"" protoc --proto_path=${_dir} --proto_path=${GOPATH}/src \ - --proto_path=${GOPATH}/src/github.com/grpc-ecosystem/grpc-gateway/third_party/googleapis \ + --proto_path=$grpc_gateway_path \ --go_out=plugins=grpc:${_d} ${_n} _log_info "creating \"${_d}/README_pb.md\"" protoc --proto_path=${_dir} --proto_path=${GOPATH}/src \ - --proto_path=${GOPATH}/src/github.com/grpc-ecosystem/grpc-gateway/third_party/googleapis \ + --proto_path=$grpc_gateway_path \ --doc_out=markdown,README_pb.md:${_d} ${_n} # only build gateway code if necessary if grep -q 'option (google.api.http)' ${_n}; then _log_info "creating http gateway \"${_n%.proto}.pb.gw.go\"" protoc --proto_path=${_dir} --proto_path=${GOPATH}/src \ - --proto_path=${GOPATH}/src/github.com/grpc-ecosystem/grpc-gateway/third_party/googleapis \ + --proto_path=$grpc_gateway_path \ --grpc-gateway_out=logtostderr=true:${_d} ${_n} fi # only build the plugin interfaces for plugin protos @@ -286,7 +267,6 @@ build_distclean() { build_all() { build_setup - build_vendor build_binaries build_test } @@ -296,7 +276,6 @@ case "$1" in env) build_env ;; setup) build_setup ;; utils) build_utils ;; - vendor) build_vendor ;; protobuf) build_protobuf ;; protobuf_verify) build_protobuf_verify ;; binaries|bin) build_binaries $2 ;; diff --git a/go.mod b/go.mod new file mode 100644 index 0000000000..ac69da0bb0 --- /dev/null +++ b/go.mod @@ -0,0 +1,64 @@ +module github.com/spiffe/spire + +require ( + cloud.google.com/go v0.34.0 // indirect + github.com/Azure/azure-sdk-for-go v19.1.0+incompatible + github.com/Azure/go-autorest v10.15.2+incompatible + github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6 // indirect + github.com/armon/go-metrics v0.0.0-20180713145231-3c58d8115a78 + github.com/armon/go-radix v1.0.0 // indirect + github.com/aws/aws-sdk-go v1.15.24 + github.com/denisenkom/go-mssqldb v0.0.0-20181014144952-4e0d7dc8888f // indirect + github.com/dgrijalva/jwt-go v3.2.0+incompatible + github.com/dimchansky/utfbom v1.0.0 // indirect + github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5 // indirect + github.com/go-ini/ini v1.38.2 // indirect + github.com/go-ole/go-ole v1.2.1 // indirect + github.com/go-sql-driver/mysql v1.4.1 // indirect + github.com/gofrs/uuid/v3 v3.1.2 + github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b // indirect + github.com/golang/mock v1.1.1 + github.com/golang/protobuf v1.2.0 + github.com/google/go-cmp v0.2.0 // indirect + github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e // indirect + github.com/grpc-ecosystem/grpc-gateway v1.4.1 + github.com/hashicorp/go-hclog v0.0.0-20180828044259-75ecd6e6d645 + github.com/hashicorp/go-immutable-radix v1.0.0 // indirect + github.com/hashicorp/go-plugin v0.0.0-20180111182130-e37881a3f1a0 + github.com/hashicorp/hcl v1.0.0 + github.com/hashicorp/yamux v0.0.0-20180826203732-cc6d2ea263b2 // indirect + github.com/imkira/go-observer v1.0.3 + github.com/jinzhu/gorm v0.0.0-20180818231433-32455088f24d + github.com/jinzhu/inflection v0.0.0-20180308033659-04140366298a // indirect + github.com/jinzhu/now v0.0.0-20181116074157-8ec929ed50c3 // indirect + github.com/jtolds/gls v4.2.1+incompatible // indirect + github.com/lib/pq v1.0.0 // indirect + github.com/mattn/go-sqlite3 v1.9.0 // indirect + github.com/mitchellh/cli v1.0.0 + github.com/mitchellh/go-testing-interface v1.0.0 // indirect + github.com/onsi/ginkgo v1.7.0 // indirect + github.com/onsi/gomega v1.4.3 // indirect + github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c // indirect + github.com/posener/complete v1.1.2 // indirect + github.com/shirou/gopsutil v0.0.0-20180801053943-8048a2e9c577 + github.com/shirou/w32 v0.0.0-20160930032740-bb4de0191aa4 // indirect + github.com/sirupsen/logrus v1.0.6 + github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d // indirect + github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c // indirect + github.com/spiffe/go-spiffe v0.0.0-20170907221946-2bb3101d62b4 + github.com/stretchr/testify v1.2.2 + github.com/zeebo/errs v1.0.0 + golang.org/x/crypto v0.0.0-20180820150726-614d502a4dac // indirect + golang.org/x/net v0.0.0-20180906233101-161cd47e91fd + golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4 // indirect + golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e + golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2 + google.golang.org/appengine v1.4.0 // indirect + google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8 + google.golang.org/grpc v1.14.0 + gopkg.in/airbrake/gobrake.v2 v2.0.9 // indirect + gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2 // indirect + gopkg.in/ini.v1 v1.40.0 // indirect + gopkg.in/square/go-jose.v2 v2.1.8 + gopkg.in/tomb.v2 v2.0.0-20161208151619-d5d1b5820637 +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000000..e5b4bb2055 --- /dev/null +++ b/go.sum @@ -0,0 +1,163 @@ +cloud.google.com/go v0.34.0 h1:eOI3/cP2VTU6uZLDYAoic+eyzzB9YyGmJ7eIjl8rOPg= +cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +github.com/Azure/azure-sdk-for-go v19.1.0+incompatible h1:ysqLW+tqZjJWOTE74heH/pDRbr4vlN3yV+dqQYgpyxw= +github.com/Azure/azure-sdk-for-go v19.1.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/go-autorest v10.15.2+incompatible h1:oZpnRzZie83xGV5txbT1aa/7zpCPvURGhV6ThJij2bs= +github.com/Azure/go-autorest v10.15.2+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6 h1:fLjPD/aNc3UIOA6tDi6QXUemppXK3P9BI7mr2hd6gx8= +github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6/go.mod h1:3eOhrUMpNV+6aFIbp5/iudMxNCF27Vw2OZgy4xEx0Fg= +github.com/armon/go-metrics v0.0.0-20180713145231-3c58d8115a78 h1:mdRSArcFLfW0VoL34LZAKSz6LkkK4jFxVx2xYavACMg= +github.com/armon/go-metrics v0.0.0-20180713145231-3c58d8115a78/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= +github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= +github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI= +github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= +github.com/aws/aws-sdk-go v1.15.24 h1:xLAdTA/ore6xdPAljzZRed7IGqQgC+nY+ERS5vaj4Ro= +github.com/aws/aws-sdk-go v1.15.24/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0= +github.com/bgentry/speakeasy v0.1.0 h1:ByYyxL9InA1OWqxJqqp2A5pYHUrCiAL6K3J+LKSsQkY= +github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/denisenkom/go-mssqldb v0.0.0-20181014144952-4e0d7dc8888f h1:WH0w/R4Yoey+04HhFxqZ6VX6I0d7RMyw5aXQ9UTvQPs= +github.com/denisenkom/go-mssqldb v0.0.0-20181014144952-4e0d7dc8888f/go.mod h1:xN/JuLBIz4bjkxNmByTiV1IbhfnYb6oo99phBn4Eqhc= +github.com/dgrijalva/jwt-go v3.2.0+incompatible h1:7qlOGliEKZXTDg6OTjfoBKDXWrumCAMpl/TFQ4/5kLM= +github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= +github.com/dimchansky/utfbom v1.0.0 h1:fGC2kkf4qOoKqZ4q7iIh+Vef4ubC1c38UDsEyZynZPc= +github.com/dimchansky/utfbom v1.0.0/go.mod h1:rO41eb7gLfo8SF1jd9F8HplJm1Fewwi4mQvIirEdv+8= +github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5 h1:Yzb9+7DPaBjB8zlTR87/ElzFsnQfuHnVUVqpZZIcV5Y= +github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5/go.mod h1:a2zkGnVExMxdzMo3M0Hi/3sEU+cWnZpSni0O6/Yb/P0= +github.com/fatih/color v1.7.0 h1:DkWD4oS2D8LGGgTQ6IvwJJXSL5Vp2ffcQg58nFV38Ys= +github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= +github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/go-ini/ini v1.25.4/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8= +github.com/go-ini/ini v1.38.2 h1:6Hl/z3p3iFkA0dlDfzYxuFuUGD+kaweypF6btsR2/Q4= +github.com/go-ini/ini v1.38.2/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8= +github.com/go-ole/go-ole v1.2.1 h1:2lOsA72HgjxAuMlKpFiCbHTvu44PIVkZ5hqm3RSdI/E= +github.com/go-ole/go-ole v1.2.1/go.mod h1:7FAglXiTm7HKlQRDeOQ6ZNUHidzCWXuZWq/1dTyBNF8= +github.com/go-sql-driver/mysql v1.4.1 h1:g24URVg0OFbNUTx9qqY1IRZ9D9z3iPyi5zKhQZpNwpA= +github.com/go-sql-driver/mysql v1.4.1/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= +github.com/gofrs/uuid/v3 v3.1.2 h1:V3IBv1oU82x6YIr5txe3azVHgmOKYdyKQTowm9moBlY= +github.com/gofrs/uuid/v3 v3.1.2/go.mod h1:xPwMqoocQ1L5G6pXX5BcE7N5jlzn2o19oqAKxwZW/kI= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/mock v1.1.1 h1:G5FRp8JnTd7RQH5kemVNlMeyXQAztQ3mOWV95KxsXH8= +github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/protobuf v1.2.0 h1:P3YflyNX/ehuJFLhxviNdFxQPkGK5cDcApsge1SqnvM= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/google/go-cmp v0.2.0 h1:+dTQ8DZQJz0Mb/HjFlkptS1FeQ4cWSnN941F8aEG4SQ= +github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= +github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e h1:JKmoR8x90Iww1ks85zJ1lfDGgIiMDuIptTOhJq+zKyg= +github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= +github.com/grpc-ecosystem/grpc-gateway v1.4.1 h1:pX7cnDwSSmG0dR9yNjCQSSpmsJOqFdT7SzVp5Yl9uVw= +github.com/grpc-ecosystem/grpc-gateway v1.4.1/go.mod h1:RSKVYQBd5MCa4OVpNdGskqpgL2+G+NZTnrVHpWWfpdw= +github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/go-hclog v0.0.0-20180828044259-75ecd6e6d645 h1:remtZEHHwvD+FdeXwJfxO6KzeIslX73xufap8oJzi+0= +github.com/hashicorp/go-hclog v0.0.0-20180828044259-75ecd6e6d645/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= +github.com/hashicorp/go-immutable-radix v1.0.0 h1:AKDB1HM5PWEA7i4nhcpwOrO2byshxBjXVn/J/3+z5/0= +github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= +github.com/hashicorp/go-multierror v1.0.0 h1:iVjPR7a6H0tWELX5NxNe7bYopibicUzc7uPribsnS6o= +github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= +github.com/hashicorp/go-plugin v0.0.0-20180111182130-e37881a3f1a0 h1:bzP2iIgIbtC5pTw5bq5W/yO65Mj0xb0Q+ZRY2e7FZFc= +github.com/hashicorp/go-plugin v0.0.0-20180111182130-e37881a3f1a0/go.mod h1:JSqWYsict+jzcj0+xElxyrBQRPNoiWQuddnxArJ7XHQ= +github.com/hashicorp/go-uuid v1.0.0 h1:RS8zrF7PhGwyNPOtxSClXXj9HA8feRnJzgnI1RJCSnM= +github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= +github.com/hashicorp/golang-lru v0.5.0 h1:CL2msUPvZTLb5O648aiLNJw3hnBxN2+1Jq8rCOH9wdo= +github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= +github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/hashicorp/yamux v0.0.0-20180826203732-cc6d2ea263b2 h1:QWdAspPPc/c5mh+D7cedfGmL8cxGXKxUGZiNMduza68= +github.com/hashicorp/yamux v0.0.0-20180826203732-cc6d2ea263b2/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM= +github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI= +github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= +github.com/imkira/go-observer v1.0.3 h1:l45TYAEeAB4L2xF6PR2gRLn2NE5tYhudh33MLmC7B80= +github.com/imkira/go-observer v1.0.3/go.mod h1:zLzElv2cGTHufQG17IEILJMPDg32TD85fFgKyFv00wU= +github.com/jinzhu/gorm v0.0.0-20180818231433-32455088f24d h1:P/F+paaDsGDC+F8gtV1vX+7GWdHxTocOWCSgNnjkPXM= +github.com/jinzhu/gorm v0.0.0-20180818231433-32455088f24d/go.mod h1:Vla75njaFJ8clLU1W44h34PjIkijhjHIYnZxMqCdxqo= +github.com/jinzhu/inflection v0.0.0-20180308033659-04140366298a h1:eeaG9XMUvRBYXJi4pg1ZKM7nxc5AfXfojeLLW7O5J3k= +github.com/jinzhu/inflection v0.0.0-20180308033659-04140366298a/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc= +github.com/jinzhu/now v0.0.0-20181116074157-8ec929ed50c3 h1:xvj06l8iSwiWpYgm8MbPp+naBg+pwfqmdXabzqPCn/8= +github.com/jinzhu/now v0.0.0-20181116074157-8ec929ed50c3/go.mod h1:oHTiXerJ20+SfYcrdlBO7rzZRJWGwSTQ0iUY2jI6Gfc= +github.com/jmespath/go-jmespath v0.0.0-20160202185014-0b12d6b521d8 h1:12VvqtR6Aowv3l/EQUlocDHW2Cp4G9WJVH7uyH8QFJE= +github.com/jmespath/go-jmespath v0.0.0-20160202185014-0b12d6b521d8/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/jtolds/gls v4.2.1+incompatible h1:fSuqC+Gmlu6l/ZYAoZzx2pyucC8Xza35fpRVWLVmUEE= +github.com/jtolds/gls v4.2.1+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= +github.com/lib/pq v1.0.0 h1:X5PMW56eZitiTeO7tKzZxFCSpbFZJtkMMooicw2us9A= +github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= +github.com/mattn/go-colorable v0.0.9 h1:UVL0vNpWh04HeJXV0KLcaT7r06gOH2l4OW6ddYRUIY4= +github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= +github.com/mattn/go-isatty v0.0.3 h1:ns/ykhmWi7G9O+8a448SecJU3nSMBXJfqQkl0upE1jI= +github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-sqlite3 v1.9.0 h1:pDRiWfl+++eC2FEFRy6jXmQlvp4Yh3z1MJKg4UeYM/4= +github.com/mattn/go-sqlite3 v1.9.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= +github.com/mitchellh/cli v1.0.0 h1:iGBIsUe3+HZ/AD/Vd7DErOt5sU9fa8Uj7A2s1aggv1Y= +github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= +github.com/mitchellh/go-testing-interface v1.0.0 h1:fzU/JVNcaqHQEcVFAKeR41fkiLdIPrefOvVG1VZ96U0= +github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.7.0 h1:WSHQ+IS43OoUrWtD1/bbclrwK8TTH5hzp+umCiuxHgs= +github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/gomega v1.4.3 h1:RE1xgDvH7imwFD45h+u2SgIfERHlS2yNG4DObb5BSKU= +github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c h1:Lgl0gzECD8GnQ5QCWA8o6BtfL6mDH5rQgM4/fX3avOs= +github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= +github.com/posener/complete v1.1.2 h1:fS9GkqLN9DIpHg9j3fAPHdj5P3LhzxuoSybQd1v26IE= +github.com/posener/complete v1.1.2/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= +github.com/shirou/gopsutil v0.0.0-20180801053943-8048a2e9c577 h1:fgCv3khdlkkaSfAehroQ2qpqJaM4eBFl6MhCWOWQNpY= +github.com/shirou/gopsutil v0.0.0-20180801053943-8048a2e9c577/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA= +github.com/shirou/w32 v0.0.0-20160930032740-bb4de0191aa4 h1:udFKJ0aHUL60LboW/A+DfgoHVedieIzIXE8uylPue0U= +github.com/shirou/w32 v0.0.0-20160930032740-bb4de0191aa4/go.mod h1:qsXQc7+bwAM3Q1u/4XEfrquwF8Lw7D7y5cD8CuHnfIc= +github.com/sirupsen/logrus v1.0.6 h1:hcP1GmhGigz/O7h1WVUM5KklBp1JoNS9FggWKdj/j3s= +github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= +github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d h1:zE9ykElWQ6/NYmHa3jpm/yHnI4xSofP+UP6SpjHcSeM= +github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= +github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c h1:Ho+uVpkel/udgjbwB5Lktg9BtvJSh2DT0Hi6LPSyI2w= +github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c/go.mod h1:XDJAKZRPZ1CvBcN2aX5YOUTYGHki24fSF0Iv48Ibg0s= +github.com/spiffe/go-spiffe v0.0.0-20170907221946-2bb3101d62b4 h1:/WiK0owj/tTjRC8U+0CfhTLx10k/ZJuqhpRI0mtIJeQ= +github.com/spiffe/go-spiffe v0.0.0-20170907221946-2bb3101d62b4/go.mod h1:q0X9/v75lQ+eeb7Sp2P/FJvmfm9MT7RLmnZS2Gidvns= +github.com/stretchr/testify v1.2.2 h1:bSDNvY7ZPG5RlJ8otE/7V6gMiyenm9RtJ7IUVIAoJ1w= +github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/zeebo/errs v1.0.0 h1:uPx2/S2dQn9npw2Y9AKTae12AHkHSqk1WiaRiBNguFA= +github.com/zeebo/errs v1.0.0/go.mod h1:Yj8dHrUQwls1bF3dr/vcSIu+qf4mI7idnTcHfoACc6I= +golang.org/x/crypto v0.0.0-20180820150726-614d502a4dac h1:7d7lG9fHOLdL6jZPtnV4LpI41SbohIJ1Atq7U991dMg= +golang.org/x/crypto v0.0.0-20180820150726-614d502a4dac/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180906233101-161cd47e91fd h1:nTDtHvHSdCn1m6ITfMRqtOd/9+7a3s8RBNOZ3eYZzJA= +golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4 h1:YUO/7uOKsKeq9UokNS62b8FYywz3ker1l1vDZRCRefw= +golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e h1:o3PsSEY8E4eXWkXrIP9YJALUkVZqzHJT5DOasTyn8Vs= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2 h1:+DCIGbF/swA92ohVg0//6X2IVY3KZs6p9mix0ziNYJM= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +google.golang.org/appengine v1.4.0 h1:/wp5JvzpHIxhs/dumFmF7BXTf3Z+dd4uXta4kVyO508= +google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8 h1:Nw54tB0rB7hY/N0NQvRW8DG4Yk3Q6T9cu9RcFQDu1tc= +google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/grpc v1.14.0 h1:ArxJuB1NWfPY6r9Gp9gqwplT0Ge7nqv9msgu03lHLmo= +google.golang.org/grpc v1.14.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= +gopkg.in/airbrake/gobrake.v2 v2.0.9 h1:7z2uVWwn7oVeeugY1DtlPAy5H+KYgB1KeKTnqjNatLo= +gopkg.in/airbrake/gobrake.v2 v2.0.9/go.mod h1:/h5ZAUhDkGaJfjzjKLSjv6zCL6O0LLBxU4K+aSYdM/U= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/fsnotify.v1 v1.4.7 h1:xOHLXZwVvI9hhs+cLKq5+I5onOuwQLhQwiu63xxlHs4= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= +gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2 h1:OAj3g0cR6Dx/R07QgQe8wkA9RNjB2u4i700xBkIT4e0= +gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo= +gopkg.in/ini.v1 v1.40.0 h1:JOoHKRa3vZxx47SL6sOY0gj0hfmA24l+BkQ4CftFizc= +gopkg.in/ini.v1 v1.40.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/square/go-jose.v2 v2.1.8 h1:yECBkTX7ypNaRFILw4trAAYXRLvcGxTeHCBKj/fc8gU= +gopkg.in/square/go-jose.v2 v2.1.8/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/tomb.v2 v2.0.0-20161208151619-d5d1b5820637 h1:yiW+nvdHb9LVqSHQBXfZCieqV4fzYhNBql77zY0ykqs= +gopkg.in/tomb.v2 v2.0.0-20161208151619-d5d1b5820637/go.mod h1:BHsqpu/nsuzkT5BpiH1EMZPLyqSMM8JbIavyFACoFNk= +gopkg.in/yaml.v2 v2.2.1 h1:mUhvW9EsL+naU5Q3cakzfE91YhliOondGd6ZrsDBHQE= +gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= diff --git a/pkg/agent/manager/cache/subscriber.go b/pkg/agent/manager/cache/subscriber.go index ec0fa3c00d..fbf2a3eb9b 100644 --- a/pkg/agent/manager/cache/subscriber.go +++ b/pkg/agent/manager/cache/subscriber.go @@ -3,7 +3,7 @@ package cache import ( "sync" - "github.com/gofrs/uuid" + "github.com/gofrs/uuid/v3" "github.com/spiffe/spire/pkg/common/selector" ) diff --git a/pkg/agent/plugin/nodeattestor/k8s/sat.go b/pkg/agent/plugin/nodeattestor/k8s/sat.go index 91247c80e4..cfff650fd7 100644 --- a/pkg/agent/plugin/nodeattestor/k8s/sat.go +++ b/pkg/agent/plugin/nodeattestor/k8s/sat.go @@ -6,7 +6,7 @@ import ( "io/ioutil" "sync" - "github.com/gofrs/uuid" + "github.com/gofrs/uuid/v3" "github.com/hashicorp/hcl" "github.com/spiffe/spire/pkg/common/plugin/k8s" "github.com/spiffe/spire/proto/agent/nodeattestor" diff --git a/pkg/server/endpoints/registration/handler.go b/pkg/server/endpoints/registration/handler.go index 960a3e4948..9e9f48b5a1 100644 --- a/pkg/server/endpoints/registration/handler.go +++ b/pkg/server/endpoints/registration/handler.go @@ -6,7 +6,7 @@ import ( "net/url" "time" - "github.com/gofrs/uuid" + "github.com/gofrs/uuid/v3" "github.com/golang/protobuf/proto" "github.com/golang/protobuf/ptypes/wrappers" "github.com/sirupsen/logrus" diff --git a/pkg/server/plugin/datastore/sql/sql.go b/pkg/server/plugin/datastore/sql/sql.go index 55992871bd..162dd0f3ea 100644 --- a/pkg/server/plugin/datastore/sql/sql.go +++ b/pkg/server/plugin/datastore/sql/sql.go @@ -10,7 +10,7 @@ import ( "sync" "time" - "github.com/gofrs/uuid" + "github.com/gofrs/uuid/v3" "github.com/golang/protobuf/proto" "github.com/hashicorp/hcl" "github.com/jinzhu/gorm" diff --git a/test/fakes/fakedatastore/fakedatastore.go b/test/fakes/fakedatastore/fakedatastore.go index 9628d71dda..563d017ffb 100644 --- a/test/fakes/fakedatastore/fakedatastore.go +++ b/test/fakes/fakedatastore/fakedatastore.go @@ -7,7 +7,7 @@ import ( "sort" "sync" - "github.com/gofrs/uuid" + "github.com/gofrs/uuid/v3" "github.com/golang/protobuf/proto" _ "github.com/jinzhu/gorm/dialects/sqlite" "github.com/spiffe/spire/pkg/common/bundleutil" diff --git a/tools/go.mod b/tools/go.mod new file mode 100644 index 0000000000..bcab78c62f --- /dev/null +++ b/tools/go.mod @@ -0,0 +1,13 @@ +module github.com/spiffe/spire/tools + +require ( + github.com/AlekSi/gocoverutil v0.2.0 + github.com/ghodss/yaml v1.0.0 // indirect + github.com/golang/protobuf v1.2.0 + github.com/grpc-ecosystem/grpc-gateway v1.4.1 + github.com/jteeuwen/go-bindata v3.0.7+incompatible + github.com/mattn/goveralls v0.0.2 + github.com/pborman/uuid v1.2.0 // indirect + google.golang.org/genproto v0.0.0-20181221175505-bd9b4fb69e2f // indirect + gopkg.in/yaml.v2 v2.2.2 // indirect +) diff --git a/tools/go.sum b/tools/go.sum new file mode 100644 index 0000000000..cc8019bbaa --- /dev/null +++ b/tools/go.sum @@ -0,0 +1,44 @@ +cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +github.com/AlekSi/gocoverutil v0.2.0 h1:lpfoGyib/qbTh7PajsBL6Upv3Fnn2o3A6Mn0naFR0E8= +github.com/AlekSi/gocoverutil v0.2.0/go.mod h1:/SQ8potkEzPK7N0+EyZi8sPtf/nK3BnHjw7tVmlDdUs= +github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= +github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/lint v0.0.0-20180702182130-06c8688daad7/go.mod h1:tluoj9z5200jBnyusfRPU2LqT6J+DAorxEvtC7LHB+E= +github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/protobuf v1.2.0 h1:P3YflyNX/ehuJFLhxviNdFxQPkGK5cDcApsge1SqnvM= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/google/uuid v1.0.0 h1:b4Gk+7WdP/d3HZH8EJsZpvV7EtDOgaZLtnaNGIu1adA= +github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/grpc-ecosystem/grpc-gateway v1.4.1 h1:pX7cnDwSSmG0dR9yNjCQSSpmsJOqFdT7SzVp5Yl9uVw= +github.com/grpc-ecosystem/grpc-gateway v1.4.1/go.mod h1:RSKVYQBd5MCa4OVpNdGskqpgL2+G+NZTnrVHpWWfpdw= +github.com/jteeuwen/go-bindata v3.0.7+incompatible h1:91Uy4d9SYVr1kyTJ15wJsog+esAZZl7JmEfTkwmhJts= +github.com/jteeuwen/go-bindata v3.0.7+incompatible/go.mod h1:JVvhzYOiGBnFSYRyV00iY8q7/0PThjIYav1p9h5dmKs= +github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/mattn/goveralls v0.0.2 h1:7eJB6EqsPhRVxvwEXGnqdO2sJI0PTsrWoTMXEk9/OQc= +github.com/mattn/goveralls v0.0.2/go.mod h1:8d1ZMHsd7fW6IRPKQh46F2WRpyib5/X4FOpevwGNQEw= +github.com/pborman/uuid v1.2.0 h1:J7Q5mO4ysT1dv8hyrUGHb9+ooztCXu1D8MY8DZYsu3g= +github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= +golang.org/x/lint v0.0.0-20180702182130-06c8688daad7/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181106065722-10aee1819953 h1:LuZIitY8waaxUfNIdtajyE/YzA/zyf0YxXG27VpLrkg= +golang.org/x/net v0.0.0-20181106065722-10aee1819953/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f h1:wMNYb4v58l5UBM7MYRLPG6ZhfOqbKu7X5eyFl8ZhKvA= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52 h1:JG/0uqcGdTNgq7FdU+61l5Pdmb8putNZlXb65bJBROs= +golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= +google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/genproto v0.0.0-20181221175505-bd9b4fb69e2f h1:eT3B0O2ghdSPzjAOznr3oOLyN1HFeYUncYl7FRwg4VI= +google.golang.org/genproto v0.0.0-20181221175505-bd9b4fb69e2f/go.mod h1:7Ep/1NZk928CDR8SjdVbjWNpdIf6nzjE3BTgJDr2Atg= +google.golang.org/grpc v1.16.0/go.mod h1:0JHn/cJsOMiMfNA9+DeHDlAU7KAAB5GDlYFpa9MZMio= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw= +gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= diff --git a/tools/tools.go b/tools/tools.go new file mode 100644 index 0000000000..dbbf56c437 --- /dev/null +++ b/tools/tools.go @@ -0,0 +1,13 @@ +// +build tools + +package tools + +import ( + _ "github.com/AlekSi/gocoverutil" + _ "github.com/golang/protobuf/protoc-gen-go" + _ "github.com/grpc-ecosystem/grpc-gateway" + _ "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway" + _ "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger" + _ "github.com/jteeuwen/go-bindata/go-bindata" + _ "github.com/mattn/goveralls" +)