Add support for deleting namespaces (users, organizations)

Fixes #102
Fixes #105
This commit is contained in:
Joseph Schorr 2016-08-09 17:58:33 -04:00
parent a74e94fb67
commit 73eb66eac5
23 changed files with 407 additions and 33 deletions

View file

@ -8,8 +8,8 @@ from datetime import timedelta, datetime
from flask import request, abort
from app import dockerfile_build_queue
from data import model
from data.database import Repository as RepositoryTable
from endpoints.api import (truthy_bool, format_date, nickname, log_action, validate_json_request,
require_repo_read, require_repo_write, require_repo_admin,
RepositoryParamResource, resource, query_param, parse_args, ApiResource,
@ -353,9 +353,14 @@ class Repository(RepositoryParamResource):
""" Delete a repository. """
model.repository.purge_repository(namespace, repository)
user = model.user.get_namespace_user(namespace)
if features.BILLING:
plan = get_namespace_plan(namespace)
check_repository_usage(user, plan)
# Remove any builds from the queue.
dockerfile_build_queue.delete_namespaced_items(namespace, repository)
log_action('delete_repo', namespace,
{'repo': repository, 'namespace': namespace})
return 'Deleted', 204