Commit graph

1525 commits

Author SHA1 Message Date
Jake Moshenko
ce7e3a8733 Do not link against layers that are still marked as uploading, there is no guarantee that they will ever be completed and their ancestry may be incomplete. 2014-08-29 13:16:32 -04:00
Joseph Schorr
3b72b26836 Merge branch 'master' into comewithmeifyouwanttowork 2014-08-28 20:50:13 -04:00
Joseph Schorr
f15b3f345e Review updates 2014-08-28 19:07:22 -04:00
Joseph Schorr
85ab7a8c8d Fix migration downgrade for the regenerating robot kind 2014-08-28 18:40:33 -04:00
Joseph Schorr
9142ff69a3 Add migration for new notification kinds 2014-08-28 18:39:35 -04:00
Joseph Schorr
d76d4704a0 Add pagination to the notifications API and make the UI only show a maximum of 5 notifications (beyond that, it shows "5+"). 2014-08-26 15:19:39 -04:00
Joseph Schorr
a129aac94b Add ability to regenerate robot account credentials 2014-08-25 17:19:23 -04:00
Joseph Schorr
d2880807b2 - Further fixes for license stuff
- Small fixes to ensure Quay works for Postgres
2014-08-21 19:21:20 -04:00
Joseph Schorr
d5027d2383 Add a migration script for the new table and log entry kinds 2014-08-18 20:45:48 -04:00
Joseph Schorr
daa43c3bb9 Add better messaging around pulling of base images when they fail due to invalid or missing credentials 2014-08-18 20:34:39 -04:00
Joseph Schorr
02d3b70013 Make sure to search teams as well when determining the robots which have access to a private repo 2014-08-18 19:19:01 -04:00
Joseph Schorr
43b6695f9c Get team invite confirmation working and fully tested 2014-08-18 17:24:00 -04:00
Joseph Schorr
56d7a3524d Work in progress: Require invite acceptance to join an org 2014-08-15 17:47:43 -04:00
Joseph Schorr
f6f857eec2 Add US West region 2014-08-15 15:02:26 -04:00
Joseph Schorr
27c2680380 Plan update and fix about page 2014-08-13 14:25:48 -04:00
Joseph Schorr
bd4bbe0bdb Add missing image location for enterprise 2014-08-12 22:29:17 -04:00
Joseph Schorr
389c88a7c4 Update federated login to store metadata and have the UI pull the information from the metadata 2014-08-11 18:25:01 -04:00
yackob03
420d02cd71 Fix the migration script to add and remove the logentrykinds for notifications. 2014-08-05 14:21:29 -07:00
yackob03
b07eff41f6 Switch the table names to use lower case. 2014-08-05 13:44:18 -07:00
yackob03
cd5af72ba8 Temporarily prevent the deletion of the webhooks table to allow a migration path which keeps prod working. 2014-08-04 13:44:22 -07:00
Joseph Schorr
2c3fe2e60f Switch web hook migration script to fully use the alembic context and connection 2014-08-01 13:37:27 -04:00
Joseph Schorr
a44345338d Add bidirectional migration code of webhooks to/from repo-push webhook notifications. 2014-07-31 16:02:14 -04:00
Jake Moshenko
ee2abf590a Merge branch 'redalert' of ssh://bitbucket.org/yackob03/quay into redalert 2014-07-31 14:01:17 -04:00
Jake Moshenko
3f6466fccd Add a migration to move the existing webhooks over and another migration to remove the legacy webhooks table. 2014-07-31 14:01:03 -04:00
Joseph Schorr
346d3491ff Merge branch 'redalert' of https://bitbucket.org/yackob03/quay into redalert 2014-07-31 13:31:16 -04:00
Joseph Schorr
49801bc2c4 - Add web hook queue code back in. We'll remove it and turn it off after this CL goes to prod
- Make notification lookup always be by repo and its UUID, rather than the internal DB ID
- Add the init script for the notification worker
2014-07-31 13:30:54 -04:00
Jake Moshenko
53a1f62614 Create a migration to prepare the database for the new notification types. 2014-07-31 13:27:05 -04:00
Joseph Schorr
7de1dd7dc0 Merge branch 'master' into redalert 2014-07-28 18:35:39 -04:00
Joseph Schorr
32b2ecdfa6 Add ability to dismiss notifications 2014-07-28 18:23:46 -04:00
Joseph Schorr
34fc279092 Add e-mail authorization to the repository notification flow. Also validates the creation of the other notification methods. 2014-07-28 14:58:12 -04:00
Jake Moshenko
9ad7fc7a54 Prevent extra queries to load image storage data. 2014-07-22 16:46:36 -04:00
Joseph Schorr
752efb9e0f Fix the spawn_notification to work in all cases and clean up some of the remaining code 2014-07-18 16:34:52 -04:00
Joseph Schorr
591cd020b8 Merge branch 'master' into redalert 2014-07-18 15:58:56 -04:00
Jake Moshenko
8a2c88488a Filter tokens with an associated build trigger from the list API. Delete associated tokens when deleting a trigger. 2014-07-18 14:56:26 -04:00
Joseph Schorr
8d7493cb86 Convert over to notifications system. Note this is incomplete 2014-07-17 22:51:58 -04:00
Joseph Schorr
de8e898ad0 Add UI for managing repo notifications 2014-07-17 13:32:39 -04:00
Joseph Schorr
a84fe0681a Start on data model changes and API changes for the new repository notification system 2014-07-16 16:30:47 -04:00
Jake Moshenko
5645b6da32 Add support for read slave databases. 2014-07-02 19:10:24 -04:00
Jake Moshenko
d851feef6e One of the calls which returns an image was not using the base format which includes locations yet. 2014-06-30 14:51:01 -04:00
Jake Moshenko
684c26bc1a Populate image storage objects with locations everywhere. 2014-06-27 20:04:26 -04:00
Jake Moshenko
e68d6a7302 Merge branch 'master' of ssh://bitbucket.org/yackob03/quay 2014-06-27 19:18:35 -04:00
Jake Moshenko
4e5e8a08de Add a maintenance notification kind and make it of the level warning. 2014-06-27 19:18:27 -04:00
Joseph Schorr
76165b5d2b Add API and UI support for displaying image locations 2014-06-24 18:48:42 -04:00
Jake Moshenko
6047f3759f Remove the placement fallback since the DB has been fully backfilled. 2014-06-24 17:01:23 -04:00
Jake Moshenko
6e3a545c7f Add a migration to upgrade to the version of the database supporting placements. 2014-06-18 17:46:20 -04:00
Jake Moshenko
0a62f7f725 Add the ability to look up images which do not have a placement yet. 2014-06-18 12:40:23 -04:00
Jake Moshenko
bf0e01fba5 Fix bugs with pushing, pulling, and deleting. 2014-06-17 16:37:48 -04:00
Jake Moshenko
bf98575feb Add the basics of geographic data distribution and get the tests to work. 2014-06-17 16:03:43 -04:00
Jake Moshenko
6d07cf94d2 Add a migration to remove the image fields that were migrated to image storage, and add some uniqueness constraints to some indexes. 2014-06-12 19:51:57 -04:00
Jake Moshenko
78c5aec5b9 Switch the checksums to use the registry computed value, remove all assumptions of namespaced paths for legacy storage, fix an upload race condition in the registry code. 2014-06-11 15:37:45 -04:00
Jake Moshenko
d1f4fbdacc Split out the redis hostname for user events and build logs as a string config. Modularize the user events and fix all callers. 2014-05-30 14:25:29 -04:00
Jake Moshenko
0ba4201020 Add a module which will create notifications for all users when the license is at its expiration period, and terminate the process when the license expires. 2014-05-29 11:24:10 -04:00
Jake Moshenko
22cc7a85d4 Add exp_month and exp_year to the fake card to fix the tests. 2014-05-28 14:06:37 -04:00
Jake Moshenko
33b43b75c0 Eliminate a lot of the if cases in create_user by separating them out. Add a limit to the number of users which can be created based on the license. Add support for creating and loading licenses. 2014-05-28 13:51:52 -04:00
Jake Moshenko
0b6552d6cc Fix the metrics so they are usable for scaling the workers down and up. Switch all datetimes which touch the database from now to utcnow. Fix the worker Dockerfile. 2014-05-23 14:16:26 -04:00
Jake Moshenko
f4c488f9b6 Fix the queue query for old jobs which won't run. 2014-05-22 13:50:06 -04:00
Jake Moshenko
f6726bd0a4 Merge branch 'ldapper'
Conflicts:
	Dockerfile
	app.py
	data/database.py
	endpoints/index.py
	test/data/test.db
2014-05-22 12:13:41 -04:00
Jake Moshenko
d14798de1d Add a queue capacity reporter plugin to the queue. Move the queue definitions to app. Add a cloudwatch reporter to the dockerfile build queue. 2014-05-21 19:50:37 -04:00
Jake Moshenko
e1a5a3e543 Temporarily remove the db pool until we can figure out why they are running out of connections. 2014-05-19 17:14:23 -04:00
Jake Moshenko
8b5c781f84 Change the health check to ping the db and the redis build logs. 2014-05-13 18:53:42 -04:00
Jake Moshenko
11c6c5fa52 Merge remote-tracking branch 'origin/master' into ldapper
Conflicts:
	app.py
2014-05-13 16:55:02 -04:00
Jake Moshenko
628d09afe0 Remove the passwd attr ldap config. 2014-05-13 15:52:20 -04:00
Jake Moshenko
2da8b4737e Fix the registry to work with unicode usernames in LDAP. 2014-05-13 15:22:31 -04:00
Jake Moshenko
f049f738da Run the db migrations on container start unless we're running against Sqlite. 2014-05-13 15:20:17 -04:00
Jake Moshenko
553ef36e9b Fix a remaining direct usage of transaction factory in the data model. 2014-05-13 15:17:16 -04:00
Jake Moshenko
5fdccfe3e6 Add an alembic migration for the full initial database with the data. Switch LDAP to using bind and creating a federated login entry. Add LDAP support to the registry and index endpoints. Add a username transliteration and suggestion mechanism. Switch the database and model to require a manual initialization call. 2014-05-13 12:17:26 -04:00
Jake Moshenko
bcb993a914 Set up the build logs to use our fake build logs on test and local. 2014-05-09 18:45:11 -04:00
Jake Moshenko
027ada1f5c First stab at LDAP integration. 2014-05-09 17:39:43 -04:00
Jake Moshenko
feb7ad8dd1 Use the pooled mysql database. 2014-05-07 12:37:45 -04:00
Jake Moshenko
8a3af93b8c Improve the builder response to being terminated or dying. 2014-05-06 18:46:19 -04:00
Jake Moshenko
ef9fe871fc Move the upload flag to the database, and use the database stored image size rather than going to s3. 2014-05-02 16:59:46 -04:00
jakedt
44e514f49f Fix the test stripe to suppor trial properties. 2014-04-25 14:29:08 -04:00
jakedt
893e5136a0 Make the local userfiles 404 if the file is not there. Remove some extraneous logging from the trigger. 2014-04-16 22:43:57 -04:00
jakedt
be728ceccb Fix the implementation of local userfiles and switch master_branch to default_branch to match the github api. 2014-04-16 22:35:47 -04:00
jakedt
0827e0fbac Merge remote-tracking branch 'origin/master' into ncc1701
Conflicts:
	endpoints/web.py
	static/directives/signup-form.html
	static/js/app.js
	static/js/controllers.js
	static/partials/landing.html
	static/partials/view-repo.html
	test/data/test.db
2014-04-14 19:37:22 -04:00
jakedt
4b8217d4ad Add config to allow for setting the queue names at runtime. Fix a bug in the data model. 2014-04-11 19:23:57 -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
14fba3ae7c Rename SERVER_NAME to SERVER_HOSTNAME to fix the subdomain routing problems. 2014-04-11 11:17:45 -04:00
jakedt
8fac0474b5 Get staging to run under docker on an EC2 host. 2014-04-10 18:30:09 -04:00
jakedt
73f23f155c Merge branch 'ncc1701' of ssh://bitbucket.org/yackob03/quay into ncc1701 2014-04-10 15:20:26 -04:00
jakedt
d39f3cc5d4 Fix the tests and implement a fake stripe. 2014-04-10 15:20:16 -04:00
Joseph Schorr
bdf2b02c1a Merge branch 'ncc1701' of https://bitbucket.org/yackob03/quay into ncc1701 2014-04-10 00:27:51 -04:00
Joseph Schorr
0e320c964f - Add support for super users
- Add a super user API
- Add a super user interface
2014-04-10 00:26:55 -04:00
jakedt
4f3fa34206 Remove test field from the database definition. 2014-04-09 19:13:46 -04:00
jakedt
fc7756a3c2 Add alembic plumbing for database schema migrations. 2014-04-09 19:11:33 -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
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
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
ca1970a2f4 Use the real registry endpoint in the login command. 2014-04-01 19:00:11 -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
jakedt
126363dce9 Use our patched version of docker-py with build credentials patched in. Fix the hostname in the build credentials block to be variable. 2014-04-01 11:38:17 -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
jakedt
d67a1cddc2 Merge remote-tracking branch 'origin/master' into pullinprivate
Conflicts:
	workers/dockerfilebuild.py
2014-03-31 18:10:34 -04:00
jakedt
00ac3fb639 Merge branch 'master' of ssh://bitbucket.org/yackob03/quay 2014-03-28 17:54:07 -04:00
jakedt
fd941ed3a4 Strip tzinfo data from datetimes to make them compatible with peewee on sqlite. 2014-03-28 17:52:47 -04:00
Joseph Schorr
795de4235d Change "cannot connect to redid" to be a raised exception 2014-03-28 14:20:06 -04:00
Joseph Schorr
2006917e03 Add support for pull credentials on builds and build triggers 2014-03-27 18:33:13 -04:00
jakedt
41cfadac23 Protect the search and repository list endpoints appropriately. Add more differentiating data to some need types. Remove the notification about password change from the user admin page. Select the dependent models for the visible repo list. 2014-03-25 17:26:45 -04:00
jakedt
afb3a67b7b Switch the data to a textfield for authorization codes. 2014-03-25 16:06:34 -04:00
jakedt
5f98bf8dab Merge remote-tracking branch 'origin/master' into swaggerlikeus
Conflicts:
	endpoints/api.py
2014-03-25 15:50:03 -04:00
jakedt
669ec9c382 Change the token expiration time to 10 years. 2014-03-25 15:38:16 -04:00
jakedt
0097daebc2 Formatting changes. 2014-03-25 14:32:02 -04:00
Joseph Schorr
16d3ddd8cc Nicely handle the case where we cannot connect to Redis 2014-03-25 13:29:06 -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
e92cf37583 Add cancel button to the oauth authorization page, add the org icon to said page, and fix some other minor bugs 2014-03-24 18:30:22 -04:00
Joseph Schorr
f7c27f250b Add full application management API, UI and test cases 2014-03-20 15:46:13 -04:00
jakedt
3b7b12085d User scope objects everywhere. Switch scope objects to namedtuples. Pass the user when validating whether the user has authorized such scopes in the past. Make sure we calculate the scope string using all user scopes form all previously granted tokens. 2014-03-19 18:09:09 -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
Joseph Schorr
b0dcb5d7e3 Merge branch 'swaggerlikeus' of https://bitbucket.org/yackob03/quay into swaggerlikeus 2014-03-18 16:46:28 -04:00
Joseph Schorr
9ae4506a0d Add OAuth usage information the API logs, have it be displayed in the logs UI and start on the code to display application information when clicked. Note that this does not (yet) do anything with the information returned as we need to wait for the mainline merge of Angular 1.2.9 (which is in master) before I can continue on the display 2014-03-18 16:45:18 -04:00
jakedt
6f39e158d6 Eliminate all of the exceptions when running the tests. 2014-03-18 15:58:37 -04:00
Joseph Schorr
d469b41899 Add an oauth authorization page 2014-03-14 18:57:28 -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
jakedt
e74eb3ee87 Add scope ordinality and translations. Process oauth tokens and limit scopes accordingly. 2014-03-12 16:31:37 -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
jakedt
bb413126ec Fix list_trigger_builds. 2014-03-06 15:04:59 -05:00
jakedt
fdccba9d8e Reverse the order of the builds from the API. 2014-03-05 16:17:01 -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
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
b094480164 Add code that will allow build triggers to be deactivated or deleted from their services. 2014-02-24 16:36:49 -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
f339160ab9 Fix for mapping translations for existing images. 2014-02-21 08:00:47 -05:00
jakedt
f8eb0c983f Short circuit the ancestry computation for empty ancestry strings. 2014-02-20 22:35:54 -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
57dc1e045a Try to fix the bad query that makes mysql a sad panda. 2014-02-18 20:41:00 -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
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
jakedt
46de02a9ec Merge remote-tracking branch 'origin/master' into allyourbaseimage 2014-02-17 15:18:01 -05:00
jakedt
50d130f199 Fix another image storage test. Reverse a test to make the conditional smaller. 2014-02-17 14:58:45 -05:00
jakedt
7428d2aa50 Fix the garbage collect method to remove unused old images. 2014-02-17 14:38:35 -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
55d846061e Add ability to re-run a dockerfile build 2014-02-14 18:37:06 -05:00
jakedt
5742e6ea4e First set of changes toward shared base images. 2014-02-14 16:06:30 -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
8f6cdabde3 Merge branch 'bobthe'
Conflicts:
	test/data/test.db
2014-02-13 12:47:59 -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
yackob03
e1a4efe35c Change the build queue identifier to disambiguate between old and new build jobs. 2014-02-12 12:51:30 -05:00
yackob03
7f89a5b7f0 Add the start time to the repository build object and APIs. 2014-02-11 12:25:38 -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
98e57b9d2b Merge branch 'master' into tutorial
Conflicts:
	endpoints/index.py
	static/css/quay.css
	static/js/app.js
	static/js/controllers.js
	test/data/test.db
2014-02-06 21:23:27 -05:00
Joseph Schorr
fa1bf94af1 Get the basic tutorial working completely, including reacting to server-side events 2014-02-06 20:58:26 -05:00
yackob03
b9a5e355eb Improve the error message for when a new org name doesn't pass the regex. 2014-02-06 19:59:10 -05:00
yackob03
c8f0780aaf Fix a subtle bug with create_or_update_tag. 2014-02-06 14:49:53 -05:00
yackob03
2a89c2bb35 Refactor the garbage collection code a tiny bit. 2014-02-06 14:22:13 -05:00
yackob03
ef68982728 Garbage collect repositories on push and on tag deletion. 2014-02-06 14:13:35 -05:00
yackob03
5270066d6d Switch to the redis backed build logs and status. 2014-02-03 19:08:37 -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
ea6ec52689 Fix OR predicate for mysql on prototype permissions. 2014-01-22 12:13:51 -05:00
yackob03
489c900cfd Fix the problem where a user's admin priviledges can be revoked with defaults. 2014-01-21 19:23:26 -05:00
yackob03
7ceb249858 Add is_org_member to the prototype_view. Fix some line length problems. Fix a bug with using uuid objects as strings. 2014-01-21 17:32:49 -05:00
yackob03
58412ff6b3 Fix some problems with the permission prototype application on repository create. 2014-01-21 17:18:12 -05:00
yackob03
4962494df5 Merge branch 'umask' of ssh://bitbucket.org/yackob03/quay into umask 2014-01-21 14:22:50 -05:00
yackob03
249c467437 Refactor the code for applying prototypes a bit. 2014-01-21 14:20:42 -05:00
Joseph Schorr
e8d51b651f Merge branch 'umask' of https://bitbucket.org/yackob03/quay into umask 2014-01-21 14:18:29 -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
661179eaca Forgot to use a different user specific query. 2014-01-20 19:07:06 -05:00
yackob03
330051f7d9 First stab at applying prototypes. 2014-01-20 19:05:26 -05:00
yackob03
3f67ff77a4 Add the permission proto table to the database. 2014-01-20 17:39:29 -05:00
yackob03
b1b315d86c Merge branch 'master' into umask 2014-01-20 17:35:05 -05:00
yackob03
f612f5c290 Add a permissiondefault data type. 2014-01-17 17:28:21 -05:00
Joseph Schorr
f0add0e6cf Fix return values on confirm code 2014-01-17 17:23:52 -05:00
Joseph Schorr
c738113ca4 Handle duplicate emails on confirmation and make the confirmation error page nicer 2014-01-17 17:20:51 -05:00
Joseph Schorr
bd5ebe070b Remove unique-ness constraint 2014-01-17 17:09:31 -05:00
Joseph Schorr
a363ada41c Add ability to view and change an account’s email address 2014-01-17 17:04:05 -05:00
Joseph Schorr
e5f6a68248 Allow for email address-based login 2014-01-16 16:14:38 -05:00
yackob03
f311885e2a Underpinnings of the ability to connect a GitHub account to an existing Quay account. 2014-01-14 15:23:44 -05:00
yackob03
97d179cafb Merge branch 'master' of ssh://bitbucket.org/yackob03/quay 2014-01-13 16:33:04 -05:00
yackob03
e23c750bfb Harvest commands from the Docker json information and add to the database. 2014-01-13 16:32:51 -05:00
Joseph Schorr
8a492a9d56 Fix MySQL issue and enable sorting by description 2014-01-13 15:27:05 -05:00
Joseph Schorr
58b3ce2647 Add page support to the public repo list 2014-01-13 14:49:05 -05:00
yackob03
223d2ebaf1 Prevent organizations from attempting an account recovery. 2014-01-10 13:30:17 -05:00
yackob03
518cd1be85 Actually delete the image data when deleting the tag. 2014-01-09 17:13:26 -05:00
yackob03
4234ceabe6 Merge remote-tracking branch 'origin/spartan'
Conflicts:
	test/data/test.db
2014-01-08 17:04:40 -05:00
Joseph Schorr
bd2fe5cf99 Change to a list comprehesion 2014-01-07 15:48:44 -05:00
Joseph Schorr
971dd7dd3a Get tag deletion working 2014-01-07 15:21:24 -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
0a63690e25 Add code for saving and displaying the size of images 2014-01-03 16:32:00 -05:00
yackob03
e02c98022d Specify the aggregate function for MySQLs GROUP BY. 2013-12-27 17:31:20 -05:00
yackob03
d93a8b6033 Use group_by to eliminate duplicates in the entity search. 2013-12-27 17:06:27 -05:00
yackob03
e23bee99ec Fix a bug where users in a different org would not show up in the entity search. 2013-12-27 16:56:31 -05:00
yackob03
5633c1fc79 Merge the plans and mark many as deprecated. Fix a bunch of pylint errors. 2013-12-19 17:06:04 -05:00
yackob03
dec74fc608 When an email code has already been used, just redirect to signin. 2013-12-18 19:47:42 -05:00
yackob03
d527746cfe Fix the list of public repos to respect the limit set by the API request. 2013-12-18 19:16:58 -05:00
Joseph Schorr
6cc0482bfb Make sure to properly load the entries for the last day 2013-12-09 21:13:21 -05:00
Joseph Schorr
a3b834cd66 Add ability to pick the dates of the logs viewed 2013-12-09 17:28:23 -05:00
Joseph Schorr
a0f9e1646a Add a logs view for specific members of an organization 2013-12-06 19:25:27 -05:00
Joseph Schorr
59046b2e79 Add ability to download logs 2013-12-06 15:59:59 -05:00
yackob03
bf85013ef6 Try to use a 301 redirect to download directly from s3. Allow the s3 and userfiles to run without internet access. 2013-12-03 16:39:07 -08: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
Joseph Schorr
c7ee3aaea1 Fix date time parameter on log_action to properly use the current time 2013-12-03 16:45:06 -05:00
Joseph Schorr
91c2ab074a Add test log entries to initdb 2013-12-02 19:07:14 -05:00
yackob03
e52e699743 Don't delete log entries that are associated with a repository when the repository is deleted. 2013-12-02 18:16:22 -05:00
yackob03
dc3dc525e1 Style fixes. 2013-12-02 18:15:59 -05:00
Joseph Schorr
782405fe65 - Add log view under repos
- Make the logs a bit nicer by adding context-sensitive icons
- Fix some of the log descriptions
2013-12-02 14:55:04 -05:00
Joseph Schorr
b77dabd586 Move log descriptions into the client side 2013-11-29 00:04:50 -05:00
Joseph Schorr
6c1d2afc0f CL fixes 2013-11-27 16:56:07 -05:00
Joseph Schorr
cca5daf097 Add support for full logging of all actions in Quay, and the ability to view and filter these logs in the org’s admin view 2013-11-27 02:29:31 -05:00
yackob03
e69591c7d6 Add the ability to login with a robot, use the wrench icon for robots all over the place. 2013-11-20 19:43:19 -05:00
yackob03
b407c1d9fb Add robots to the entity search. 2013-11-20 18:23:59 -05:00
yackob03
026ed7ffb4 Start fleshing out support for robots. 2013-11-20 16:13:03 -05:00
yackob03
e787d8b2d8 Make the worker post json. Add a retry timeout after an incompletel queue item is processed. Submit webhook jobs to the queue on a successful push. 2013-11-16 15:05:26 -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
7a071fa731 Query for and take a queue item in a transaction. 2013-11-15 16:44:33 -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
0f3d942b5e Re-add the missing method for getting repository builds. Add more logging to try to see why some builds are not getting removed from the queue. 2013-11-13 17:29:26 -05:00
yackob03
d7592fd133 Update the diffs worker to not fail if the repository is removed before diffs are computed. 2013-11-13 14:41:20 -05:00
yackob03
d63e75ddd2 Fix the mega query. 2013-11-08 14:04:03 -05:00
yackob03
5fe1a6806e Fix the team results for the entities query. 2013-11-07 23:35:20 -05:00
yackob03
d524559bce Fix the repo search to include repos that you get through a team and repos for which you have admin on the org. 2013-11-07 22:44:18 -05:00
yackob03
294d4849a2 Prevent login on accounts that have been converted to organizations. Fix a bug in the tags api. 2013-11-07 18:08:38 -05:00
yackob03
71f7320532 Merge branch 'orgs' of ssh://bitbucket.org/yackob03/quay into orgs 2013-11-07 17:11:10 -05:00
yackob03
603ad53f6a Fix some bugs in the tags registry api. 2013-11-07 17:09:15 -05:00
Joseph Schorr
3f2d51651e Start on organization conversion. Note that this does not yet move over the user's plan to an org plan 2013-11-07 16:33:56 -05:00
yackob03
2663a534d7 Merge branch 'orgs' of ssh://bitbucket.org/yackob03/quay into orgs 2013-11-07 12:55:35 -05:00
yackob03
ff7cd2f0a5 Subtle tweaks to the api and a fix for one bug where teams could be added to repository permissions through the API even if they were not part of the org. 2013-11-07 12:54:21 -05:00
Joseph Schorr
0c4dec6de4 - Fix namespace drop down to save the namespace last selected (and validate)
- Add a "can_create_repo" entry to the organization and have orgs grayed out in the new repo view if the user cannot create a repo
- Fix the multiple-orgs bug in the model
- Have the "create new repository" button disappear on landing if the org is selected and the user does not have create permissions for that org
2013-11-07 00:49:13 -05:00
Joseph Schorr
56f777448a Add the members tab to the org admin 2013-11-06 19:06:59 -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
e3a3ce0f80 Prevent the user from revoking their own admin privileges. 2013-11-05 18:37:28 -05:00
yackob03
a1476b32ea Fix the problem where users in normal repos are marked as outside of the organization. 2013-11-05 17:10:14 -05:00
yackob03
427ffea6b7 Fill in the remove team methods. 2013-11-05 15:50:56 -05:00
yackob03
296695cb87 Fix the call that determines if an organization has enough private repositories. 2013-11-05 14:55:05 -05:00
yackob03
b11ab44285 Add the business plans in. 2013-11-05 14:40:45 -05:00
Joseph Schorr
1cd4fa8d9b Add team permissions support 2013-11-04 22:58:21 -05:00
yackob03
3a11ea4229 Made a stupid assumption about when users belonged to an organization, now paying for my terrible ways. 2013-11-04 18:52:38 -05:00
yackob03
109f09f0d0 Merge branch 'orgs' of ssh://bitbucket.org/yackob03/quay into orgs 2013-11-04 16:57:26 -05:00
yackob03
ac71822352 Add a description field to teams. 2013-11-04 16:57:20 -05:00
Joseph Schorr
b56bb92801 Work in progress: Continue on org view 2013-11-04 16:51:25 -05:00
Joseph Schorr
ba7360f2a9 Work in progress: Start on org view 2013-11-04 16:39:29 -05:00
yackob03
ad4e227aff Merge branch 'orgs' of ssh://bitbucket.org/yackob03/quay into orgs
Conflicts:
	data/model.py
	endpoints/api.py
	test/data/test.db
2013-11-04 15:47:27 -05:00
yackob03
dd77ebd64f Next batch of backend permissions for orgs. 2013-11-04 15:42:08 -05:00
Joseph Schorr
ecbd1f1ef3 Work in progress: Add the team management page 2013-11-04 14:56:54 -05:00
Joseph Schorr
100ec563fa - Add an entity-search directive for adding a nice search box for users or teams
- Add support for team-based permissions to the repos
2013-11-01 21:48:10 -04:00
yackob03
1aaefe6053 Merge branch 'orgs' of ssh://bitbucket.org/yackob03/quay into orgs
Conflicts:
	data/model.py
2013-11-01 19:34:58 -04:00
yackob03
4c0f987af3 Flesh out some of the organization methods and fix the models. 2013-11-01 19:34:17 -04:00
Joseph Schorr
9fa77aaa48 Add proper messaging if an organization has gone over the repo limit. This change also moves plan information into the server 2013-11-01 19:13:58 -04:00
yackob03
ecc4ad6e0f Merge branch 'orgs' of ssh://bitbucket.org/yackob03/quay into orgs 2013-11-01 14:44:22 -04:00
Joseph Schorr
d7148b1711 Start on controllers and the API for organizations. Also adds fake model methods 2013-10-31 18:17:26 -04:00
yackob03
b92fe17e3c Remove some unused model methods. 2013-10-31 17:36:53 -04:00
yackob03
621f89f826 Prepare the underlying data model for organizations. 2013-10-31 16:46:04 -04:00
yackob03
b96f678df8 User the secure s3 endpoint and store our files encrypted. 2013-10-31 11:32:08 -04:00
yackob03
6f105326aa Return unfinished items to the queue when they can be retried. 2013-10-29 15:42:19 -04:00
yackob03
d7f51fb764 Bug fixes and associated changes involved with spinning up build nodes and sending jobs to them. 2013-10-27 19:06:20 -04:00
yackob03
0ff19d5401 Filter the inactive builds when computing the is_building flag. 2013-10-27 16:00:44 -04:00
yackob03
b1a5b9c343 Fix CORS s3 upload. 2013-10-26 18:37:53 -04:00
Joseph Schorr
28f6ff1605 Get file dropping working and wire it up to call the build repo endpoint 2013-10-26 17:20:59 -04:00
yackob03
1ff67f688d Fix the content-type for S3 uploads of user data. 2013-10-25 18:18:06 -04:00
yackob03
78d2d6cad0 Add a test endpoint that allows us to manually create builds. Add access tokens to the build data. 2013-10-25 18:17:43 -04:00
yackob03
ffc33e454c Fixes and refinements to the dockerfile build system. 2013-10-25 15:13:11 -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
f80c9255e8 Fix a bug in the queue query. 2013-10-20 03:06:11 -04:00
Joseph Schorr
0afea3a779 Add the image view page with the changes view, filterable by typing into a field. Still needs pagination or some other mechanism for getting an overview 2013-10-18 22:28:46 -04:00
yackob03
2fcd8df42b Get the worker and the registry playing nice together. 2013-10-18 17:27:09 -04:00
yackob03
4514f5a969 Fix some typos and bugs in the worker. 2013-10-18 15:28:16 -04:00
yackob03
decb324411 Fix a typo on the base model for the queue. 2013-10-18 14:30:49 -04:00
yackob03
93b856bdb3 First few changes for the image diffs feature. 2013-10-17 18:25:19 -04:00
yackob03
283f9b81ae First stab at token auth. The UI could use a little bit of polishing. 2013-10-16 14:24:10 -04:00
yackob03
959016a6eb Remove unnecessary calls to the database for user and permission metadata. 2013-10-15 14:48:49 -04:00
yackob03
4c15072c5a Move signin to use AJAX. Render all flask templates with the common header. Move the header to a partial. Add account recovery. 2013-10-14 17:50:07 -04:00
yackob03
16ee147eae Add a form for changing the password and prompt the user to do so when there is no password on the account. 2013-10-10 13:44:34 -04:00
yackob03
87ff939ad2 Handle some of the error cases with github login. 2013-10-10 12:55:03 -04:00
Joseph Schorr
b924fa5336 Merge branch 'master' of https://bitbucket.org/yackob03/quay 2013-10-10 00:40:30 -04:00
Joseph Schorr
9f094af1b2 Begin work on an image history tree view 2013-10-10 00:40:18 -04:00
yackob03
3d89227752 First iteration of sign-in with gihub. 2013-10-09 23:00:34 -04:00
yackob03
986642218b Fix an error with email confirmation links. NOTE: you CAN NOT use 'is True' in place of '== True' with peewee. 2013-10-08 17:07:36 -04:00
yackob03
6a038bb24e PEP8 fixes. 2013-10-08 11:29:42 -04:00
yackob03
9cbbc2b8ed Fix image history with no parent. 2013-10-02 17:29:45 -04:00
yackob03
ac80f1a123 Merge branch 'master' of ssh://bitbucket.org/yackob03/quay 2013-10-02 13:30:52 -04:00
Joseph Schorr
dc3ec72432 Fix handling of repositories list when not signed in 2013-10-02 13:29:18 -04:00
yackob03
39018e72f1 Open and close the db connection at the beginning and end of each request. 2013-10-02 12:43:45 -04:00
yackob03
c044893ff9 Add some feedback about the number of private repositories used. 2013-10-02 01:40:11 -04:00
yackob03
20765b7e37 Merge branch 'master' of ssh://bitbucket.org/yackob03/quay
Conflicts:
	static/js/app.js
2013-10-02 00:48:48 -04:00
yackob03
7bd18c1bab Checkpointing stripe work. 2013-10-02 00:48:03 -04:00
Joseph Schorr
927b280f1a Redo the landing page to:
- Show the user's top repos if they have any
  - Show a link to the guide and the repos list if they do not

- Add a getting starting guide
- Redo the repos list to show the user's repos and the top 10 public repos separately
2013-10-02 00:28:24 -04:00
Joseph Schorr
d09c402675 Add ability to search for repos by their full path 2013-10-01 17:02:49 -04:00
yackob03
96896b9067 Rename Image.image_id to Image.docker_image_id to reduce confusion. 2013-10-01 14:14:39 -04:00
yackob03
4b9c6d9aae Add api function to fully delete a repository. 2013-10-01 12:13:25 -04:00
yackob03
891f992bf2 Allow for anonymous access tokens for public repositories. 2013-10-01 01:18:05 -04:00
yackob03
25c4054c19 Long description fields should have been text rather than blob. 2013-09-30 23:22:52 -04:00
yackob03
abd4e8a7ab Fix search by removing description as a searched field. 2013-09-30 23:18:05 -04:00
yackob03
84adf680b9 Switch the registry and index to use real s3 and rds. 2013-09-30 19:10:27 -04:00
yackob03
ea6df2b725 Add image ancestry and update the test db accordingly. 2013-09-30 15:30:00 -04:00
Joseph Schorr
4382ebfd20 Add ability to change the visibility of a repo, and show whether the repo is private in the repo-view screen 2013-09-28 17:11:10 -04:00
Joseph Schorr
ce7620673b Merge branch 'master' of https://bitbucket.org/yackob03/quay 2013-09-28 01:23:07 -04:00
Joseph Schorr
7d44326618 Add ability to add new users to the permissions list and remove existing users 2013-09-28 01:23:00 -04:00
yackob03
b718dbc6e3 Full add public repository support. 2013-09-28 00:05:32 -04:00
yackob03
d680a9d173 Create indices that we will probably need. 2013-09-27 23:33:59 -04:00
yackob03
540dfd5343 Switch the search to use SQL query. 2013-09-27 23:25:57 -04:00
yackob03
a0adffdc8e PEP8 fixes. 2013-09-27 20:03:07 -04:00
yackob03
32581c0621 Handle the confirmation codes to validate user emails. 2013-09-27 19:55:04 -04:00
yackob03
5508402bb7 Merge branch 'master' of ssh://bitbucket.org/yackob03/quay 2013-09-27 19:29:05 -04:00
yackob03
99341f7d53 Send a confirmation email when an account is created. Links don't do anything yet. 2013-09-27 19:29:01 -04:00
Joseph Schorr
038e9afc97 Merge branch 'master' of https://bitbucket.org/yackob03/quay 2013-09-27 19:24:30 -04:00
Joseph Schorr
edaad6eea2 Add repo autocomplete for searching. 2013-09-27 19:21:54 -04:00
yackob03
87dc3b6344 Add checks for username and passwords, move checks to model. 2013-09-27 18:38:41 -04:00
yackob03
1574be3c07 Make sure usernames and emails are unique and message is sent to user. 2013-09-27 18:16:26 -04:00
Joseph Schorr
bf926aceee Get the tabs working and the UI for the image history. Note that the model changes for the image history are WRONG and need to be fixed 2013-09-27 17:01:45 -04:00
yackob03
53f2a31547 Fix some bugs with the permissions API. Prevent the user from removing themelves as admin. 2013-09-27 15:53:39 -04:00
yackob03
1883014ad9 Flesh out the API for managing permissions. 2013-09-27 14:56:14 -04:00
yackob03
6bcb5cfcaa Flesh out some permissions APIs. 2013-09-27 13:24:07 -04:00
yackob03
fa1fc7f9a2 Fix the tag image fetch model method. 2013-09-26 17:58:41 -04:00
yackob03
9278871381 Load flask principal permissions even for web and api endpoints. 2013-09-26 16:32:09 -04:00
yackob03
23cbcb2979 Make images belong to one repository only. Add a description field to the repository. Fix a bug with access tokens. Fix an embarrasing bug with multiple select criteria in peewee. Update the test db. 2013-09-26 15:58:11 -04:00
yackob03
44255421df Namespace the storage in the registry to prevent leaking images if one acquires the image id. 2013-09-25 20:00:22 -04:00
yackob03
5151ea4412 Update the model and test db to fix tag support. 2013-09-25 17:46:42 -04:00
yackob03
08446ef59e Fix some stuff with logins and permissions, add tags to the mode. 2013-09-25 16:46:28 -04:00
yackob03
ee5ea51532 Refactor the code into modules, it was getting unweildy. 2013-09-25 12:45:12 -04:00