We have a requirement where we created a schedule to run every 12 hours. And the job of schedule should start even if a job is still in progress. Currently, until the job is complete, the schedule is not launching a new job. How can this be achieved?
Answer by gregm · Apr 18, 2018 at 12:49 PM
That is the how the schedule function is design, that is it waits for any running jobs kicked off by the schedule to complete before starting a new job. I will suggest an enhancement to enable the use case you describe. In the meantime, you can schedule a wrapper procedure that kicks off the actual procedure. The DSL below illustrates how to do that:
project "Test",{ // Procedure takes 2 minutes to run, but want to run it every minute without blocking procedure "Procedure to Schedule",{ step "sleep", command: "sleep 120" } procedure "Wrapper Procedure",{ step "run Procedure to Schedule", command: "ectool runProcedure --projectName \"$projectName\" --procedureName \"Procedure to Schedule\" " } schedule "Run every minute", interval: "1", intervalUnits: "minutes", procedureName: "Wrapper Procedure" }
Source monitoring in schedules that run at a scheduled time 2 Answers
Can I schedule a job to run biweekly on a particular day say tuesday at a particular time 1 Answer
How can I require manual approval for deployment to an Environment with ElectricFlow? 1 Answer
How do you prevent ElectricSentry jobs from being deleted? 2 Answers
How to list all the schedulers 2 Answers
Electric Cloud powers Continuous Delivery, helping organizations developing deliver better software faster by automating and accelerating build, test, and deployment processes at scale. Industry leaders like Qualcomm, SpaceX, Cisco, GE, Gap, and E*TRADE use Electric Cloud solutions to boost DevOps productivity and Agile throughput.