- 20 Dec, 2017 2 commits
-
-
Josh Dolitsky authored
Add code-of-conduct.md
-
Aaron Crickenberger authored
Refer to kubernetes/community as authoritative source for code of conduct
-
- 18 Dec, 2017 3 commits
-
-
Joshua Dolitsky authored
-
Josh Dolitsky authored
-
Josh Dolitsky authored
-
- 15 Dec, 2017 2 commits
-
-
Josh Dolitsky authored
Adds a health check endpoint, at the root address.
-
John Bonham authored
-
- 14 Dec, 2017 2 commits
-
-
John Bonham authored
-
John Bonham authored
The health check endpoint is reachable even when basic HTTP authentication is enabled. The health check confirms that the backing store is responding, returning an error response if it is not, else a successful response.
-
- 29 Nov, 2017 1 commit
-
-
Joshua Dolitsky authored
-
- 28 Nov, 2017 2 commits
-
-
David Genest authored
Add X-Request-Id header
-
Joshua Dolitsky authored
-
- 27 Nov, 2017 7 commits
-
-
Joshua Dolitsky authored
-
Joshua Dolitsky authored
-
Joshua Dolitsky authored
-
Joshua Dolitsky authored
New file pkg/chartmuseum/logging.go created to handle all logging New Logger methods added (Debugc, Infoc, Warnc, Errorc) that take a gin context as an argument, which will prepend log messages with the request count, and add request id (reqID) to key-values
-
Joshua Dolitsky authored
-
Joshua Dolitsky authored
-
Joshua Dolitsky authored
-
- 25 Nov, 2017 2 commits
-
-
Joshua Dolitsky authored
-
Joshua Dolitsky authored
-
- 21 Nov, 2017 3 commits
-
-
David Genest authored
-
Josh Dolitsky authored
Only test storages that are configured in the env
-
David Genest authored
One may not have access to all cloud storages at a time. Allow the testing framework to run even if it is missing a storage. In the acceptance test and in the testcloud make targets, Storage tests will only run for the corresponding defined storage variable i.e.: Amazon tests will run only if TEST_STORAGE_AMAZON_BUCKET is defined and Google tests will run only if TEST_STORAGE_GOOGLE_BUCKET is defined. The build machine should catch any test outliers, as it defines correctly all the cloud test environment variables.
-
- 20 Nov, 2017 3 commits
-
-
David Genest authored
-
Josh Dolitsky authored
Fix index response times increasing with many uploads
-
David Genest authored
-
- 19 Nov, 2017 1 commit
-
-
david authored
-
- 16 Nov, 2017 2 commits
-
-
David Genest authored
Index regeneration before this PR was causing a concurrency pile-up when many requests were coming in at a fast pace. This was causing the time to return /index to always increase. The behavior was observed on a high latency connection to Google Cloud Storage, but would also occur with other network stores. With this PR, the regeneration time is constant and thus the serving of index.yaml is also constant. The implementation takes a general approach to first make initial network requests (to satisfy the object list from storage) and to pile up subsequent requests while the initial one is being completed. The same algorithm is used to update the in-memory cached index. Note that these requests need not be protected by a lock because they are only ever executing on their own. See server.getChartList() for the implementaion of this idea. A refactor was needed to separate the fetch from the diff calculation to allow separate calling of the network heavy operations. While doing so, we also removed redundant calls to storage file list update. Also made small low-hanging fruit style optimisations to index manipulations. Added request ID to all requests for better debugging. This will be visible with the --debug flag. This was indispensable to diagnose complex concurrent processing. To test the before and after state, we have added the use of the locusti.io loadtesting engine. A simple README in the loadtesting/ directory shows how to install locust (with pipenv) and loadtest chartmuseum. This will prove useful in the future. Fixes #18
-
Christian Jauvin authored
-
- 14 Nov, 2017 1 commit
-
-
Josh Dolitsky authored
Update project paths to kubernetes-helm/chartmuseum
-
- 13 Nov, 2017 1 commit
-
-
Nikhil Manchanda authored
Since ChartMuseum has moved to the kubernetes-helm incubator, it can now be found in GitHub under the kubernetes-helm project. In keeping with this, update the project paths from chartmuseum/chartmuseum to kubernetes-helm/chartmusuem.
-
- 08 Nov, 2017 2 commits
-
-
Christian Jauvin authored
-
Christian Jauvin authored
Fix concurrency issue in presence of download errors
-
- 07 Nov, 2017 1 commit
-
-
David Genest authored
Use channel based flow control to fix concurrency when a download error occurs. Read chartVersion from channel to add to the index as they arrive. Add context management to cancel any pending downloading goroutines.
-
- 31 Oct, 2017 2 commits
-
-
Josh Dolitsky authored
-
Josh Dolitsky authored
Add function to limit request counter cardinality
-
- 30 Oct, 2017 1 commit
-
-
Christian Jauvin authored
-
- 26 Oct, 2017 2 commits
-
-
Joshua Dolitsky authored
-
Joshua Dolitsky authored
-