Commit graph

1283 commits

Author SHA1 Message Date
Sam Chow
ec14007268
Merge pull request #3207 from quay/project/gen-sec-key
Add the service key creation to config tool
2018-08-16 16:48:15 -04:00
Joseph Schorr
e13baa9041
Merge pull request #3206 from quay/fix-unicode-schemas
Fix unicode manifests in the backfill
2018-08-16 13:24:17 -04:00
Sam Chow
cc9bedbeb9 refactor approval service key to not need approver 2018-08-15 17:18:41 -04:00
Jimmy Zelinskie
6d4300a92a test/registry: add accept header test 2018-08-15 14:49:26 -04:00
Joseph Schorr
fa58f3b1d2 Fix handling of manifests with unicode in the backfill
Also adds a bunch of tests around manifests to ensure we get the same information in and out
2018-08-15 11:41:15 -04:00
Joseph Schorr
701eac5466 Fix registry tests to not terminate prematurely when looking for errors
Also reorders a check in the V1 protocol to have better error messaging for the users
2018-08-10 13:36:20 -04:00
Joseph Schorr
9669320df2 Fix pushing of manifests whose layers share blobs
If a blob was repeated previously, we would get a constraint error from the ManifestBlob table
2018-08-07 13:06:30 -04:00
Joseph Schorr
7325b22c90 Change id column in LogEntry to a BigInt and migrate back to using that table 2018-07-30 12:42:56 -04:00
Joseph Schorr
c34eacb4fa Fix issue accessing a null tagmanifest under a tag in a repository 2018-07-25 16:14:20 -04:00
Brad Ison
cf8e71f1e8
Merge pull request #3182 from bison/nginx-vts
Add vhost-traffic-status module to Nginx
2018-07-25 20:15:11 +02:00
Joseph Schorr
65c1594a81 Remove ACI tests because they are brittle 2018-07-24 17:47:52 -04:00
Joseph Schorr
3ce8a0279a Increase liveserver timeout on older registry tests 2018-07-24 15:51:21 -04:00
Brad Ison
643a06e73a
Update test.db 2018-07-23 16:44:17 -04:00
Brad Ison
d3d9cca182 Upgrade Peewee to latest 3.x
This requires a number of small changes in the data model code, as well as additional testing.
2018-07-23 12:43:23 -04:00
Joseph Schorr
acb7d626a4 Phase 2 of Appr migration
Backfills the new tables from the old ones, and switches all code to read and write from the new tables
2018-07-21 15:25:04 -04:00
Joseph Schorr
d75e932d09
Merge pull request #3093 from quay/joseph.schorr/QUAY-950/appr-step-1
Phase 1 of Appr migration
2018-07-21 14:58:14 -04:00
Joseph Schorr
113bb96f29 Phase 1 of migrating APPR-specific tables to tables with the Appr prefix
Fixes https://jira.coreos.com/browse/QUAY-950
2018-07-20 13:19:01 -04:00
Joseph Schorr
6622f27c93 Rename oci_model to appr_model 2018-07-20 12:46:19 -04:00
Joseph Schorr
1a2e2f54e1 Move storagereplication test under the workers test directory 2018-07-19 15:56:20 -04:00
Joseph Schorr
f4b05df179 Fix SSL test import 2018-07-19 11:59:14 -04:00
Joseph Schorr
69406c6aec Move remaining util tests into pytest 2018-07-19 11:40:40 -04:00
Joseph Schorr
fa354d695a
Merge pull request #3174 from quay/move-repo-visibility-tests
Move repo visibility tests into pytest
2018-07-19 11:24:33 -04:00
Joseph Schorr
3f3a0946f6 Move repo visibility tests into pytest 2018-07-19 11:23:11 -04:00
Joseph Schorr
7a350b9cd1
Merge pull request #3173 from quay/move-label-validation-tests
Move label validation tests into pytest
2018-07-19 11:22:40 -04:00
Joseph Schorr
b69af403d4 Move label validation tests into pytest 2018-07-19 11:20:00 -04:00
Joseph Schorr
306e79e493 Move trigger tests into pytest
Note that we split the tests between endpoints/building and buildtrigger
2018-07-19 11:10:19 -04:00
Joseph Schorr
a5dc885fc6
Merge pull request #3170 from quay/move-streamlayerformat-tests
Move stream layer format tests into pytest
2018-07-19 10:58:53 -04:00
Joseph Schorr
f6d914619b Move stream layer format tests into pytest 2018-07-19 10:57:08 -04:00
Joseph Schorr
963e35251e Move queuefile tests to pytest 2018-07-19 10:49:53 -04:00
Joseph Schorr
5ece12eca4
Merge pull request #3168 from quay/move-storageproxy-test
Move storage proxy test into the storage directory
2018-07-18 17:34:18 -04:00
Joseph Schorr
b2981947c3
Merge pull request #3167 from quay/move-ssl-util-tests
Move SSL util tests to pytest
2018-07-18 17:33:35 -04:00
Joseph Schorr
be58605f44 Move storage proxy test into the storage directory 2018-07-18 17:33:15 -04:00
Joseph Schorr
f84cb05792
Merge pull request #3164 from quay/move-queue-tests
Move queue tests to pytest
2018-07-18 17:27:38 -04:00
Joseph Schorr
894b754121 Move SSL util tests to pytest 2018-07-18 17:26:24 -04:00
Joseph Schorr
2d7b4dd1bf Move public repo test to pytest 2018-07-18 17:22:05 -04:00
Joseph Schorr
f648b3311b Move queue tests to pytest 2018-07-18 15:22:38 -04:00
Joseph Schorr
be1d293416
Merge pull request #3160 from quay/move-buildquery-tests
Move build query tests to pytest
2018-07-18 13:50:21 -04:00
Joseph Schorr
afe5aafef6
Merge pull request #3159 from quay/move-preparetrigger-test
Move prepare trigger tests to pytest
2018-07-18 13:50:12 -04:00
Joseph Schorr
d7b1efa7fb
Merge pull request #3158 from quay/move-permissions-test
Move permissions test to pytest
2018-07-18 13:50:05 -04:00
Joseph Schorr
928a5d604a Move build query tests to pytest 2018-07-18 11:26:18 -04:00
Joseph Schorr
a51f517f8d Move prepare trigger tests to pytest 2018-07-18 11:19:41 -04:00
Joseph Schorr
406082be74 Move permissions test to pytest 2018-07-18 11:14:27 -04:00
Joseph Schorr
8be5c66e14 Move names test to pytest 2018-07-18 11:10:44 -04:00
Sam Chow
4ed64b0956
Merge pull request #3151 from quay/project/remove-logins
Remove password confirmation in config app
2018-07-18 10:35:25 -04:00
Joseph Schorr
e00f2d5865
Merge pull request #3156 from quay/move-morecollections-test
Move morecollections tests to pytest
2018-07-18 00:01:15 +03:00
Joseph Schorr
4f8b45c8d6
Merge pull request #3155 from quay/move-metrics-test
Move metrics test to pytest
2018-07-17 23:59:00 +03:00
Joseph Schorr
28a1c3f865 Move morecollections tests to pytest 2018-07-17 16:58:49 -04:00
Joseph Schorr
0f6c8e620d Move metrics test to pytest 2018-07-17 16:54:04 -04:00
Joseph Schorr
6a322c90f4
Merge pull request #3154 from quay/move-manifest-cornercase-test
Move manifest corner case tests to pytest
2018-07-17 23:53:49 +03:00
Joseph Schorr
58e553838c Move manifest corner case tests to pytest 2018-07-17 16:40:56 -04:00
Joseph Schorr
d63dba35cd
Merge pull request #3153 from quay/move-endtoend-auth-test
Move end to end auth tests for APIs into pytest
2018-07-17 23:29:53 +03:00
Joseph Schorr
fcb9fd3792 Move end to end auth tests for APIs into pytest 2018-07-17 16:28:03 -04:00
Joseph Schorr
4aee811611 Move cloud storage tests to pytest 2018-07-17 16:14:23 -04:00
Sam Chow
f5a8116f5a Remove password confirmation in config app
Small fix to manually clean up temp dir when creating new temp dir,
small fix to font awesome icons, change the jwt/keystone
validators to not use username/password
2018-07-17 16:00:55 -04:00
Sam Chow
496d94138c
Merge pull request #3139 from quay/spike/install-certs
Install certs in the config app, small refactor to LDAP validation
2018-07-16 12:50:36 -04:00
Joseph Schorr
cdaa312d0b Fix rollback of savepoints for full DB tests 2018-07-16 11:44:19 -04:00
Joseph Schorr
eb8e325f94 Move image sharing model tests to pytest 2018-07-16 09:58:21 -04:00
Joseph Schorr
135ca41287
Merge pull request #3142 from quay/move-blob-model-test
Move blob model tests to pytest
2018-07-16 16:16:11 +03:00
Joseph Schorr
6c3cf403bd
Merge pull request #3137 from quay/joseph.schorr/QUAY-963/repo-name-check
Ensure that we limit the length of repository names
2018-07-15 19:17:40 +03:00
Joseph Schorr
a572fd33c7 Ensure that we limit the length of repository names
Until now, they'd simply be truncated by the database. Now, we properly check their lengths.

Fixes https://jira.coreos.com/browse/QUAY-963
2018-07-13 13:22:33 +03:00
Joseph Schorr
1a728eac7e
Merge pull request #3140 from quay/move-anon-check-test
Move anon checked test to pytest
2018-07-13 13:20:03 +03:00
Joseph Schorr
e35c997415
Merge pull request #3141 from quay/move-backfill-allocator-test
Move backfill allocator tests to pytest
2018-07-13 13:19:54 +03:00
Joseph Schorr
dda083abb1 Move blob model tests to pytest 2018-07-13 13:19:46 +03:00
Joseph Schorr
59be5b3d1c
Merge pull request #3143 from quay/move-digest-tools-test
Move digest tools tests to pytest
2018-07-13 13:18:24 +03:00
Joseph Schorr
823eac2a91
Merge pull request #3144 from quay/move-dockerfile-parse-test
Move dockerfile parse tests to pytest
2018-07-13 13:18:16 +03:00
Joseph Schorr
3bb889eacf
Merge pull request #3145 from quay/move-filelike-test
Move filelike tests to pytest
2018-07-13 13:18:06 +03:00
Sam Chow
1add992525 Add ldap tests for verifying a user exists 2018-07-12 16:53:27 -04:00
Joseph Schorr
be0b1f0061 Move imagetree tests to pytest 2018-07-12 15:56:49 +03:00
Joseph Schorr
f9e46b414c Move filelike tests to pytest 2018-07-12 15:45:30 +03:00
Joseph Schorr
0a23a51fba Move dockerfile parse tests to pytest 2018-07-12 15:43:03 +03:00
Joseph Schorr
2cd63a8e79 Move digest tools tests to pytest 2018-07-12 15:40:46 +03:00
Joseph Schorr
3c65447299 Move backfill allocator tests to pytest 2018-07-12 15:32:57 +03:00
Joseph Schorr
d32efc4e17 Move anon checked test to pytest 2018-07-12 15:24:49 +03:00
Joseph Schorr
924dda296f Fully migrate API security tests into the pytest test suite
Also adds an additional test that ensures that at least one security test exists for every (api endpoint, http method) pair.
2018-07-08 18:33:21 +03:00
Joseph Schorr
2b34ae74fe Add test for trying to pull the tags of a repository under a disabled namespace 2018-06-21 14:41:27 -04:00
Joseph Schorr
fdd0db7a7f Add test for trying to pull the catalog under a disabled namespace 2018-06-21 14:41:27 -04:00
Joseph Schorr
892cc82b6a Ensure that verbs cannot be performed on disabled namespaces or by disabled users 2018-06-21 14:41:27 -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
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
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
Brad Ison
0501e0b996
Fix failing full-db tests 2018-06-13 13:03:11 -04:00
Joseph Schorr
e22b0ce004
Merge pull request #3057 from quay/joseph.schorr/QUAY-893/blob-mount
Implement support for blob mounting via the `mount` parameter on blob uploads
2018-06-06 13:13:39 -04:00
Joseph Schorr
55eb04e622
Merge pull request #3101 from quay/parallel-testing
Enable parallel testing of all the Quay unit tests
2018-06-06 13:13:14 -04:00
Joseph Schorr
f6eaf7ce9d Add blob mounting tests to the new registry test suite 2018-06-06 11:31:28 -04:00
Joseph Schorr
06cb4bddaa Add a test to ensure we don't hit the database when accessing a private catalog with no auth 2018-06-05 19:42:16 -04:00
Joseph Schorr
0e2bff972f Convert storage replication tests to pytest format 2018-06-01 17:07:23 -04:00
Joseph Schorr
544c8f0adf Convert storageproxy tests to be pytest-able and use the new liveserver testcase pytest fixture 2018-06-01 17:07:15 -04:00
Joseph Schorr
65f08c25cf Make spec'ed tests stable across runs
This was preventing us from running tests in parallel, since the names were changing
2018-06-01 17:06:43 -04:00
Sam Chow
7f21d0da58
Merge pull request #3096 from quay/refactor/secscan-simple
Refactor validators to decouple app
2018-06-01 15:44:18 -04:00
Sam Chow
301cc6992a Remove jwt validation for jschorr to fix later
Refactor oauth validate method to take config over entire appconfig
2018-06-01 15:07:06 -04:00
Sam Chow
7df8ed4a60 Add a security scanner api config object for params
Change SecScanAPI to use a uri creation func instead of test context

Pass config provider through validator context

Remove app config dependency for validators
2018-06-01 15:06:50 -04:00
Sam Chow
554d4f47a8 Change validators to use the validator_context
Change InstanceKeys to take a namedtuple for context
2018-06-01 14:59:49 -04:00
Joseph Schorr
8ee98c1c48 Show starred public repositories in the starred repos list
We forgot to check if the repository was public in the filter

Fixes https://jira.coreos.com/browse/QUAY-857
2018-05-31 17:34:17 -04:00
Joseph Schorr
f86c087b3b Prevent registry operations against disabled namespaces
Allows admins to completely wall off a namespace by disabling it

Fixes https://jira.coreos.com/browse/QUAY-869
2018-05-22 18:36:04 -04:00
Joseph Schorr
6ffafe44d3
Merge pull request #3059 from quay/joseph.schorr/QUAY-906/reg-tests
Move registry integration tests to py.test
2018-05-22 17:09:11 -04:00
Joseph Schorr
5509dd350c Switch to use the new registry tests suite 2018-05-22 17:06:41 -04:00
Joseph Schorr
a007332d4c Temporarily change to storing logs in a new LogEntry2 table
This will prevent us from running out of auto-incrementing ID values until such time as we can upgrade to peewee 3 and change the field type to a BigInt

Fixes https://jira.coreos.com/browse/QUAY-943
2018-05-18 20:15:16 -04:00
Joseph Schorr
22a39c3007 Fix bug with missing & in authorization URL for OIDC
Also adds testing to ensure we don't break this again
2018-05-15 14:52:00 -04:00
Joseph Schorr
8c1b0e673c Implement the remaining registry tests in the new py.test format 2018-05-01 13:28:24 +03:00
Joseph Schorr
23c19bcbc1 Implement support for registry integration tests via py.test
This change implements support for registry integration tests using the new py.test-based live server test fixture. We can now parametrize the protocols we use (in prep for V2_2), and it makes the code *much* cleaner and less hacky.

Note that moving the vast majority of the tests over from the existing impl will come as a followup PR
2018-05-01 13:28:24 +03:00