Usually SharePoint development process looks as follows. You create a new site which is based on one of the standard SharePoint templates (Team Site, Blog, Project Site, etc.) after that, you work hard and customize it very deep (add new lists, views, workflows, customize UI) and finally you will get complete business solution.
But there is another question: “How to deliver your solution to a client?”. One of the answers to this question is to use site templates. You can save customized site to WSP package and deploy the package to the customer’s environment.
The issue with deployment of template with custom workflow actions
Looks very interesting and useful, but in SharePoint’s world the Devil is in the detail. For example if you’re using custom workflow actions in your workflows you will get an error during deployment process:
Microsoft.Workflow.Client.ActivityNotFoundException: The activity named 'WorkflowXaml_988fe3c3_dc3e_47a9_8ff3_c912c82eb56d' from scope '/spo/216722f1-1dc0-4c6d-aafd-86b12ef60a14/1f87e1ae-da77-44d4-92d1-502507b5f2d4/34ceaf02-5217-46be-a307-e09dd93da230' was not found. HTTP headers received from the server - ActivityId: 224e672a-4e00-44ed-8b55-894a059608c2. NodeId: . Scope: . Client ActivityId : f6cadd9c-c011-1000-aa42-85eedd28fc19. ---> System.Net.WebException: The remote server returned an error