* Changed mongo.go to use new driver
* Modified mongo cataloger
* More new driver related changes
* Change lister.go
* Change saver.go
* Change imports
* Remove unnecessary Count query
* Use IndexView for indexing
* Rename ModuleStore fields
* Use map of key:sorting-order for creating the index
* Minor changes
* Use client options to configure mongo client
* Use method chaining
* gofmt changes
* Change imports
* Fix some build errors
* Use new GridFS API
* Fix more build errors
* Add Go Mongo driver to dependency modules
* Use multierror
* Leave download stream open
* Remove mgo error handling
* Copy zip instead of loading all in memory
* Use context.WithTimeout() wherever possible
* Raise KindNotFound when mod@ver isn't found
* NopCloser not needed
* Fix IndexView error
* Fix build errors
* Remove another mgo error usage
* Fix build error
* Changes according to review
* Formatting changes as per gofmt
* Modify gofmt argument to show the expected formatting (diff)
* Handle ErrNoDocument error and error arising from query execution
* Fix kind of returned error
* Minor changes
* Bug fixes
* gofmt related changes
* Minor change
* Use Insecure from MongoConfig, remove Insecure from global Config
* Remove stray print statement
* Added new cataloger interface
* Implementing catalog protocol
* Propagated to protocol and over
* First round of fixes
* S3 almost ready, need to be tested
* Going on with testing s3
* Better testing with s3
* Simplified catalog tests
* Preparing gcp tests to access a gcp instance
* Fixing initialization errors
* Removed some prints
* Gcp ready, to be tested
* Gcp working
* Aligned bucket mock to catalog method
* Switched res payload to json
* Added catalog method to all storage instances
* Added catalog method to unsupported storages
* Fixed with pool test
* Restored tests
* Fixed gcp constructor
* Implemented catalog for fs
* Removed trace
* E2e tests, fixed fs
* Fixed module name return value
* Added cataloger method to azure storage
* Added docs
* Changed pagesize parameter name
* Fixed gofmt error
* Added json tags to result. Fixed lint warning
* Removed extra line
* Changed not implemented error to http.KindNotImplemented
* Checking for inequality on results
* Lower-cased json keys
* Added cleaning of path separator
* Fixed review comments
* Add catalog endpoint for mongo
* Add omitempty to ID
* Fix catalog tests
* update for next token
* fix e2e
* Make query readable
* Fix language and e2e script
* remove new line
* Added new cataloger interface
* Implementing catalog protocol
* Propagated to protocol and over
* First round of fixes
* S3 almost ready, need to be tested
* Going on with testing s3
* Better testing with s3
* Simplified catalog tests
* Preparing gcp tests to access a gcp instance
* Fixing initialization errors
* Removed some prints
* Gcp ready, to be tested
* Gcp working
* Aligned bucket mock to catalog method
* Switched res payload to json
* Added catalog method to all storage instances
* Added catalog method to unsupported storages
* Fixed with pool test
* Restored tests
* Fixed gcp constructor
* Implemented catalog for fs
* Removed trace
* E2e tests, fixed fs
* Fixed module name return value
* Added cataloger method to azure storage
* Added docs
* Changed pagesize parameter name
* Fixed gofmt error
* Added json tags to result. Fixed lint warning
* Removed extra line
* Changed not implemented error to http.KindNotImplemented
* Checking for inequality on results
* Lower-cased json keys
* Added cleaning of path separator
* Fixed review comments
* Fixed docs
* Rename docker image to gomods/athens
* Bump chart version to match new release version
* Switch from stable tag to latest tag
Our docs used latest, and it's awkard when you don't have a latest tag anyway
* poc
* finish JSON, remove uneeded methods, update docker file, finish script details
* build.Details didn't need to be exported
* typo
* somehow missed this
* should default to false
* Fix some things
remove commit SHA as build script will now create a hybrid for version
as in the push-docker-images.sh script, code shamelessly stolen.
change JSON function to Data and return a struct, the caller can do what
they like with that data, i.e. marshall JSON for a response body.
* add struct tags
* use build script in docker image
* newline in build.sh
* use previously generated version for binary build
* Working docker args
removed script build.sh, was not really needed.
date is generated automatically during docker build process.
VERSION will be set to 'Not Specified', or the version set during
our CI docker build/push step. A user can set their own version during
build using ldflags.
* remove old comment re: script
* Yikes
Almost forgot to remove my testing junk
* GitHub on my phone is hard
* Upgrade buffalo
* Switch to go modules everywhere
* Fixes from buffalo fix
* Add missing modules from module list
* Update vendored modules in /vendor
* Stop using vendor directory for tests
* Check go.mod and go.sum files on verify
* Upgrade Buffalo from v0.13.0 to v0.13.1
* Fix test for new Buffalo
Allow for new Buffalo code
* Add test for endpoint with trailing slash
* cleanup tests and change minio port
* fix cleanup
* cleanup
* fix config test
* add comment to travis
* revert to generic minio addr
* fix test
* switch to test config
* adapt timeouts
* use example config
* fix test... again
* add new lines
* switch proxy to config file
pull in single flight changes
* changes for single-flight
* intermediate stage. All tests passing. pkg still has env refs
* remove all env references
* delete config/env entirely
* fix failing tests
* create the config.toml file as part of dev setup
* create config file only if it doesn't exist
* update Dockerfiles to use config file
* move composing elements to the top
* verbose parameter naming
* newline
* add flag for config file path
* update docs with config file flag
* remove unnecessary nil check
* use filepath.join
* rename redis port to address
* fix path.join
* fix issues after merge
* add vendor dir
* remove vendor directory
athens will be using Go modules for dependency management
* remove Gopkg.* files. athens will be using Go modules for dependency management
* add note about Go version required for developing on Athens
To use Go modules for dep management, you require atleast Go version 1.11
* update documentation regarding supported version of Go
* dont install dep
* re-add vendor directory
go mod vendor
* use vendored directory to carry out Go commands
* remove the use of -mod=vendor
this is necessary because;
1. we are running ci in a travis with a matrix of GO111MODULE=on & GO111MODULE=auto
and -mod=vendor is not available as an option in GO111MODULE=auto(inside GOPATH)
* rm vendor
* run go mod tidy
this is beacuse the master branch had changes to Gopkg.lock
* match gopkg.in/go-playground/validator.v9 version
with master branhc
* go mod tidy
* go mod vendor
so as to vendor the new changes that were added in master
* set GO111MODULE=on globally in ci
* build with -mod=vendor when building docker image
* use -mod=vendor to avoid getting deps from vcs in ci
* use -mod=vendor in .drone.yml
* use go1.11 in drone.yml
* Set a default value for ATHENS_MONGO_CONNECTION_STRING env var
- ATHENS_MONGO_CONNECTION_STRING will default to mongodb://127.0.0.1:27017 if not set
* Fix Get function call
* Update user of env.MongoConnectionString
* update travis to Go 1.11
* update check_deps ci script
ci for checking dependencies should now check Go module files and use go mod verify
* remove uneeded comment
* set GO111MODULE
* debug GO111MODULE propagation
* rm dep installation
* debug GO111MODULE propagation
* rm debug statements
* use Go point releases in ci
* remove references to Go1.11 RCs
* run ci with GO111MODULE auto and also on
* use matrix
* add script and step to verify stage of makefile
* this commit should fail the build
* build should now pass
* fix typo in excludes for grep
* better output on failure
also removes tilde from initial regex, git does not use tilde in diffs
adds output of filenames with detected regex on failure
* port scripts to ps
* remove ps core features
* init script
* make it work on ps 5.0
* sync with make file
* cleanup
* cleanup
* review feedback
* newline
master builds publish using the git describe output as the immutable tag and
canary for the mutable tag. Examples:
gomods/proxy:abc1234
gomods/proxy:canary
tagged builds publish using the tag as the immutable tag, which is
usually going to be a semver value and with latest for the mutable tag.
Examples:
gomods/proxy:v1.0.0
gomods/proxy:latest
branch builds publish using the git describe output as the immutable tag and the
branch name for the mutable tag. Examples:
gomods/proxy:def4567
gomods/proxy:beta-1
* Inital removal of cdn rdbms driver and pop support from olympus
* Update travis and other unit test scripts
* Remove postgres from Makefile
* Update comments and remove function that is not required
* Update .env file
* clean commented code
* Update docs to remove references to rdbms
* Remove pop and run dep ensure to make sure that the tests pass without pop
* Keeping GO_ENV=test for parametter logging
* Remove pop from models for now
* Remove rdbms storage from pkg/storage
* Completely remove pop
* Some improvements to tests
- Not sourcing from cmd/proxy/.env, because that doesn't export any variables
- Removing mysql support (I feel like 1 database is enough)
- Pruning networks on teardown
I'm happy to split these changes up into separate PRs - it's the end of the day for me so I wanted to get everything in 😄
* update to point to test instance
* Update databasy.yml for travis??
* Remove database.yml
* Do not use db migrations and creation
* Remove pop dependency from cdn
* add schema for olympus assuming cdn driver is part of olympus
* Move CI/CD and test scripts to point pop to olympus
* Update database.yml and keep it only for olympus
* Add migrations to travis
* Add debug logs to see what travis is doing
* Update travis to use olympus database.yml
* Moarrrr logs to see where travis is pointint the db towards
* Change env to test
* Use test as the default environment if not specified otherwise
* Check if test new rdbms storage succeeds
* Try to see which connection string rdbms test suite is using on travis
* Update db tags for cdn driver
* create db by using travis go_env
* Remove sql from database config as it is removed from docker-compose
* Remove extra logs that I missed
* Add newline
* remove models.go and test file from proxy
* removing extraneous network prune from Makefile
* Update e2e tests to not use sudo
Using a system temporary directory via mktemp we can place our GOMOD_CACHE
in a place that does not require root permission to clear.
As well we use the environment variable for GO_BINARY_PATH to point to
a module compatible go version. At this time, 1.11beta3.
* add GO_BINARY_PATH to travis
* Use conditional GO_BINARY_PATH
Co-authored-by: robbie <hello@robloranger.ca>
Co-authored-by: carolyn <me@carolynvanslyck.com>
* no longer needs to set GO_BINARY_PATH in env
Since CONTRIBUTING.md and DEVELOPMENT.md asks the reader to run
'make setup-dev-env', which runs this script, it needs to be support
other platforms besides Linux.
Helps #397
* The commit brings more clarity on how to run unut tests.
The commit chages behaivour of `make test-unit` by adding sourcing of
env vars. Documentation is updated to provide more clarity on how to run
unit tests.
* changed list of commands to run before unit tests
* moved env vars to .env
* removed dduplicated env var
* returned conventional file name in script
* link to DEVELOPMENT.md
* fixed typo
* moved env var export to script
* removed export of tmp folder
* Adding benchmark for mongo and fs
* Adding delete, exists, save with other storages
* Fixing typos, adding nonexistent module exits benchmark
* Fixing delete operation in delete benchmark
* Separating non testing existing modules benchmark, shortening the benchmark name
* running benchmark in ci
* Revert "running benchmark in ci" - mongo index make duplicate records to
fail
idempotent, will fix in a separate PR.
This reverts commit f7d78262d2.
* Adding reset timer, fixing duplicate record issue
* Revert "Revert "running benchmark in ci" - mongo index make duplicate records to"
This reverts commit 40a7b33199.
* removing benchmark from ci
* Adding operation for returning errors
* small fixes
* set GO111MODULES=auto
* set GO111MODULES=on after running buffalo
* use travis for go1.11beta3 not build from source
* set GO111MODULES=on before running buffalo
* revert GO111MODULE placement to after buffalo dev, comment w/ issue link
* oops
* spaces too
* Use go1.11beta2 instead of vgo
* Make the go 1.11 source directory configurable
Don't error out if it's been cloned already
* Add end-to-end (e2e) tests
* Make sure the repo bin is on the path
* Call the dev target from setup-dev-env
* Use the same dev setup on travis and locally