Neuron ESB User Network

The Service Bus for the Connected Business

Deploying a solution from the development environment to production environment.

Hello!

I am looking for best practices when deploying an updated solution from a development environment into a production environment. I was advised the easiest and fastest way to deploy a solution is to simply copy the development solution into production. 

Is this the same practice that others use?  If not, what are other ways to deploy changes to a solution?  My concern is the possibility of accidentally breaking already working code while in development, not realizing it, and deploying the broken code to production.   

I was thinking in the meantime of writing a quick app to run through all the files of each the dev and prod solutions and displaying any changes as a review - what do others think?

Thanks!

Kelly

Tags: deployment

Views: 287

Reply to This

Replies to This Discussion

Kelly,

Did you find a deployment process that you liked, or hear of a best practice for deployment?

We're just starting to use NeuronESB, and the process I've been using has been to use Git source control for versioning the solution folder (excluding a couple of the configuration files, and the history) in the development environment. My plan is to use some of Git's features to perform the deployment to Production.

The main issue that I've encountered so far is that some of our 'code' and 'configuration' are in the same files. For example, I want to version the XML file for a Process that I have created. That Process contains both code and configuration. The code can be moved without a problem, but I also have a 'Table Query' Process Step that contains a Connection String specific to my Test environment and that is not valid for Production. My plan is to document those types of issues, and manually update those types of items post-deploy. It's fine now, with just a small handful of places that need updating, but I really need to find a better solution when we setup more endpoints and processes...

Thanks for any info about your experiences,

Garrett

Garrett, you should probably take a look at environment variables. They are created for storing configuration that differers between environments (or Deployment Groups). Except in special cases, there should be no need to patch anything post-deploy.

Now, the Table Queury process might actually be an exception like that. I do not think you can bind any properties to environment variables or set related message properties.

The SQL Adapter is deprecated, so in your scenario, I would use an .Net ODBC adapter endpoint and bind the connection string property to an environment variable. And then call this directly from your process.

Then you are able to do a simple XCopy from GIT, given that you have configured development and test servers to use different deployment groups.

Hope this helps,

Christian

Hi Kelly

It is pretty much what we are doing at several clients. 

All the environment are set to use different deployment groups and then we use environment variables to store all configuration that differs (connection string, access control listes, API keys etc.)

Basically we then do a full XCopy with some additional backup of the existing files. We automated it using PowerShell and then have a single .zip file that moves between environments (Test, QA, PreProduction, Production). This ensures that it is the exact same code base being tested.

(there are some additional steps, when updating the runtime and I have outlined it here: https://www.integrator.dk/2014/05/fully-automated-neuron-esb-install/ ).

I would advise against doing partial deploys or patching. That only opens up for all kinds of errors.

We usually use source control to get a list of changed artefacts since last release. This also determines the amount of regression test that we need. I do not think you can avoid doing some sort of regression testing, but usually it is not that hard automating much of it in unit tests and so forth.

Hope that helps.

Christian

RSS

Neuron ESB Product Support Forums and Communities

Latest Activity

Anupama Nair posted a discussion

Marketo Adapter Invalid Token

Hi,We are using the Marketo adapter to push account updates to Marketo. It works well for some time then starts failing with Invalid Token unless restarted. Is there a configuration that can be done so it can auto refresh the token when required?Thanks!See More
Nov 6, 2023
Sayantini Basak posted a discussion

Maximum payload size(REST API) for requests interfacing to NeuronESB

I am new to Neuron ESB and in our current scenario,We need to process batch transactions comprising of ~1000 records and send them to Neuron ESB for further processing. I would like to understand what is the maximum size of payload that can be transferred using REST interface to Neuron ESB.See More
Jul 22, 2022
Profile IconRobert E Dunie and Sayantini Basak joined Neuron ESB User Network
Apr 28, 2022
Profile IconDayanand, Frederic C, Steffen Greve-Oksfeldt and 1 more joined Neuron ESB User Network
Mar 16, 2022
Profile IconCam Vong and Mitja Luznar joined Neuron ESB User Network
Jan 27, 2022
Profile IconWill Hitzges, Chad Parsons, michael larsen and 4 more joined Neuron ESB User Network
Jun 11, 2021
Anupama Nair posted a discussion

ODBC stored proc polling with temporary tables

We have set up an ODBC adapter to poll a stored proc.We found that if the stored proc has a temporary table defined the rows returned are always 0.Any idea why this would be and what we can do to get around it?See More
Dec 14, 2020
Prasanth Kharade is now a member of Neuron ESB User Network
Dec 30, 2019

Badge

Loading…

© 2024   Created by Neuron Admin.   Powered by

Badges  |  Report an Issue  |  Terms of Service