Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Chris Van Oort 110 posts 370 karma points
    Mar 03, 2017 @ 22:39
    Chris Van Oort
    0

    Issue between staging and live workflows?

    This is a bit of an interesting problem:

    I have a dev, staging, and live site. I test code and plugin changes on dev, but I test content and content changes on staging. When things look good, I use Courier to migrate the PerplexMail nodes from Staging to Live.

    The problem here occurs because the node ID's on the live site are not equivalent to the node ID's on the staging site. So when I pull down / push up Umbraco forms JSON and workflows JSON, this breaks all of my forms on the live site.

    So in order to fix this, I have to open the Umbraco form back up on the live site, scroll down, open the workflow, and re-choose the Perplex Mail email node.

    Is there any way to fix this? (I'm open to all options)

    Thanks, Chris

  • Chris Van Oort 110 posts 370 karma points
    Mar 06, 2017 @ 18:05
    Chris Van Oort
    0

    A potential (short term) work around is to create a 2nd workflow item so each Umbraco form has something like:

    • Form submitted message
    • [Staging] Send PerplexMail
    • [Live] PerplexMail

    Then I'd have to go 'Replace from Server' in Visual Studio, then go edit the [Live] workflow to point at the Node ID from the live site instead. Unfortunately, this has an unintended consequence of causing an error in the Umbraco Trace Log:

         2017-03-06 11:57:37,515 [P8328/D2/T18] ERROR Umbraco.Forms.Core.Services.WorkflowService - Form workflow '[Live] Send PerplexMail' failed on 'Submitted' of Record with Unique ID 'b14cfbee-ea77-418c-93cf-4ee2d20419aa' from the Form named 'Inquiry Form' with Unique ID '01d5a182-f5d1-4981-91bd-80371a7906ea'
    System.Exception: The specified Umbraco Node with id '2435' does not exist.
       at PerplexMail.Email.CreateUmbracoEmail(Int32 umbracoEmailNodeId, List`1 values, IEnumerable`1 attachments)
       at PerplexMail.UmbracoForms.EmailWorkflow.Execute(Record record, RecordEventArgs e)
       at Umbraco.Forms.Core.WorkflowType.ExecuteWorkflow(Record record, RecordEventArgs e, Workflow workflow)
       at Umbraco.Forms.Core.Services.WorkflowService.ExecuteWorkflows(List`1 workflows, RecordEventArgs e)
    

    It appears the proper method may be to utilize the new Umbraco Courier Contrib library to resolve ID's between staging and live. https://umbraco.com/blog/courier-version-3-a-lot-faster-and-more-reliable/ https://www.nuget.org/packages/Umbraco.Courier.Contrib

    Thoughts or ideas?

  • Chris Van Oort 110 posts 370 karma points
    Mar 06, 2017 @ 22:37
    Chris Van Oort
    0

    Update: From what I can tell this is actually fixed by using Umbraco Courier FormsProvider and FormsTreeProvider.

    I created some new forms and used Courier to push them from Staging to Live with nearly no issue.

    However you will want / need to get and patch these for it to work (not an issue with PerplexMail): https://github.com/umbraco/Umbraco.Courier.FormsProvider/issues/3

Please Sign in or register to post replies

Write your reply to:

Draft