33use Closure ;
44use Rancherize \Blueprint \Blueprint ;
55use Rancherize \Blueprint \Cron \CronService \CronService ;
6+ use Rancherize \Blueprint \Cron \Schedule \Exceptions \NoScheduleConfiguredException ;
67use Rancherize \Blueprint \Cron \Schedule \ScheduleParser ;
78use Rancherize \Blueprint \Flags \HasFlagsTrait ;
89use Rancherize \Blueprint \Infrastructure \Dockerfile \Dockerfile ;
@@ -155,17 +156,7 @@ public function build( Configuration $configuration, string $environment, string
155156 $ service = $ this ->makeServerService ($ config , $ projectConfigurable );
156157 $ infrastructure ->addService ($ service );
157158
158- /**
159- * @var ScheduleParser $scheduleParser
160- */
161- $ scheduleParser = container ('schedule-parser ' );
162- $ schedule = $ scheduleParser ->parseSchedule ($ config );
163-
164- /**
165- * @var CronService $cronService
166- */
167- $ cronService = container ('cron-service ' );
168- $ cronService ->makeCron ($ service , $ schedule );
159+ $ this ->parseCronSchedule ( $ config , $ service );
169160
170161 return $ infrastructure ;
171162 }
@@ -295,4 +286,26 @@ private function addAll(array $configs, string $label, Closure $closure) {
295286 $ closure ($ name , $ value );
296287 }
297288 }
289+
290+ /**
291+ * @param $config
292+ * @param $service
293+ */
294+ protected function parseCronSchedule ( $ config , $ service ) {
295+ /**
296+ * @var ScheduleParser $scheduleParser
297+ */
298+ $ scheduleParser = container ( 'schedule-parser ' );
299+ try {
300+ $ schedule = $ scheduleParser ->parseSchedule ( $ config );
301+ } catch ( NoScheduleConfiguredException $ e ) {
302+ return ;
303+ }
304+
305+ /**
306+ * @var CronService $cronService
307+ */
308+ $ cronService = container ( 'cron-service ' );
309+ $ cronService ->makeCron ( $ service , $ schedule );
310+ }
298311}
0 commit comments