Every organization might utilize different strategy to develop and deploy software to production. Dynamics Mobile apps and the ecosystem around them allows the organizations to transparently embed the Dynamics Mobile apps deployment procedure into their processes by using the Dynamics Mobile SDK command line tools as well as additional NPM modules to further augment the process.
Dynamics Mobile apps come with a set of node scripts defined in its package.json file. Of course the developers can further tweak the standard scripts or add new ones.
Most software development/implementation business projects suggests that there are several environments with different type of use.
Development environment ( a.k.a. DEV) used during the development phases by the developers, considered as environment where the software is non-stable
User Acceptance Testing environment ( a.k.a. UAT) used during formal testing of the software by the end users, considered as semi-stable to stable
Production environment ( a.k.a. PROD ) used by the end users to work with the production system, considered as stable.
In Dynamics Mobile, each environment can be represented by a separate application area - e.g. one application area for Development , one application area for User Acceptance Testing, and one application area for Production.
While the types and number of the environments and the project governing process may be different, we will try to outline the steps that the developer might use to deploy the app to the upper mentioned generalized environments.
Execute dms login command to login to DEV application area
Work on the task/functionality
Iterate between development and debugging by hitting F5/Ctrl+F5 or executing npm run build
Execute unit tests with success
Perform final local testing of the functionality
Execute dms login command to login to UAT application area
Execute npm run publish to deploy the app in the UAT environment
Wait for confirmation that the version is stable and the UAT tests completed with success
Execute dms login command to login to PROD application area
Execute npm run publish to deploy the app in the production environment