Questions tagged [deployment]

A series of activities that makes a program available for use (usually in test or production environments)

Deployment consists in a series of activities needed to get a program available for use outside a development environment (for example on web sites, PCs, smartphones and/or tablets).

At a high level, deployment activities need to:

  • compile the program in a suitable packaging format;
  • distribute the program to the final environment (e.g. via the Internet, an app store or CDs);
  • install dependencies (usually libraries, runtimes and application servers);
  • configure the target environment (e.g. where the database is or runtime parameters of the application server).

A deployment can be done in several ways according to the program type, for example:

  • to deploy a web application written in Java we can add JARs to web containers;
  • to deploy a desktop application on Windows we can create a setup program and burn it to CDs;
  • to deploy an application to a cloud environment (like Heroku or Windows Azure) we can use ad-hoc programs or widely known programs like git that trigger a series of operations on the server side;
  • to deploy an application to an app store we may need to send the application to the store owner for approval. If the application is approved then the store owner will publish the new version, making it available to the users;
  • a deployment may require to distribute specially configured virtual machines with the right version of software and dependencies.

There are many challenges in deployment revolving around two main themes:

  • to ensure that programs exhibit the same behavior in production as they do in testing and development. To achieve this, usually there are several test environments (beyond development) in which the software is deployed and tested thoroughly before being released in the production environment. is the strategy of deploying to a subset of users to detect production-only errors with minimal user impact.
  • to be able to rollback to a previous stable version in case the current version behaves erratically. The deployment environment may help by providing some facilities to retain previous versions and install them when needed. is a deployment strategy which enables fast, robust release and rollback.

Frequently Asked Questions

People often ask about these topics:

25961 questions
8
votes
1 answer

Capistrano deploy from Git HTTP repo

Has anyone experience with Capistrano deployment from a Git repository over HTTP? The following deploy.rb is not working: set :repository, 'http://git.repository-domain.com:4442/git/repo.git' set :scm_username, "git_username" set :scm_password,…
Ain Tohvri
  • 2,987
  • 6
  • 32
  • 51
8
votes
1 answer

Failed to launch JavaFX application with native bundle exe

I have created a JavaFX application, and created its native bundle using Ant. When I am trying to launch application using Jar from bundle created with double click, it successfully launching my application. But when I am trying double click on…
Neelam Sharma
  • 2,745
  • 4
  • 32
  • 73
8
votes
2 answers

How to test a Windows8 app on a surface

How do I port a Windows8 app that I built onto a Surface? I've built the app using Visual Studio and I can test it just fine on the desktop machine by just hitting F5. How can I put it onto a Surface to test it without having to publish it to the…
Ian Davis
  • 19,091
  • 30
  • 85
  • 133
8
votes
3 answers

Git philosophy: how to get "master" branch to "production" branch?

Pretty sure I'm misunderstanding git. My goal I have a private repo on github with a "master" branch. I would like to also have a production branch, which I will push all my changes from master to. I would then like to connect it to Azure and…
SeanKilleen
  • 8,809
  • 17
  • 80
  • 133
8
votes
4 answers

Need different .htaccess for staging and live site from Git repo

Here's the scenario: There is a Git repo, which is tracking website files, including the .htaccess at root. The Git repo is checked out to a staging site and to a production site. The problem: The staging site has to be protected with password…
Sawant
  • 4,321
  • 1
  • 27
  • 30
8
votes
2 answers

JBoss AS 7 - Deploying wars in certain order

Im trying to deploy some .war files in a standalone mode, the problem is that i need them to be deployed in a certain order... I have: file1.war, file2.war, file3.war and i have to deploy first file2.war, then file3.war and finally file1.war I've…
user1821266
  • 81
  • 1
  • 2
8
votes
3 answers

ERROR -- : uninitialized constant Airbrake (NameError)

I'm working on a rails 3.2.8 project, I've just installed the airbrake gem to track errors, In development I did the airbrake installation steps, then when I did the deployment with capistrano, I got the following error in the unicorn production…
8
votes
3 answers

Running Maven project on Tomcat from Eclipse

I have a Maven Project in Eclipse. I want to deploy it in my local tomcat server and run it like normal J2EE projects. But What i found is in tomcat add/remove projects option, no project is shown. Right click on maven project and run as doesn't…
RaceBase
  • 18,428
  • 47
  • 141
  • 202
8
votes
3 answers

MSBuild: Deploying files that are not included in the project

I have a Pre-build event on a web project that minifies and concatenates javascript files using node. This creates a folder called BuiltScripts in the scripts folder that is a duplicate of the scripts folder except the files are minified. When I am…
Aran Mulholland
  • 23,555
  • 29
  • 141
  • 228
8
votes
1 answer

Jetty Deployment Order

I have multiple wars getting deployed in jetty 8.1.4 using ContextAppProvider. we want to specify the order in which war apps are deployed, as we have some wars depend on other wars. So how to set the specific order of deployment in jetty
Surya Chaitanya
  • 602
  • 4
  • 13
8
votes
4 answers

Publish Web dialog doesn't detect my entity framework 5 context as Code First

I've recently upgraded a WFC project that uses Entity Framework from v4.3.1 to 5.0. I'm running Coded migrations only (no automatic migrations). Previously, I was using the Publish Profiles to deploy this solution and apply the migrations. Since…
8
votes
4 answers

Can't launch rails app via unicorn due to kgio_ext (LoadError)

I am trying to run a rails app via unicorn -c config/environments//unicorn.rb -e but I keep getting this error. /vendor/bundle/ruby/1.9.1/gems/kgio-2.7.4/lib/kgio.rb:21:in `require': cannot load such file -- kgio_ext…
8
votes
1 answer

How to include Groovy 2.0 in a deployed Grails 2.1.0 app?

I've updated my dev box to Grails 2.1.0 and Groovy 2.0 (Ubuntu 12.04 64Bit, STS 2.9). After migrating my apps from 2.0 to 2.1.0, I've noticed that the WAR file still included the groovy-all Groovy 1.8.6 jar. My question is: is possible (or…
alessino
  • 143
  • 6
8
votes
2 answers

Automatic deployment of Windows Service - tools

I am looking for recommendations on tools for automatic deployment of Windows Service to several machines. The tool should be able to: - Stop/Start service - Copy files - Modify configuration files on each destination server according to some…
Boris Modylevsky
  • 3,029
  • 1
  • 26
  • 42
8
votes
2 answers

Symfony2 - Deployment cache no setfacl

I'm trying to deploy my first Symfony2 app. Blank screen when trying to access it. Checking the log: $ sudo tail -f /var/log/apache2/error.log [...] Uncaught exception 'RuntimeException' with message 'Failed to write cache file [...] Trying to…
Pierre de LESPINAY
  • 44,700
  • 57
  • 210
  • 307