9
9
10
10
from onefuzztypes .enums import OS , PoolState , TaskState
11
11
from onefuzztypes .models import WorkSet , WorkUnit
12
+ from onefuzztypes .primitives import Container
12
13
from pydantic import BaseModel
13
14
14
15
from ..azure .containers import blob_exists , get_container_sas_url
@@ -102,7 +103,7 @@ def bucket_tasks(tasks: List[Task]) -> Dict[Tuple, List[Task]]:
102
103
class BucketConfig (BaseModel ):
103
104
count : int
104
105
reboot : bool
105
- setup_url : str
106
+ setup_container : Container
106
107
setup_script : Optional [str ]
107
108
pool : Pool
108
109
@@ -118,10 +119,6 @@ def build_work_unit(task: Task) -> Optional[Tuple[BucketConfig, WorkUnit]]:
118
119
task_config = build_task_config (task .job_id , task .task_id , task .config )
119
120
120
121
setup_container = get_setup_container (task .config )
121
- setup_url = get_container_sas_url (
122
- setup_container , StorageType .corpus , read = True , list = True
123
- )
124
-
125
122
setup_script = None
126
123
127
124
if task .os == OS .windows and blob_exists (
@@ -165,7 +162,7 @@ def build_work_unit(task: Task) -> Optional[Tuple[BucketConfig, WorkUnit]]:
165
162
count = count ,
166
163
reboot = reboot ,
167
164
setup_script = setup_script ,
168
- setup_url = setup_url ,
165
+ setup_container = setup_container ,
169
166
)
170
167
171
168
return bucket_config , work_unit
@@ -201,10 +198,14 @@ def build_work_set(tasks: List[Task]) -> Optional[Tuple[BucketConfig, WorkSet]]:
201
198
work_units .append (work_unit )
202
199
203
200
if bucket_config :
201
+ setup_url = get_container_sas_url (
202
+ bucket_config .setup_container , StorageType .corpus , read = True , list = True
203
+ )
204
+
204
205
work_set = WorkSet (
205
206
reboot = bucket_config .reboot ,
206
207
script = (bucket_config .setup_script is not None ),
207
- setup_url = bucket_config . setup_url ,
208
+ setup_url = setup_url ,
208
209
work_units = work_units ,
209
210
)
210
211
return (bucket_config , work_set )
0 commit comments