parent
857624c664
commit
7ef082940e
|
@ -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
|
||||
-------------------------------------------
|
||||
|
||||
|
|
|
@ -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):
|
||||
"""
|
||||
|
|
|
@ -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 %}
|
||||
|
|
|
@ -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'),
|
||||
|
|
Loading…
Reference in New Issue