Status of recipe execution

Topics: General, Troubleshooting
Jun 28, 2012 at 9:16 PM

Bertrand and team

We have several recipes one after the other to propagate from one environment to another. We have several questions

1) First of all the recipe only be scheduled successfully, no status on when it is finished. Is there a way to know when it is completed?

2) Is there a way to set display messages or logs in the recipe to know what portions executed successfully. Currently we split recipes into several recipes executed one after the other. There we encountered failures because sometimes recipe 2 tried to execute while recipe 1 was not finished. Is there a way to avoid it.?

3) If no solution on 1) then is there a way to link recipe name scheduling with the guid file in recipe journal to know the recipe status programatically.

Thanks
Kinjal Shah

Developer
Jun 29, 2012 at 8:50 AM

Although I'm a bit confused about your problem, I think you should look at the recipe service classes. Your scenario looks a bit for me like you'd be better with some custom module you can use for scheduled and customized recipe execution.

Jul 2, 2012 at 2:22 PM

Bertrand and team,

I also have the same request/problem...

from \inetpub\wwwroot\<site name>\bin folder if I would lik to execute the series of commands like this -

Orchard.exe recipes execute Orchard.Setup <recipe name1>

Orchard.exe recipes execute Orchard.Setup <recipe name2>

...

Orchard.exe recipes execute Orchard.Setup <recipe nameN>

It seems that all those recipes would not execute sequentially - one after another, but rather asynchronously. Am I right?

That’s why I would like to capture the moment when the “recipe name1” would finish execution. I don’t believe the “orchard.exe execute recipes” shell command would give me a “status code” of success/failure of the “recipe name1” execution. Does it?

I was wondering if I would able to capture the end point and status of execution by parsing the journal instead (if the “status code” is not available?...

I do see the recipes journal at this location – \src\Orchard.Web\Media\Default\RecipeJournal\

But the journal entries there are a GUID-based, like this –

“ba7291fb4b0d4e60a626eaddd0c3f391” which has no correspondence to my “recipe name1.xml” I was trying to execute.

And the text inside doesn’t give much info about what recipe file was executed either –

<RecipeJournal>

<Status>Complete</Status>

<Message>Executing step Feature.</Message>

<Message>Executing step Metadata.</Message>

<Message>Executing step Settings.</Message>

<Message>Executing step Migration.</Message>

<Message>Executing step Command.</Message>

</RecipeJournal>

 

Is there any way I can achieve my goal – to know when the particular recipe file execution has finished? How? I would appreciate your answer/help.

Thanks

Serge