Commit graph

293 commits

Author SHA1 Message Date
jakedt
52fdd60779 Merge remote-tracking branch 'origin/detective'
Conflicts:
	static/partials/repo-admin.html
2014-04-14 16:15:32 -04:00
jakedt
61a6db236f Finish the implementation of local userfiles. Strip charsets from mimetypes in the build worker. Add canonical name ordering to the build queue. Port all queues to the canonical naming version. 2014-04-11 18:34:47 -04:00
jakedt
576fbe4f0d Switch over to phusion baseimage. Prevent everything from daemonizing and start it with runit under phusion. Make workers trap and handle sigint and sigterm. Extend the reservation to 1hr for dockerfilebuild. Update nginx to remove the dependency on libgd. Merge the requirements and requirements enterprise files. 2014-04-11 13:32:45 -04:00
jakedt
d39f3cc5d4 Fix the tests and implement a fake stripe. 2014-04-10 15:20:16 -04:00
Joseph Schorr
0e54b0501c Return the reason a username validation failed and add tests to verify we are sending the reason to client 2014-04-07 20:37:02 -04:00
jakedt
265fa5070a Fix support for multiple stack configurations and move most secrets into the quay-config project. 2014-04-07 16:59:22 -04:00
jakedt
8e9faf6121 Toward running quay in a docker container. 2014-04-07 01:20:09 -04:00
jakedt
e87ffa20cf First attempt at making config loadable through string config overrides in an env variable. 2014-04-03 17:31:46 -04:00
Joseph Schorr
7c466dab7d - Add an analyze method on triggers that, when given trigger config, will attempt to analyze the trigger's Dockerfile and determine what pull credentials, if any, are needed and available
- Move the build trigger setup UI into its own directive (makes things cleaner)
- Fix a bug in the entitySearch directive around setting the current entity
- Change the build trigger setup UI to use the new analyze method and flow better
2014-04-02 23:33:58 -04:00
Joseph Schorr
9a79d1562a Change to store the pull robot on the repository build and only add the credentials to the queue item. This prevents the credentials from being exposed to the end user. Also fixes the restart build option 2014-04-01 21:49:06 -04:00
jakedt
d768b60a3c Merge remote-tracking branch 'origin/master' into tagyourit
Conflicts:
	test/data/test.db
2014-04-01 19:09:41 -04:00
jakedt
3525e383df Merge remote-tracking branch 'origin/master' into pullinprivate
Conflicts:
	test/data/test.db
2014-04-01 18:28:48 -04:00
Joseph Schorr
4f1ae25128 Make sure the TAR import system handles TAR paths with local directory references 2014-04-01 13:00:26 -04:00
Joseph Schorr
35f69b9f5b Add support for .tar.gz build packs in the build package viewer 2014-04-01 00:23:53 -04:00
Joseph Schorr
2006917e03 Add support for pull credentials on builds and build triggers 2014-03-27 18:33:13 -04:00
jakedt
302bfb27ae Merge remote-tracking branch 'origin/master' into tagyourit
Conflicts:
	endpoints/api.py
	static/js/app.js
	static/partials/view-repo.html
	test/data/test.db
	test/specs.py
	test/test_api_usage.py
2014-03-26 19:42:29 -04:00
jakedt
afb3a67b7b Switch the data to a textfield for authorization codes. 2014-03-25 16:06:34 -04:00
Joseph Schorr
7befc04809 Fix API usage tests to send the proper CSRF token and add a "invalid CSRF token" test 2014-03-25 15:17:02 -04:00
jakedt
26a57d0c21 Fix the test_api_security tests for csrf. 2014-03-25 14:53:27 -04:00
jakedt
b81e48cb41 Merge branch 'swaggerlikeus' of ssh://bitbucket.org/yackob03/quay into swaggerlikeus
Conflicts:
	test/data/test.db
2014-03-25 12:43:09 -04:00
jakedt
cbc40588cb Finally figure out what the data field is supposed to be for and use it to implement and fix 3LO. 2014-03-25 12:42:40 -04:00
Joseph Schorr
c82d1ffe98 Add ability for users to see their authorized applications and revoke the access 2014-03-24 20:57:02 -04:00
Joseph Schorr
f7c27f250b Add full application management API, UI and test cases 2014-03-20 15:46:13 -04:00
jakedt
0992c8a47e Fix some permissions problems still around due to some usage of scopes as strings. 2014-03-19 18:21:58 -04:00
jakedt
c93c62600d Merge remote-tracking branch 'origin/master' into swaggerlikeus
Conflicts:
	data/database.py
	endpoints/api.py
	endpoints/common.py
	templates/base.html
	test/data/test.db
	test/specs.py
2014-03-19 15:39:44 -04:00
jakedt
6fc369bed2 Change non logged in 403s to 401s. 2014-03-19 13:57:36 -04:00
Joseph Schorr
807fa68fe4 Fix the remainder of the API usage tests. Note that this still fails when the blueprint is registered again, so each subset of tests has to be run on its own 2014-03-18 20:32:37 -04:00
jakedt
5e7ffd95ca Update the api usage test to use the new url_for resources. 2014-03-18 19:34:26 -04:00
jakedt
1757a122fe Update the security tests with the proper response codes for everything. 2014-03-18 19:21:46 -04:00
jakedt
0c4c4c78c7 Switch the security tests over to the new test format which is generated. 2014-03-18 16:48:09 -04:00
Joseph Schorr
d469b41899 Add an oauth authorization page 2014-03-14 18:57:28 -04:00
Joseph Schorr
e5a461989f Add a check_repository_usage method which adds (or removes) a notification on the user/org when they go over their plan usage 2014-03-12 19:19:39 -04:00
Joseph Schorr
525ef8d14f Add support for targeting notifications to organizations and remove the password_required notification for new orbs 2014-03-12 19:00:24 -04:00
Joseph Schorr
578add3b9e Finish basic notifications system and verify it works for the "password_required" notification. 2014-03-12 16:05:32 -04:00
jakedt
25ceb90fc6 Add some sort of oauth. 2014-03-12 12:37:06 -04:00
Joseph Schorr
368a8da7db - Add data classes for notifications
- Add basic API for notifications
- Change the password required to be a notification
2014-03-12 00:49:03 -04:00
Joseph Schorr
c5fa12329c Update path matching regex to support dots 2014-03-11 14:42:53 -04:00
Joseph Schorr
e699739b23 Fix handling of repository names that match known endpoints (build, trigger, etc) and add tests to ensure it is fixed 2014-03-11 14:30:00 -04:00
Joseph Schorr
e4d40e3289 Add test for bad repo names currently breaking quay 2014-03-11 13:38:44 -04:00
Joseph Schorr
dbb234c76c Better upwell messaging for everyone and show the upsell for organization admins 2014-03-06 18:36:52 -05:00
jakedt
fde96c736a Fix a problem with initdb and add a limit to the builds API. 2014-03-05 15:50:32 -05:00
Joseph Schorr
3f806b10c2 Add support for build status tags, which link to the Quay.io repo 2014-02-28 16:23:36 -05:00
Joseph Schorr
20ad666308 Add ability to tag images from the UI, including moving existing tags to different images 2014-02-28 00:12:09 -05:00
Joseph Schorr
260a9146cc Merge branch 'rustedbuilds' of https://bitbucket.org/yackob03/quay into rustedbuilds 2014-02-26 15:19:12 -05:00
Joseph Schorr
3f54022344 Add unit tests for all the new API methods 2014-02-26 15:19:07 -05:00
jakedt
4e713d704f Update the tests for the new build and trigger apis. 2014-02-26 13:45:49 -05:00
jakedt
c13f7cd9df Add the resource_key back to the repository build. 2014-02-25 18:22:02 -05:00
jakedt
de49ce151b Merge remote-tracking branch 'origin/master' into rustedbuilds 2014-02-25 17:00:38 -05:00
jakedt
4b689a7a7c Fix the translation of old ids to new ids, again. 2014-02-25 16:31:52 -05:00
jakedt
d505a4edbb Slight tweak to initdb to have the subdir config. 2014-02-24 16:18:14 -05:00
jakedt
13dea98499 Prepare the build worker to support multiple tags and subdirectories. Change the build database config to accept a job config object instead of breaking out the parameters into independent blocks. 2014-02-24 16:11:23 -05:00
jakedt
86e93a2c0f Write triggers are successfully installing on GitHub, noice! 2014-02-21 17:09:56 -05:00
jakedt
d5304f7db0 Merge remote-tracking branch 'origin/master' into rustedbuilds
Conflicts:
	data/database.py
	endpoints/api.py
	endpoints/common.py
	test/data/test.db
2014-02-21 14:52:40 -05:00
jakedt
71ecca4c62 Fix tests. 2014-02-21 14:21:39 -05:00
jakedt
a63a49caa1 Fix up the shared base images stuff. 2014-02-20 22:26:10 -05:00
jakedt
9e426816a5 Pass trigger information on build status. Set up a trigger for the sample building repository. Allow to list the builds started from a trigger. Protect the callback with the proper auth for creating a trigger on a repo. 2014-02-19 16:08:33 -05:00
jakedt
f4642be11a Merge remote-tracking branch 'origin/allyourbaseimage'
Conflicts:
	test/data/test.db
	test/test_api_usage.py
2014-02-18 19:15:14 -05:00
jakedt
f60f9eb62a Properly connect the github push webhook with the build worker. Still need to resolve the archive format. 2014-02-18 18:09:14 -05:00
Joseph Schorr
a897fb1dd3 Add tests for image sharing 2014-02-18 16:46:10 -05:00
jakedt
ed38bcdafc Merge remote-tracking branch 'origin/master' into rustedbuilds
Conflicts:
	test/data/test.db
2014-02-18 16:13:34 -05:00
jakedt
b5d4919364 Split out callbacks into their own blueprint. Add build trigger DB information and connect it with some APIs. Stub out the UI to allow for generation of triggers. Split out the triggers into a plugin-ish architecture for easily adding new triggers. 2014-02-18 15:50:15 -05:00
Joseph Schorr
bc0d51656a Add ability to see a build's build pack, including browsing and downloading of the contents if it is a zip 2014-02-17 17:28:20 -05:00
jakedt
46de02a9ec Merge remote-tracking branch 'origin/master' into allyourbaseimage 2014-02-17 15:18:01 -05:00
jakedt
bb48f733e2 Make the diffs show up in a predictable location. 2014-02-17 15:17:39 -05:00
jakedt
e7064f1191 Fix the tests and the one bug that it highlighted. 2014-02-16 18:59:24 -05:00
jakedt
b619356907 Get the base image stuff working. Checkpoint before fixing the tests. 2014-02-16 17:38:47 -05:00
Joseph Schorr
540da00c64 Add ANSI support to the build log view 2014-02-13 22:01:26 -05:00
yackob03
ade20952e2 Merge branch 'master' into tutorial
Conflicts:
	config.py
	static/js/app.js
	test/data/test.db
2014-02-13 14:35:20 -05:00
yackob03
2bc3df1c3e Fix the tests. 2014-02-13 12:59:36 -05:00
yackob03
8f6cdabde3 Merge branch 'bobthe'
Conflicts:
	test/data/test.db
2014-02-13 12:47:59 -05:00
Joseph Schorr
dbb0dcface Fix repository linking 2014-02-12 21:32:46 -05:00
yackob03
5511c9c4cf Remove some unnecessary logging from the test script. 2014-02-12 19:01:04 -05:00
yackob03
b920a0cb1f Really try to emulate the logs format with the test logs. Switch to a simplified flat logs format. 2014-02-12 18:58:40 -05:00
yackob03
85694dd110 Add a build display name, set it from the etag reported by s3 for file uploads. 2014-02-12 13:52:12 -05:00
Joseph Schorr
8464a181cb Check in fixed DB 2014-02-11 17:05:25 -05:00
yackob03
dc1737e0da Merge branch 'bobthe' of ssh://bitbucket.org/yackob03/quay into bobthe 2014-02-11 12:10:09 -05:00
yackob03
daec74bc25 Get the testlogs to correlate properly. 2014-02-11 12:09:59 -05:00
Joseph Schorr
ea45c3b77f Get full build interface working 2014-02-10 22:43:48 -05:00
yackob03
6fd343741b Change to the new paging format with the commands available at the top. 2014-02-10 19:12:43 -05:00
Joseph Schorr
683648ab19 Database changed 2014-02-06 21:25:33 -05:00
yackob03
ec8f599a11 First half of pylint fixes for the unit tests. 2014-02-06 14:40:36 -05:00
yackob03
f5fff3657c Merge remote-tracking branch 'origin/unittesting' 2014-02-06 14:16:34 -05:00
yackob03
1012daf303 Remove the tests for the now removed method: delete all repository tags. 2014-02-06 14:15:59 -05:00
yackob03
df389e81c7 Fix up the test endpoints with better fake data. Install them at a known location. Update the building test repository to point to the new fakes. 2014-02-05 20:01:23 -05:00
yackob03
5270066d6d Switch to the redis backed build logs and status. 2014-02-03 19:08:37 -05:00
Joseph Schorr
83a34c0ef3 Fix the few broken security tests after the error code fixes 2014-02-03 18:30:06 -05:00
Joseph Schorr
08160afdde Finish API endpoint unit tests 2014-02-03 18:18:33 -05:00
Joseph Schorr
e3eee958a4 Continue on API unit tests: Now 60% (or so) coverage 2014-01-31 19:45:44 -05:00
Joseph Schorr
36d37e839b Continue on API unit tests: Now 50% (or so) coverage 2014-01-31 18:54:31 -05:00
Joseph Schorr
05b33dced4 Continue on API unit tests 2014-01-31 17:54:01 -05:00
Joseph Schorr
900ccd4c47 Start on unit tests for the API endpoint 2014-01-31 16:19:29 -05:00
Joseph Schorr
0833c88065 Make testing much faster by using a save point, rather than recreating the database every test 2014-01-30 20:57:40 -05:00
yackob03
31ff854031 Fix the permissions for the build status tests. Fix a problem with logging the csrf token information when the user is anonymous. 2014-01-30 19:36:21 -05:00
yackob03
7412fae9dc Fix the tests to use blueprints. 2014-01-30 19:06:26 -05:00
yackob03
459f30c123 Merge remote-tracking branch 'origin/master' into umask
Conflicts:
	initdb.py
	test/data/test.db
2014-01-22 11:53:20 -05:00
Joseph Schorr
b91f9125db Fix logs for organization-wide default permissions 2014-01-21 18:39:42 -05:00
Joseph Schorr
e17c3590a7 - Add model functions for working with prototypes
- Add API calls for working with prototypes
- Get UI for prototypes working (minus add)
2014-01-21 14:18:20 -05:00
yackob03
1f533edf95 Fix the superwide repository to not be supertall as well. Move it so that the image ids generated didn't move on other repos. 2014-01-20 17:48:25 -05:00
yackob03
3f67ff77a4 Add the permission proto table to the database. 2014-01-20 17:39:29 -05:00
yackob03
7b0cffa69c Add an email address in a nop maintainer command as a test. 2014-01-14 15:47:13 -05:00
yackob03
63899b8efd Add a NOP command in the commands test db as would exist in a Dockerfile build. 2014-01-14 15:28:24 -05:00
yackob03
e23c750bfb Harvest commands from the Docker json information and add to the database. 2014-01-13 16:32:51 -05:00
yackob03
53c079fdc4 Add the stripe id to the devtable user to suppress the notifications. 2014-01-10 12:39:23 -05:00
Joseph Schorr
9da93c7caf Add frontend and API support for deleting tags. Model support is needed. 2014-01-06 15:20:58 -05:00
Joseph Schorr
56bb46ffb2 - Make the discovery information be preloaded via a bootstrap.js file before angular runs
- Have ApiService generate all the api methods specified by the API discovery information
- Change all call sites (except for a select few when it does not make sense) to use ApiService
2013-12-26 17:45:16 -05:00
Joseph Schorr
1904e6d0c8 Change to nicer API method names and add the internal_api_call decorator in prep for the automatic discovery mechanism 2013-12-24 21:56:03 -05:00
Joseph Schorr
9a61903d28 Fix date time parameter on log_action to properly use the current time (for reals) 2013-12-03 16:48:44 -05:00
yackob03
25063f176c Remove some spurious print statements. 2013-12-02 16:16:59 -05:00
yackob03
0b160eba33 Fix some tests. 2013-12-02 16:16:45 -05:00
yackob03
2da0d4ad75 Merge branch 'lumberjack' of ssh://bitbucket.org/yackob03/quay into lumberjack 2013-12-02 15:40:14 -05:00
yackob03
31a6a17c26 Add permissions tests for the webhooks endpoints. 2013-12-02 15:40:12 -05:00
Joseph Schorr
32efd9d635 Add access tests for the logs API 2013-12-02 15:36:39 -05:00
yackob03
b407c1d9fb Add robots to the entity search. 2013-11-20 18:23:59 -05:00
yackob03
ecc5f8fba7 Wire up webhooks to the UI. 2013-11-15 17:45:37 -05:00
yackob03
7ae78e5370 Merge branch 'master' of ssh://bitbucket.org/yackob03/quay into webhooks
Conflicts:
	endpoints/api.py
	test/data/test.db
2013-11-15 16:48:55 -05:00
yackob03
c1ea6263e1 Flesh out the webworkers a bit. 2013-11-15 16:45:02 -05:00
yackob03
f07690956d Add a fixed number of retries to each item that gets put in the work queue.: 2013-11-15 15:49:26 -05:00
Joseph Schorr
457b619647 Add receipt/invoice email support and option to Quay 2013-11-15 14:42:31 -05:00
yackob03
393534bfb4 Add an outside user to the orgrepo for the purpose of screenshots. 2013-11-07 23:29:58 -05:00
yackob03
52e82cfb10 Change the devtableorg to an org called buynlarge. 2013-11-07 22:43:43 -05:00
yackob03
8a738c2bf9 Add some tests to make sure our docker API is properly respecting auth. 2013-11-07 17:10:57 -05:00
yackob03
1e72644ef8 PEP8 format the test spec. 2013-11-07 13:19:20 -05:00
yackob03
161a6284f0 Refactor the tests to be less ugly. 2013-11-07 12:54:44 -05:00
yackob03
babc6fa867 We were asking for too many parameters for changing the plan, token is not always necessary. 2013-11-06 23:35:37 -05:00
yackob03
6d9207d23a Check in the new test db with the reader user. 2013-11-06 23:21:54 -05:00
yackob03
2cd98fc58e Make the app config more powerful in terms of injecting fake dependencies. Refactor the tests to use metaclasses and to actually all run. 2013-11-06 23:21:12 -05:00
yackob03
2a849f631b Add the next batch of tests and fixes. 2013-11-06 17:56:31 -05:00
yackob03
db59b5bf9c Add some tests to verify we're not leaking anything to completely public users (we're not) 2013-11-06 17:09:22 -05:00
yackob03
22dd031f91 Add a user called freshuser that doesn't belong to anything. 2013-11-05 17:09:50 -05:00
yackob03
ac71822352 Add a description field to teams. 2013-11-04 16:57:20 -05:00
yackob03
dd77ebd64f Next batch of backend permissions for orgs. 2013-11-04 15:42:08 -05:00
yackob03
4c0f987af3 Flesh out some of the organization methods and fix the models. 2013-11-01 19:34:17 -04:00
yackob03
621f89f826 Prepare the underlying data model for organizations. 2013-10-31 16:46:04 -04:00
Joseph Schorr
fc6e3258a8 Work in progress: Add the UI for the build status and start on the file drop stuff 2013-10-26 16:03:11 -04:00
yackob03
dc7a62db67 Add the test db with the random test endpoint. 2013-10-25 20:08:44 -04:00
yackob03
684ce83058 Add a test api to test repositories which are currenlty building. 2013-10-25 15:47:34 -04:00
yackob03
9b9a29c310 Flesh out the create API and wire everything up together. Next up, testing. 2013-10-25 01:14:38 -04:00
yackob03
847e91b696 Add the first part of the build worker that runs on quay. 2013-10-24 16:37:03 -04:00
yackob03
3ea0d5cf20 Make the IDs in the test DB the proper length. 2013-10-18 20:35:14 -04:00
yackob03
6bebfcc3a1 Update the sample data to be more interesting. 2013-10-18 20:18:23 -04:00
yackob03
0565871ee6 Randomize the diffs a little bit better. 2013-10-18 18:28:37 -04:00
yackob03
63ffa52245 Make the diffs absolute and sort them. 2013-10-18 17:05:51 -04:00
yackob03
3d0b165de9 Check in diffs for the test db. Try to make the test db identifiers predictable. 2013-10-18 16:36:11 -04:00