A Guide to Deploying Web Apps

From Lianjapedia
Revision as of 11:57, 15 June 2018 by Yvonne.milne (Talk | contribs)

Jump to: navigation, search

See Also

Deploying to Local Directory, Understanding Live Preview in Lianja

Web App View

Web App View gives you options to Deploy your App for your local Lianja Cloud Server (this generates the HTML5 index file and copies the App's files to the deployment path) and to Preview the App running in your default browser prior to deploying to a remote server.

Deploy and Preview


Click the toolbutton in the header to access Web App View.

Click Deploy in Web App View to generate the HTML5 index file and copy the App's files to the deployment path.

For testing purposes, you can click Preview to preview your App live in your default browser.


Deploy

Deploy in Web App View generates the HTML5 index.html code and deploys the App's files to your local Lianja Cloud Server deployment path. To deploy your Apps, databases and Library and MetaTypes files to a remote location, use the Deploy workspace.

You can go directly to the Deploy workspace via the system menu or Modebar, or use the Quick Deploy toolbutton in the headerbar of the Pages and other workspaces.

Quick Deploy

Quick Deploy can be run while the App is open. Quick Deploy automatically saves and restores the environment, closing the database and tables for the deployment then reopening them when the operation is complete.

Quick Deploy defaults to using the App Deployment Settings:

Attribute Description
Publisher The way to publish the Apps (Copy | SFTP | Custom).
Publisher path The optional full path of the publisher program, e.g. /usr/bin/rsync.
Publisher arguments The optional arguments to the publisher program, e.g. -avc for rsync.
Server The server IP address or nodename where the App will be deployed, e.g. localhost or myserver.mydomain.com.
Directory The root lianja directory on the LAN or server where the Apps will be deployed.
Build an installer Build an installer for Windows desktop deployment (True | False).
Username The optional username to authenticate with the remote server.
Password The optional password to authenticate with the remote server.
Private key (.pem file) The (optional) private key (.pem file) to authenticate with the remote server.
App Deployment Settings: COPY




For example, here the files will be deployed:

- using Copy (Publisher)

- to the networked drive location G:\lianja\cloudserver\tenants\public\ (Directory)


App Deployment Settings: SFTP




And another example, here the files will be deployed:

- using SFTP (Publisher)

- to the server on 192.168.80.133 (Server)

- to the server location /opt/lianja/cloudserver/tenants/public/ (Directory)

- logged in as root (Username)

- the password (Password) is not specified, but a prompt dialog will be displayed


Note that the Directory location is the root location. Files will be deployed to the sub-directories of this location. The trailing directory separator ('\' or '/') should be included.

Publisher path and Publisher arguments are only required when using a Custom Publisher.

Setup

Quick Deploy




Click the Quick Deploy toolbutton in the headerbar to open the dialog.

The first step in using Quick Deploy is Setup.


Clicking the Setup button takes you into the Deploy workspace. Here you can select the databases, Apps and Library files that will be included in your deployment.

Quick Deploy Setup: Deploy Workspace



Check the box next to the databases, Apps and Library files to be deployed.

While in the Deploy workspace, you can change the Deployment Settings to specify an alternative location or additional options as required.

Then switch back to the Pages workspace and reopen the Quick Deploy dialog using the toolbutton in the headerbar.

Note that while this Lianja App Builder session is running your deploy setup will remain active until you change it.


Preview

Quick Deploy: Preview



Clicking Preview will allow you to check the files and destination location of the files to be deployed.


Commit

Quick Deploy: Commit


When you are ready to deploy, click the Commit button and confirm when prompted by clicking Yes.

Then click Close.


Deploy Workspace

As mentioned above, you can go directly to the Deploy workspace rather than use Quick Deploy.

To deploy in the Deploy workspace, there should be no App or database open.

Deploy Workspace: Select Files



Check the box next to the databases, Apps and Library and MetaTypes files to be deployed.

Note that if your Apps are in a Lianja Project, checking the box next to the Project name will automatically select all files associated with that Project in the Deployment files explorer tree.

While in the Deploy workspace, you can change the Deployment Settings to specify an alternative location or additional options as required.


Deploy Workspace: Preview Changes



Clicking the Preview changes headerbar toolbutton will allow you to check the files and destination location of the files to be deployed.


Deploy Workspace: Commit Changes



Click the Commit changes headerbar toolbutton when you are ready to deploy and confirm when prompted by clicking Yes.


Deployment Settings

As mentioned above, the deployment settings default to those in the App Settings. These can be changed in the Deploy workspace and additional file permissions specified.

Deploy Workspace: Deployment Settings



Click New to create a new Deployment Settings profile.

Enter a name for the profile then fill in the settings.

Settings descriptions are listed in the tables below.

Once complete, click Save.

The new settings profile can be selected from the Favorites combobox at any time in the future to override the App Settings defaults.


Server details

Setting Description
Server The server IP address or nodename where the App will be deployed, e.g. localhost or myserver.mydomain.com.
Username The optional username to authenticate with the remote server.
Password The optional password to authenticate with the remote server.
Private key (.pem file) The (optional) private key (.pem file) to authenticate with the remote server.
Directory The root lianja directory on the LAN or server where the Apps will be deployed.
Owner The owner to be set for the deployed files, e.g. 'apache'. This is currently ignored.
Group The group to be set for the deployed files, e.g. 'apache'. This is currently ignored.
Permissions The permissions to be set for the deployed files, e.g. '766'.

Publisher details

Setting Description
Publisher The way to publish the Apps (Copy | SFTP | Custom).
Publisher path The optional full path of the publisher program, e.g. /usr/bin/rsync.
Publisher arguments The optional arguments to the publisher program, e.g. -avc for rsync.

System Database

Deploy System Database



The system database holds the definitions for Users and Roles, Row Level Security and Dynamic Data Masks.

Make sure the system database is included in the deployment.


Deployment Directories

Using the standard installation settings, these are the Lianja Cloud Server default directories for Web/Mobile Apps:

Windows

Files Location
App C:\lianja\cloudserver\tenants\public\wwwroot\apps
Databases C:\lianja\cloudserver\tenants\public\data
Library C:\lianja\cloudserver\tenants\public\wwwroot\library

Linux

Files Location
App /opt/lianja/cloudserver/tenants/public/wwwroot/apps
Databases /opt/lianja/cloudserver/tenants/public/data
Library /opt/lianja/cloudserver/tenants/public/wwwroot/library

Mac

Files Location
App /Users/<username>/Library/Application Support/Lianja/cloudserver/tenants/public/wwwroot/apps
Note: /usr/local/lianja/cloudserver is a symbolic link to /Users/<username>/Library/Application Support/Lianja/cloudserver
Databases /Users/<username>/Library/Application Support/Lianja/cloudserver/tenants/public/data
Note: /usr/local/lianja/cloudserver is a symbolic link to /Users/<username>/Library/Application Support/Lianja/cloudserver
Library /Users/<username>/Library/Application Support/Lianja/cloudserver/tenants/public/wwwroot/library
Note: /usr/local/lianja/cloudserver is a symbolic link to /Users/<username>/Library/Application Support/Lianja/cloudserver