Welcome to this session on Deploying an Application in OutSystems. In this
session we're going to discuss how to deploy an application and execute the
deployment plan we'll also look at the anatomy of a deployment and discuss all
the different steps that occur during the deployment so deploying an
application in lifetime will take a tagged version of the application from
one environment to another when creating the deployment plan will actually choose
the version of the application that we're going to deploy which will then
grab its exact development state of when it was tagged and began moving it to the
next environment to deploy the application a user must have change and
deploy permissions in the destination environment not the source environment
before we can actually deploy we need to make sure that the deployment plan has
been validated so lifetime we'll perform an impact analysis to guarantee that the
application in the plan is not going to break anything in the destination
environment so we'll start with a validation button and once we've done
the validation if it's successful it will return a green button that will
allow us to continue and deploy the application now once the plan is defined
to be able to execute that plan in the destination environment we need to go to
that environment and find the deploy now button users that have the correct
permissions to do the deployment will see this button otherwise it will be
grayed out if the user has the capability of doing the deployment
they'll also be able to edit the plan discard the plan save it again or change
its notes and view the overall change law once the deployment is started the
deployment screen will begin showing the progress of that deployment operation so
we'll see the different steps that are supposed to occur during an employment
ie deployment and the deployment can be aborted up until the fifth step
of the process so as each step is executing and it succeeds we'll see the
checkmark will actually see a progress circle for anything that's being worked
on and the abort button will be available whenever we're still allowed
to abort that particular deployment now just because we're the person executing
the deployment doesn't mean we're the only ones that can see that progress so
the deployment process can be followed by users once the execution has been
started so while the deployment is being executed any IT users should be able to
go in and see the progress of that deployment now what is important is it's
only possible to define and deploy a single plan between two different
environments at one time so what that means is if there's a plan that exists
between development and quality assurance then we would have to discard
that plan or edit it we couldn't create a second plan to actually be able to do
deployments as well now when the deployment is started the first thing it
does is retrieve the applications from version control it then analyzes the
impact on any running business processes and then begins generating and compiling
the optimized c-sharp code it will analyze the
database and make sure to create any differential sequel scripts needed for
the database side and it will distribute the compiled applications to all the
front end servers that are going to need it it will then update the database hot
deploy the new versions and make sure everything inside of the environment is
synchronized so these are the various steps happening behind the scenes during
a deployment if we look at these in slightly different form here we can see
that in the source environment we'll retrieve the modules from version
control well then send them to the deployment controller of the destination
environment it will do the analysis and decide whether or not the business
processes will have any problem and if not it will begin to generate and
compile the code it will analyze the database and create the sequel scripts
and then it will begin distributing all of the compiled code to the different
front ends that are going to need to deploy it once it's distributed that
code it will update the database and then the deployments will occur in the
front ends so those applications will be available on their application servers
once all that's happened lifetime will be notified and life time will be able
to synchronize the environments and know that the applications are available so
we've covered a lot about deploying applications in out systems so that's it
thanks for listening and have a great day