1
- # -*- coding: utf-8 -*-
2
-
3
1
"""
4
2
Custom management command to rebuild documentation for all projects.
5
3
11
9
from django .core .management .base import BaseCommand
12
10
13
11
from readthedocs .builds .constants import EXTERNAL , INTERNAL
14
- from readthedocs .builds .models import Build , Version
12
+ from readthedocs .builds .models import Version
15
13
from readthedocs .core .utils import trigger_build
16
- from readthedocs .projects import tasks
17
14
from readthedocs .projects .models import Project
18
15
19
-
20
16
log = logging .getLogger (__name__ )
21
17
22
18
@@ -64,61 +60,23 @@ def handle(self, *args, **options):
64
60
active = True ,
65
61
uploaded = False ,
66
62
):
67
-
68
- build = Build .objects .create (
69
- project = version .project ,
70
- version = version ,
71
- type = 'html' ,
72
- state = 'triggered' ,
73
- )
74
-
75
- # pylint: disable=no-value-for-parameter
76
- tasks .update_docs_task (
77
- version .pk ,
78
- build_pk = build .pk ,
79
- )
63
+ trigger_build (project = version .project , version = version )
80
64
elif version == INTERNAL :
81
65
log .info ('Updating all internal versions for %s' , slug )
82
66
for version in Version .internal .filter (
83
67
project__slug = slug ,
84
68
active = True ,
85
69
uploaded = False ,
86
70
):
87
-
88
- build = Build .objects .create (
89
- project = version .project ,
90
- version = version ,
91
- type = 'html' ,
92
- state = 'triggered' ,
93
- )
94
-
95
- # pylint: disable=no-value-for-parameter
96
- tasks .update_docs_task (
97
- version .project_id ,
98
- build_pk = build .pk ,
99
- version_pk = version .pk ,
100
- )
71
+ trigger_build (project = version .project , version = version )
101
72
elif version == EXTERNAL :
102
73
log .info ('Updating all external versions for %s' , slug )
103
74
for version in Version .external .filter (
104
75
project__slug = slug ,
105
76
active = True ,
106
77
uploaded = False ,
107
78
):
108
-
109
- build = Build .objects .create (
110
- project = version .project ,
111
- version = version ,
112
- type = 'html' ,
113
- state = 'triggered' ,
114
- )
115
-
116
- # pylint: disable=no-value-for-parameter
117
- tasks .update_docs_task (
118
- version .project_id ,
119
- build_pk = build .pk ,
120
- version_pk = version .pk ,
121
- )
79
+ trigger_build (project = version .project , version = version )
122
80
else :
123
81
p = Project .all_objects .get (slug = slug )
124
82
log .info ('Building %s' , p )
@@ -130,18 +88,12 @@ def handle(self, *args, **options):
130
88
active = True ,
131
89
uploaded = False ,
132
90
):
133
- # pylint: disable=no-value-for-parameter
134
- tasks .update_docs_task (
135
- version .pk ,
136
- force = force ,
137
- )
91
+ trigger_build (project = version .project , version = version )
92
+
138
93
else :
139
94
log .info ('Updating all docs' )
140
95
for project in Project .objects .all ():
141
96
# pylint: disable=no-value-for-parameter
142
97
default_version = project .get_default_version ()
143
98
version = project .versions .get (slug = default_version )
144
- tasks .update_docs_task (
145
- version .pk ,
146
- force = force ,
147
- )
99
+ trigger_build (project = version .project , version = version )
0 commit comments