Publish to stage

Publish to Stage

The Environments page lists all your development mode applications in the Applications column. Apps that have the Changes Available status are ready to be published to Stage. This status appears when there have been changes in the app that have not been published to Stage environment yet.

Steps to publish to Stage:

  1. Navigate to the Environments under Deploy section.

  2. Click Publish button in the top-right corner and choose Publish to stage option.

  3. In the Select Apps pages, select the apps that have to be published to Stage. You can publish upto three apps at once.

  4. In the Staging page the list of all changes that have been made will be displayed.

    Note:
    • Only the selected components' changes will be published. If there is a change in any of the components but the component is not selected, that change will not be published. The search bar is useful to search for required components when the list is long.
    • Double-clicking a component displays the changes with markers - Added, Modified, and Deleted. Added means a new change has been added, Modified means an existing component has been modified, and Deleted means a component has been deleted.
    • You can also add apps to be published on this screen by clicking the + icon. An App can be added only if there are any changes to the app.
    • If any of the selected component have a dependency on another component within the same app (for example, related using lookup), then the dependent components will be automatically selected.
    • If any of the selected apps have a dependent app (for example, related using lookup to another app), a prompt will appear to select the dependent app. If user does not have access to any of the selected apps, they will not be able to proceed.
  5. Now select the components, including the forms field and reports in the apps, that should be published to Stage environment. Click on Proceed.

    • A dependency is a relationship where one or more components must exist for another component to exist and function properly. It is possible that the components that you selected above have dependency on other components which are present within the app or with another app.
    • Assume a Submit New Complaint form in Vendor management app contains a lookup field linking to the Add Vendor form within the same app. Thus a dependency exists between the two. Now if Submit New Complaint is selected in the above step 5, then the Add Vendor will be auto-selected and should be published for the component to work properly.

    • Assume a Submit New Complaint form in Vendor management app contains a lookup field linking to the Add Employee form in Employee Management app. Thus a dependency exists between the two. Now if Submit New Complaint form is selected in the above step 5, then the Employee Management app should also be added and published for the component to work properly. A prompt will displayed to select the dependent app.

  6. Next the Version Details page will be displayed. Each package of apps and their changes which are being published at one instance is called as a Version. In this page you can specify details for the version.

    • Specify a Title and Description for the version.
    • Select Version type. Major type changes version 1 to 2, and Minor type changes version 1 to 1.1. Minor versions like 1.2 when pushed to Major type are rounded, in this case to 2.
    • Select users to send email notifications. The admins and developers of the application are listed here, and a maximum of three users can be selected.
  7. Before the changes are published, a few validations are performed to ensure the publishing process is successful.
    • Duplicate records - To check if a field with the "No duplicate values" property contains duplicate values in the Stage environment. Example: Let's say an application is published to Stage, and during testing we add a few duplicate values to a field. At this point the field can accept duplicate values because the "No duplicate values" property is not selected yet. However, we then edit the app and select the property field "No duplicate values" and publish the change to Stage again. This can create a conflict, as the field already contains duplicate values, but now has a property which restricts duplicate values. In this case, we first have to remove the duplicate values and then click Validate to be able to proceed.
    • Data Loss - This is a warning that appears when a component is deleted and this change is published to Stage. This is to alert users that this will also remove any related data when the change is published. Example: Let's say an application is published to Stage, and during testing we add entries in a form. We then edit the app and delete the form and publish this change to Stage again. This will result in the deletion of all the entries made to the form during the earlier testing.
    • Permission - This is a warning that appears when a profile or a role has been deleted and this change is published to Stage. The warning informs users that the deleted profile or role is mapped to the new one, as specified during the deletion.
    • Post Publish - This informs users that the publishing process may take additional time when encryption or formula field changes are made that result in consuming more time besides the publishing time.
    • Click Publish.
  8. The publishing process will be initiated.

  9. In the environments page, the status of the application under Stage section will be Publish in progress.

  10. Once the publishing process is complete, the Stage version of the app will be listed.

Note: Apps that have environments enabled after creation will take a bit more time, because the production app has to be first installed in Stage, after which the new changes will be applied.

Locking mechanism during Publish

Use Cases

Development

Stage

 

Edit Mode

Live Mode

Apps Selected and Clicked on Next
 

Selected apps and their dependent apps are locked.

 

Publish to Stage Initiated

Locked

Selected apps are locked.

 

When Publishing to Stage is completed or has failed

Selected apps, and their dependent apps are unlocked.

 

Selected apps are unlocked.

 

User collision scenarios

User

Another User

 

Publish to Stage

 

Tries Publish to Stage Option in Publish Dropdown

In App Selection Screen

Apps Selected and Clicked on Next

Apps Selected and Clicked on Next
 

 

Info Banner appears
Another user is trying to publish. Go to Environments.


The user can still proceed to the next screen.
 

Alert popup appears

Another user is trying to publish. Go to Environments.

 

The user cannot proceed further.
 

Publish to Stage Initiated

Lock button is disabled
 

 

 

When Publishing to Stage is completed / Failed

Lock button is enabled

 

 

Publish to Stage status messages

App number and action

Scenario

App publish status message

App 1 is published to Stage

 

Publish in progress

V1.0 is in progress

Some error during publish

Error in publish

Publish successful

V 1.0 (clickable package)

App 1 - App 1 is Stage version 1.0

App 2 - Stage not created yet

 

Both are published to stage

System first creates a Stage environment for apps that do not have one. This means App 2 stage environment is created first, during which time App 1 stays in the publish queue

V 2.0 is in publish queue

 

V 1.0 is in progress

 

 

If an error is encountered during  App 2 Stage creation, App 1 publish stands canceled

Publish Cancelled (App1)

 

Error in publish (App 2)

If no error is encountered during Stage creation, stage gets created for App 2 with version 1.0. Then publish process is initiated in parallel for App 1 and App 2

V 2.0 is on progress (App 1)

 

V 2.0 is on progress (App 2)

If Publish process of App 2 encounters an error it is reverted to 1.0, and publish of App 1 is aborted

Publish Aborted (App 1)

 

Error in Publish (App 2)

Publish Successful

V 3.0 is published

 

V 2.0 is published

 

Note: Error status messages can be clicked to view the error details.

Related Links

Share this post : FacebookTwitter

Still can't find what you're looking for?

Write to us: support@zohocreator.com