Deployment - Overview
Documentation
home
See also: Import/Export
Introduction. 1
Deployment
Options 1
Deployment
Security. 2
Deployment
Process 2
Deployment
Administration on the Server 2
Backup/Restore. 2
Deployment is the
process of copying one or more files to a target server and making them live. The
system is supplied with a Deployment Wizard
that can be used to move anything from a single file to an entire workspace.
Typically you are deploying an application.
Deployment is intended to be used to move applications
between related systems e.g. Development -> Test, Test -> Production etc.
The deployment process is initiated from the Verj.io
Studio and this contacts the target server and transfers all the files.
There is also a related import/export
capability that packages files into an archive that can be sent to another
system. This is intended to be used between unrelated systems.
At its simplest, the deployment process consists of
selecting the entities you want to deploy, selecting the target server then
clicking the deploy button. But there
are also a number of helpful features and options:
- The
list of entities to be deployed can be saved in a Deployment Package, and this makes
it very easy to repeat the deployment operation. Deployment Packages can
also contain server configuration files to be deployed.
- The Deployment Wizard contains an Add Associations option when
selected this automatically includes all referenced entities into the
deployment. This means that when deploying a form, all additional entities
required to run the form will automatically be included in the deployment.
This option can also be included within a Deployment Package meaning that
the system will re-evaluate the list of entities to be included on each
deployment.
- Deployment
security can be configured a developer must be authorized to deploy to
any specific server
- One-off
operations can be included within a deployment: this includes the ability
to execute SQL files and to execute special Deployment Forms these
just execute a deploy() function in an associated script
allowing you to add whatever specific code you need.
- Deployments
can be held on the target server. When this option is specified, the
held deployments are manually installed at some later date using the
Server Administration Application.
- The
Server Administration Application provides tools to administer deployments
on each server including the ability to back out and re-install
deployments, look at deployment logs, query deployment status etc.
Deployment Security
Deployment Security is not configured out-of-the-box and
must be explicitly added.
In order to deploy to a server, the deployer
must have:
- A
valid username/password defined within the Internal Security System on the
target server. Users are created and maintained using the Server Administration Application
Internal Security System. It is not currently possible to use users
defined externally for deployment e.g. Windows domain users.
- The
DEPLOY role must be assigned to the user. This role is included within the
standard Verj.io Server distribution.
- An
optional deployment security token can also be specified for each target
server. When specified, the same token value must also be specified by all
users deploying to that server. On the server, this deployment token is
configured using Server
Administration Application Deployment Properties
It is recommended that the supplied admin user is not used
for deployment.
**Important Note:
When a server is available on the public internet, care should be taken to
ensure that user/password combinations cannot be guessed. In particular avoid
the use of simple (guessable) user names and passwords.
In addition, a white list of permitted IP addresses can be
configured using the Server
Administration Application. When configured, requests from users not in the
white list are rejected. If the possibility of rogue deployments is still a
concern, then set the Hold deployments on
server option using the Server
Administration Application Deployment Properties.
Here are the steps to deploy one or more files to a target
server:
The Server
Administration Application is used to maintain deployments on the server
and provides the ability to:
- View
the status of deployments and packages
- Install
pending deployments these are deployments that have been held on the
server
- Roll
back a deployment
- Re-install
a deployment
- View
log files
- Configure
deployment properties
- Create
a backup of the entire system (independent of any deployments) and restore
from a backup. See next section.
The deployment process automatically backs up all affected
files as part of the deployment process. It will also roll back a deployment if
there is a failure, and roll back can be manually requested using the Server
Administration Application. In addition, the Server
Administration Application can also be used to take a complete backup of
the workspace and all server configuration files - this effectively represents
a snapshot of the entire system.