Commit graph

913 commits

Author SHA1 Message Date
Joseph Schorr
0b706bc7c4 Make sure images in the process of being uploaded are not scanned by Clair 2019-02-08 16:20:44 -05:00
Joseph Schorr
606b08906c Fix typo 2019-02-06 11:41:50 -05:00
Joseph Schorr
9f09d68ad8
Merge pull request #3323 from quay/joseph.schorr/QUAY-1282/log-interfacing
Interface out all action log data model operations
2019-01-28 15:09:25 -05:00
Joseph Schorr
b773a18ed8 Interface out all action log data model operations
This will allow us to reimplement the logs data model against a non-database system in the near future
2019-01-25 15:52:22 -05:00
Kenny Lee Sin Cheong
1b1c9cd1cf
Add V1_ONLY_DOMAIN to internal properties (#3345) 2019-01-23 18:01:15 -05:00
Joseph Schorr
987ffe5614 Add a check for missing tag manifests
This can occur if a manifest was moved to a different tag
2019-01-23 15:09:17 -05:00
Joseph Schorr
ef6a809ef3 Add a tool for verifying the tag backfill on a namespace 2019-01-23 13:29:31 -05:00
Joseph Schorr
171c7e5238 Further fixes for unicode handling in manifests
We were occasionally trying to compute schema 2 version 1 signatures on the *unicode* representation, which was failing the signature check. This PR adds a new wrapper type called `Bytes`, which all manifests must take in, and which handles the unicodes vs encoded utf-8 stuff in a central location. This PR also adds a test for the manifest that was breaking in production.
2019-01-09 15:14:41 -05:00
Joseph Schorr
b6db002729 Fix references to LogEntry model used and add support for a maximum page of results on the logs API 2019-01-02 16:04:15 -05:00
Joseph Schorr
204eb74c4f Put aggregated log query and log exports behind feature flags 2019-01-02 16:04:15 -05:00
Joseph Schorr
4ba4d9141b Put user last accessed updating behind a feature flag 2019-01-02 16:04:15 -05:00
Joseph Schorr
8a212728a3 Implement a worker for batch exporting of usage logs
This will allow customers to request their usage logs for a repository or an entire namespace, and we can export the logs in a manner that doesn't absolutely destroy the database, with every step along the way timed.
2018-12-18 15:33:03 -05:00
Kenny Lee Sin Cheong
c6b2e5a54b
Add AppToken to schema (#3308) 2018-12-11 13:17:09 -05:00
Joseph Schorr
d15ed05933 Add test for breakage in ipresolver 2018-12-10 13:13:01 -05:00
Joseph Schorr
7d525a7670 Fix geoip resolution for AWS-based pulls
Typo resulted in an error being raised: https://sentry.io/coreos/backend-staging/issues/801171785/?referrer=slack
2018-12-09 20:46:07 -05:00
Joseph Schorr
c3710a6a5e Add ability for specific geographic regions to be blocked from pulling images within a namespace 2018-12-06 17:14:45 -05:00
Joseph Schorr
23e6279ef5 Fix loading of security scan results for OCI-style manifests
Fixes https://jira.coreos.com/browse/QUAY-1241
2018-12-04 11:56:06 -05:00
Joseph Schorr
6c29baf3fc
Merge pull request #3281 from quay/georep-fix
Fixes for georeplication
2018-11-01 17:58:32 -04:00
Joseph Schorr
ebc57da843 Tiny fixes found in review 2018-11-01 17:45:39 -04:00
Joseph Schorr
0fb3d6847e Add a script for verifying the placements of blobs in storage. If a blob is not present in storage, its placement will be removed. 2018-11-01 11:44:49 -04:00
Joseph Schorr
4868f17832 Implement a basic test suite for jwtutil and add extra checks to the decode method 2018-10-30 16:45:30 -04:00
Kenny Lee Sin Cheong
bb01e08d44
Fix ipresolver test_thread_missing_file (#3268)
There is no guarantee that the assertion would happen AFTER "sleep" is
called.

Block the caller for an amount of time to give "update_ip_thread" time to call "sleep" and raise LoopInterruptionForTest exception to terminate the thread.
2018-10-15 17:18:11 -04:00
Kenny Lee Sin Cheong
fc67bbd0a6
IPResolver: fix unreachable code (#3267)
* Fix unreachable code

_get_aws_ip_ranges handles missing file exceptions and returns None,
so the excepttion handling block in the UpdateIPRange thread is never reached.

* Test for missing range file in resolver thread
2018-10-12 10:24:28 -04:00
Joseph Schorr
a4f1475de4
Merge pull request #3234 from quay/joseph.schorr/QUAY-1030/interfacing-part-8
Change verbs endpoint to use the new registry data model interface
2018-09-13 12:50:02 -04:00
Joseph Schorr
b19443c4e1
Merge pull request #3244 from kleesc/IPResolver-fix
Fix: Should not break from ipresolver thread
2018-09-07 15:48:08 -04:00
Kenny Lee Sin Cheong
4834c281cb nit: styling 2018-09-07 13:50:56 -04:00
Kenny Lee Sin Cheong
105a7c0ea6 Worker started flag 2018-09-07 13:40:20 -04:00
Kenny Lee Sin Cheong
7743cc44fa Handle exceptions when trying to start resolver thread 2018-09-07 13:26:49 -04:00
Kenny Lee Sin Cheong
7563d97be4 Fix: Should not break from ipresolver thread 2018-09-07 09:55:09 -04:00
Kenny Lee Sin Cheong
56809ef125
Merge pull request #3239 from kleesc/IPResolver-fix
UpdateIPRange thread start on the 1st call to _get_location_function
2018-09-05 13:45:50 -04:00
Kenny Lee Sin Cheong
bff91c0fb9 UpdateIPRange thread start on the 1st call to _get_location_function
Thread will start on first call to _get_location_function as opposed
to IPResolver's new instance.
2018-09-05 13:35:55 -04:00
Joseph Schorr
1953cfcd6e
Merge pull request #3236 from quay/small-fixes
Setup reroutes when complete, fix gunicorn healthcheck
2018-09-04 16:35:57 -04:00
Kenny Lee Sin Cheong
b39051c142
Merge pull request #3223 from kleesc/UpdateIPRange
Create UpdateIPRange class
2018-08-31 17:09:17 -04:00
Sam Chow
dbce986af6 Setup reroutes when complete, fix gunicorn check 2018-08-31 15:17:48 -04:00
Kenny Lee Sin Cheong
b6336393de Make IPResolver run the update in a separate thread
A separate thread will cache the results of parsing the range
file, and the IPResolver will hit the cache instead of blocking while recomputing the
ranges everytime. The thread updates every 600s, and retry every 60s on
failures.
2018-08-31 14:00:53 -04:00
Joseph Schorr
f252b0b16f Move verbs endpoint to use new registry data model 2018-08-29 16:38:54 -04:00
Sam Chow
a40e1e939a Merge branch 'master' into delete-setup-page 2018-08-27 11:26:51 -04:00
Joseph Schorr
f9f47e68c3 Remove unused imagetree class 2018-08-24 13:16:05 -04:00
Joseph Schorr
46edebe6b0 Change secscan API endpoints to use new registry model interface 2018-08-23 16:36:04 -04:00
Sam Chow
cd6b0a6f46 Merge branch 'master' into delete-setup-page 2018-08-23 12:46:08 -04:00
Sam Chow
d44aa8f566 Add error message to app if secret missing in quay 2018-08-20 17:14:52 -04:00
Sam Chow
5b400f4c22 Add one-action transplant of kube secret 2018-08-17 11:00:04 -04:00
Sam Chow
cc9bedbeb9 refactor approval service key to not need approver 2018-08-15 17:18:41 -04:00
Joseph Schorr
b7d8bb227e Make IP resolver performance a bit better by skipping an unnecessary set
This will still hang for a second or two on first call
2018-08-08 14:40:26 -04:00
Joseph Schorr
b5a1dd8f70 Fix copy table for empty table 2018-07-21 16:20:38 -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
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
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