6 Replies - 667 Views - Last Post: 04 January 2012 - 09:28 PM

Topic Sponsor:

#1 cancer10  Icon User is offline

  • D.I.C Head

Reputation: 2
  • View blog
  • Posts: 50
  • Joined: 12-July 08

Standard Deployment Process

Posted 03 January 2012 - 02:50 AM

Hello

I have some queries for which I need your inputs, these are detailed below (the list is long but pls bear with me). Basically I wish to know what process do you follow when you release your application.

1) Do you use a deployment tool for releasing the app? Like Jenkings?
a) If yes, does your deployment tool takes care of all the process automatically viz. New Database setup on the targeted server, applying folder permissions etc.?
B) Is there any manual deployment involved anywhere or the entire deployment process is automated?

2) If you are releasing your application for testing purpose to the QA department, do you build new database for each release?
a) what naming convention do you follow for the database name if the above case is true?


3) If you are using a version control system (SVN, Mercurial, Git etc) do you maintain the database version also?
a) How often do you commit your database to the repository? Is it every time there is a release or is it every time there is a change in the structure of the database?

4) Assuming there was a project that was made live a couple of months back, now the client comes back to you requesting for some changes, would you consider the code base that is on the live server to be the latest one or the one that you have in your version control system to be the latest one?
a) How do you manage the content that is on the live server which was uploaded / added during these months by the users / admins of the website? Do you download them all and commit them to the version control repository?


5) And last but not the least, could you please refer me some documents where I can learn a standard deployment process that is being followed by companies?


Any help with the above will be highly appreciated.

Many Thanks in Advance

Is This A Good Question/Topic? 0
  • +

Replies To: Standard Deployment Process

#2 tlhIn`toq  Icon User is offline

  • WillMyCodeWork = !FailedWhenYouTriedIt;
  • member icon

Reputation: 3287
  • View blog
  • Posts: 6,891
  • Joined: 02-June 10

Re: Standard Deployment Process

Posted 03 January 2012 - 07:54 AM

http://www.dreaminco...0&#entry1522907
Was This Post Helpful? 0
  • +
  • -

#3 modi123_1  Icon User is offline

  • Suiter #2
  • member icon


Reputation: 3546
  • View blog
  • Posts: 14,961
  • Joined: 12-June 08

Re: Standard Deployment Process

Posted 03 January 2012 - 08:11 AM

Quote

1) Do you use a deployment tool for releasing the app? Like Jenkings?

If being used by our customers then it's a clickonce deployment.


Quote

a) If yes, does your deployment tool takes care of all the process automatically viz. New Database setup on the targeted server, applying folder permissions etc.?

No.

Quote

B ) Is there any manual deployment involved anywhere or the entire deployment process is automated?

Tons of manual deployment.

Quote

2) If you are releasing your application for testing purpose to the QA department, do you build new database for each release?

QA department? *snort* Okay. I remember having one of those. What do you mean "build a new database for each release"? Our various testing phases had their own DBS and the data was cleaned out each move.

Quote

a) what naming convention do you follow for the database name if the above case is true?

Everyone had the same name as production.


Quote

3) If you are using a version control system (SVN, Mercurial, Git etc) do you maintain the database version also?
a) How often do you commit your database to the repository? Is it every time there is a release or is it every time there is a change in the structure of the database?

No, though the structure are backed up.


Quote

4) Assuming there was a project that was made live a couple of months back, now the client comes back to you requesting for some changes, would you consider the code base that is on the live server to be the latest one or the one that you have in your version control system to be the latest one?

Depends - was someone else making updates and changes to it for their own work? Generally what is live is the production branch.

Quote

a) How do you manage the content that is on the live server which was uploaded / added during these months by the users / admins of the website? Do you download them all and commit them to the version control repository?

No.

Quote

5) And last but not the least, could you please refer me some documents where I can learn a standard deployment process that is being followed by companies?

There's nothing but vague outlines if there are any. Each company I've been at have wildly varied deployment processes. It tends to reflect their culture, systems involved, past history of failure points, and so on.
Was This Post Helpful? 0
  • +
  • -

#4 cancer10  Icon User is offline

  • D.I.C Head

Reputation: 2
  • View blog
  • Posts: 50
  • Joined: 12-July 08

Re: Standard Deployment Process

Posted 03 January 2012 - 09:32 PM

@tlhIn`toq: Thanks for teh link but it only talks about version number system and not about any deployment process.


@modi123_1: Thanks for taking the pain of replying my post.

As far as the DB deployment process is concerned, I think it should also be a part of the automated deployment via a deployment tool. Any manual process involved in the deployment should be avoided to prevent any slips.

Whats your opinion?




Thanks
Was This Post Helpful? 0
  • +
  • -

#5 modi123_1  Icon User is offline

  • Suiter #2
  • member icon


Reputation: 3546
  • View blog
  • Posts: 14,961
  • Joined: 12-June 08

Re: Standard Deployment Process

Posted 03 January 2012 - 10:20 PM

Quote

As far as the DB deployment process is concerned, I think it should also be a part of the automated deployment via a deployment tool. Any manual process involved in the deployment should be avoided to prevent any slips.

Whats your opinion?

That's pretty much the reason why I *wouldn't* trust an automated deployment tool. I would be checking it three times anyways so might as well move it myself.
Was This Post Helpful? 0
  • +
  • -

#6 wordswords  Icon User is offline

  • D.I.C Head
  • member icon

Reputation: 36
  • View blog
  • Posts: 163
  • Joined: 17-December 11

Re: Standard Deployment Process

Posted 04 January 2012 - 02:57 PM

View Postcancer10, on 03 January 2012 - 02:50 AM, said:

1) Do you use a deployment tool for releasing the app? Like Jenkings?


Jenkins (previously called Hudson) doesn't release an app, it is an automated build/continuous integration tool. We use it to automatically build and run the tests when anyone checks in code. It is really really helpful.

View Postcancer10, on 03 January 2012 - 02:50 AM, said:

a) If yes, does your deployment tool takes care of all the process automatically viz. New Database setup on the targeted server, applying folder permissions etc.?


For our main projects, we get hudson to automatically build a RPM. We don't have automated deployment. The sysadmin team still require instructions on which RPM to install and any config files that need to change etc.

View Postcancer10, on 03 January 2012 - 02:50 AM, said:

B) Is there any manual deployment involved anywhere or the entire deployment process is automated?


Yes. There is manual deployment past the RPM stage.

View Postcancer10, on 03 January 2012 - 02:50 AM, said:

2) If you are releasing your application for testing purpose to the QA department, do you build new database for each release?


We clear out the database for each application deployment. We are lucky that we don't store any information that needs to stay constant over iterations.

View Postcancer10, on 03 January 2012 - 02:50 AM, said:

3) If you are using a version control system (SVN, Mercurial, Git etc) do you maintain the database version also?


We have SQL scripts included in each release which deploy the database.

View Postcancer10, on 03 January 2012 - 02:50 AM, said:

4) Assuming there was a project that was made live a couple of months back, now the client comes back to you requesting for some changes, would you consider the code base that is on the live server to be the latest one or the one that you have in your version control system to be the latest one?


We don't care because each release zaps the db.


View Postcancer10, on 03 January 2012 - 02:50 AM, said:

a) How do you manage the content that is on the live server which was uploaded / added during these months by the users / admins of the website? Do you download them all and commit them to the version control repository?


We have no content of this type.

View Postcancer10, on 03 January 2012 - 02:50 AM, said:

5) And last but not the least, could you please refer me some documents where I can learn a standard deployment process that is being followed by companies?


I don't know of any. There is plenty of information on continuous integration and automating builds though, which arguably is the difficult part of automated deployment. But there isn't a standard procedure because every project uses different languages, hosts and has different policies.
Was This Post Helpful? 0
  • +
  • -

#7 cancer10  Icon User is offline

  • D.I.C Head

Reputation: 2
  • View blog
  • Posts: 50
  • Joined: 12-July 08

Re: Standard Deployment Process

Posted 04 January 2012 - 09:28 PM

Thank u wordswords for your inputs.

Appreciate it.
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1