Derped 857624c. Fixes #65.

rtd2
Eric Holscher 2012-02-10 22:11:45 -08:00
parent 857624c664
commit 7ef082940e
4 changed files with 36 additions and 1 deletions

View File

@ -16,6 +16,11 @@ When RTD builds your project, it sets the ``READTHEDOCS`` environment variable t
else:
html_theme = 'nature'
Deleting a stale or broken build environment
--------------------------------------------
RTD doesn't expose this in the UI, but it is possible to remove the build directory of your project. If you want to remove a build environment for your project, hit http://readthedocs.org/wipe/<project_slug>/<version_slug>/ with a POST. You must be logged in to do this.
Packages installed in the build environment
-------------------------------------------

View File

@ -16,7 +16,8 @@ from django.views.decorators.csrf import csrf_view_exempt
from django.views.static import serve
from projects.models import Project, ImportedFile, ProjectRelationship
from projects.tasks import update_docs
from projects.tasks import update_docs, remove_dir
from builds.models import Version
import json
import mimetypes
@ -42,6 +43,27 @@ def random_page(request, project=None):
return HttpResponseRedirect(ImportedFile.objects.filter(project__slug=project).order_by('?')[0].get_absolute_url())
return HttpResponseRedirect(ImportedFile.objects.order_by('?')[0].get_absolute_url())
@csrf_view_exempt
def wipe_version(request, project_slug, version_slug):
version = get_object_or_404(Version, project__slug=project_slug, slug=version_slug)
if request.user not in version.project.users.all():
raise Http404("You must own this project to wipe it.")
del_dir = version.project.checkout_path(version.slug)
if request.method == 'POST' and del_dir:
remove_dir.delay(del_dir)
return render_to_response('wipe_version.html', {
'del_dir': del_dir,
'deleted': True,
},
context_instance=RequestContext(request))
return render_to_response('wipe_version.html', {
'del_dir': del_dir,
},
context_instance=RequestContext(request))
@csrf_view_exempt
def github_build(request):
"""

View File

@ -8,6 +8,10 @@
{{ del_dir }} is now deleting.<br><br>
{% else %}
This is a page to delete a directory. Only POST to it if you wish to refresh a project on RTD's build servers.
<form method="post" action=".">
<input type="submit" value="Wipe version">
</form>
{% endif %}
{% endblock %}

View File

@ -63,6 +63,10 @@ urlpatterns = patterns('',
url(r'^build/(?P<pk>\d+)', 'core.views.generic_build', name='generic_build'),
url(r'^random/(?P<project>[\w-]+)', 'core.views.random_page', name='random_page'),
url(r'^random/$', 'core.views.random_page', name='random_page'),
url(r'^wipe/(?P<project_slug>[-\w]+)/(?P<version_slug>[-\w]+)/$',
'core.views.wipe_version',
name='wipe_version'
),
url(r'^profiles/create/', 'profiles.views.create_profile',
{'form_class': UserProfileForm},
name='profiles_profile_create'),