Joseph Schorr
ebb5d17641
Merge pull request #3119 from quay/joseph.schorr/QUAY-976/rate-limit-audit
...
Audit out endpoints and ensure everything has a defined rate limit (even if quite large)
2018-06-20 15:50:48 -04:00
Joseph Schorr
d4882f0077
Fix the IP data lookup to take in an API key
...
Fixes https://jira.coreos.com/browse/QUAY-989
2018-06-20 15:44:40 -04:00
Joseph Schorr
2caaf84f31
Add caching support to catalog
...
We will now cache the results of the catalog for 60s and not hit the database at all if cached
2018-06-20 14:58:01 -04:00
Joseph Schorr
33a8099f35
Temporarily double the request limit. We'll start ratcheting it down over time.
2018-06-20 14:31:51 -04:00
Joseph Schorr
1d94e4d605
Audit out endpoints and ensure everything has a defined rate limit (even if quite large)
...
For registry operations, these were the numbers found at time the PR was written:
download_blob 108 per second across fleet
v2_auth 180 per second across fleet
catalog 1 per second across fleet
fetch_manifest 205 per second across fleet
list_all_tags 150 per second across fleet
With an average fleet size of 25. As a result, we went with a registry limit of 10r/s (10 * 25 = 250 requests) to bound even the most prolific puller.
Fixes https://jira.coreos.com/browse/QUAY-976
2018-06-20 13:36:24 -04:00
Joseph Schorr
a1c06042c6
Add a unique_key fields to the auth context type for tracking different instances
...
This will allow us to lookup a cache for the catalog without needing to make a database call
2018-06-19 11:09:58 -04:00
Joseph Schorr
7604e9842b
Change repo filtering for users to use a user ID reference, rather than the username
...
While this means we need an additional query for initial lookup, it makes the *filtering* query (which is the heavy part) require far fewer joins, thus making it more efficient.
Also adds a new unit test to verify that our filter filters to the correct set of repositories.
2018-06-19 10:51:30 -04:00
Joseph Schorr
f2b9aa4527
Add pytest cache files to gitignore
2018-06-19 10:50:23 -04:00
Joseph Schorr
a3554a73d8
Merge pull request #3069 from quay/joseph.schorr/QUAY-913/db-test-data
...
Add support for populating test data during migration testing
2018-06-19 10:40:28 -04:00
Joseph Schorr
3161b60522
Switch V2 pagination back to using IDs, which should be much faster and easier on the DB
...
Also adds a test for the tags endpoint
2018-06-18 16:11:26 -04:00
Joseph Schorr
f6ff0d6ca0
Add support for populating test data during migration testing
...
This change ensures that the tables in the database during migration have at least one row of "real" data, which should help catch issues in the future where we forget to set column defaults and other such schema oversights that can only be truly tested with non-empty tables
Fixes https://jira.coreos.com/browse/QUAY-913
2018-06-18 14:14:32 -04:00
Joseph Schorr
b8b2c75822
Merge pull request #3054 from quay/v2-manifest
...
V2 Schema 2 manifest support
2018-06-18 11:44:26 -04:00
Joseph Schorr
a73cd9170a
Add schema2 list support
2018-06-15 16:00:39 -04:00
Joseph Schorr
52b12131f7
Add schema2 manifest and schema2 config, along with tests
2018-06-15 16:00:39 -04:00
Joseph Schorr
4bd70eab3c
Add basic tests for schema1
2018-06-15 16:00:39 -04:00
Joseph Schorr
02b9549a79
Merge pull request #3117 from quay/joseph.schorr/QUAY-969/extract-torrent
...
Extract app from torrent handling code
2018-06-15 11:24:02 -04:00
Joseph Schorr
0fdefd78e9
Extract app from torrent handling code
...
Fixes https://jira.coreos.com/browse/QUAY-969
2018-06-14 17:29:39 -04:00
Joseph Schorr
c92c0ca5e1
Merge pull request #3116 from quay/brackets-in-labels
...
Fix display of brackets in the labels view
2018-06-14 12:59:41 -04:00
Joseph Schorr
02db044e0e
Fix display of brackets in the labels view
...
Fixes https://jira.coreos.com/browse/QUAY-983
2018-06-14 11:44:20 -04:00
Sam Chow
1f823097a8
Merge pull request #3112 from quay/project/option
...
Config app entrypoint screen
2018-06-14 10:40:39 -04:00
Sam Chow
690b7674e7
Create intial config setup modal
...
remove the registry title
2018-06-13 16:44:12 -04:00
Sam Chow
e250f4ebe6
Merge pull request #3109 from quay/project/ssl
...
Implement SSL for Q.E. config app user
2018-06-13 15:32:25 -04:00
Joseph Schorr
840a547fc9
Merge pull request #3115 from quay/gitlab-fixes
...
Small fixes for GitLab trigger handler, since the GitLab API is returning the wrong ID for the user's namespace
2018-06-13 15:15:02 -04:00
Joseph Schorr
63ed683dfa
Small fixes for GitLab trigger handler, since the GitLab API is returning the wrong ID for the user's namespace
...
Also has a small UI improvement
2018-06-13 15:12:05 -04:00
Brad Ison
51469001c8
Merge pull request #3114 from bison/travis-slack
...
Add Slack notifications to Travis CI config
2018-06-13 14:55:54 -04:00
Brad Ison
86e5b87211
Add Slack notifications to Travis CI config
2018-06-13 14:51:53 -04:00
Sam Chow
69c155ef4f
Sets up nginx on image for config app with ssl
...
Move copying entry scripts to quay-entrypoint
2018-06-13 14:29:11 -04:00
Brad Ison
0b0bd156f7
Merge pull request #3113 from bison/travis-branches
...
Only build master branch and PRs on Travis CI
2018-06-13 14:24:47 -04:00
Brad Ison
70c5b898a9
Only build master branch and PRs on Travis CI
2018-06-13 14:22:15 -04:00
Brad Ison
2b19e1d93f
Merge pull request #3111 from bison/travis-cache-clean
...
Always clean Travis CI cache if build fails
2018-06-13 14:15:27 -04:00
Brad Ison
268952a492
Allow arbitrary commands passed to entrypoint
2018-06-13 13:26:45 -04:00
Brad Ison
5ce15348ea
Parallelize pytest runs in Makefile
2018-06-13 13:03:11 -04:00
Brad Ison
0501e0b996
Fix failing full-db tests
2018-06-13 13:03:11 -04:00
Brad Ison
e2bde377d6
Use before_cache instead of after_failure to clean cache
2018-06-13 13:03:11 -04:00
Brad Ison
23c01b40c5
Always clean Travis CI cache if build fails
2018-06-12 20:35:37 -04:00
Sam Chow
093a58558c
Merge pull request #3104 from quay/project/app-endpoints
...
Config App initial entrypoint
2018-06-12 17:03:59 -04:00
Joseph Schorr
1be22a9a56
Merge pull request #3110 from quay/joseph.schorr/QUAY-966/gitlab-v4
...
Reimplement GitLab trigger handler using the V4 API library
2018-06-12 17:03:31 -04:00
Joseph Schorr
bf966545ba
Reimplement GitLab trigger handler using the V4 API library
...
GitLab has deprecated and removed the V3 API entirely
Fixes https://jira.coreos.com/browse/QUAY-966
2018-06-12 15:01:37 -04:00
Sam Chow
27721a8632
Add docker shell mode, and remove some config
2018-06-12 14:45:04 -04:00
Sam Chow
479f4c3fa4
Set custom entrypoint for ci scripts to run image
...
increase timeout for cache push
revert test db change
2018-06-12 14:45:03 -04:00
Sam Chow
79a05909d5
Remove kube and scshutdown endpoint
2018-06-12 14:45:00 -04:00
Sam Chow
e9d24dc5ff
Make script paths work in docker and locally for config_app
2018-06-12 14:45:00 -04:00
Sam Chow
d5db3462b9
Add cor progress bar
2018-06-12 14:45:00 -04:00
Sam Chow
13293ecdea
Fix dockerfile being able to pass in params
...
Change config directory to local config_app one
2018-06-12 14:45:00 -04:00
Sam Chow
acf242f241
Port some suconfig/superuser endpoints, with data.model references
2018-06-12 14:45:00 -04:00
Sam Chow
841053f878
Change import paths to be absolute, change pythonpath for config app
2018-06-12 14:44:15 -04:00
Sam Chow
c378e408ef
Add some basic endpoints to the config app backend
...
rename files to avoid overlap with quay app
2018-06-12 14:44:15 -04:00
Sam Chow
d080ca2cc6
Create webpack config for config app
...
further improve developer morale
get initial angular loading
Add remote css to config index
Starts work to port endpoints into config app
Add the api blueprint
2018-06-12 14:44:15 -04:00
Sam Chow
15c15faf30
Return template from call
2018-06-12 14:44:15 -04:00
Sam Chow
92db413da6
Start moving configapp into separate dir
2018-06-12 14:44:15 -04:00