9 Package and Deploy Apps
If you used Oracle JET tooling to create your Oracle JET app, you can package web apps for deployment to a web or app server.
Package Web Apps
If you created your app using the tooling, use the Oracle JET command-line interface (CLI) to create a release version of your app containing your app scripts and applicable Oracle JET code in minified format.
Deploy Web Apps
Oracle JET is a collection of HTML, JavaScript, and CSS files that you can deploy to any type of web or app server. There are no unique requirements for deploying Oracle JET apps.
Deployment methods are quite varied and depend upon the type of server environment your app is designed to run in. However, you should be able to use the same method for deploying Oracle JET apps that you would for any other client interface in your specific environment.
For example, if you normally deploy apps as zip files, you can zip the
                    web directory and use your normal deployment process.
                     
Remove and Restore Non-Source Files from Your JET App
The Oracle JET CLI provides commands (clean, strip, and restore) that manage the source code of your JET app by removing extraneous files, such as the build output for the platforms your JET app supports or npm modules installed into your project.
Consider using these commands when you want to package your source code for
            distribution to colleagues or others who may work on the source code with you. Use of
            these commands may not be appropriate in all circumstances. Use of the clean and strip
            commands will, for example, remove the content in the web directory
            that is created when you run ojet build or ojet serve. 
                  
ojet clean
Use the ojet clean command to clean the build output of your JET
                app. Specify the web parameter with the ojet clean
                command (ojet clean web) to remove the contents of your app’s root
                directory’s web directory.
                     
ojet strip
Use ojet strip when you want to remove all non-source files from
                your JET app. In addition to the build output removed by the ojet
                    clean command, ojet strip removes additional
                dependencies, such as npm modules installed into your project. A typical usage
                scenario for the ojet strip command is when you want to distribute
                the source files of your JET app to a colleague and you want to reduce the number of
                files to transmit to the minimum.
                     
The ojet strip command relies on the presence of the
                    .gitignore file in the root directory of your app to determine
                what to remove. The file lists the directories that are installed by the tooling and
                can therefore be restored by the tooling. Only those directories and files listed
                will be removed when you run ojet clean on the app folder.
                     
If you do not use Git and you want to run ojet strip to make a
                project easier to transmit, you can create the .gitignore file and
                add it to your app's root folder with a list of the folders and files to remove,
                like this:
                     
#List of web app folders to remove
/node_modules
/bower_components
/themes
/webAs an alternative to the .gitignore file, you can include a
                    stripList property that takes an array of glob pattern values
                in your app's oraclejetconfig.json file. When you specify the
                    stripList parameter in the
                    oraclejetconfig.json file, Oracle JET ignores the
                    .gitignore file and its entries. Specify the list of
                directories and file types that you want to remove when you run ojet
                    strip, as demonstrated by the following example. 
                     
{
. . .
  "generatorVersion": "17.1.0",
  "stripList": [
    "jet_components",
    "node_modules",
    "bower_components",
    "dist",
    "web",
    "staged-themes",
    "themes",
    "myfiles/*.txt"
  ]
}ojet restore
Use the ojet restore command to restore the dependencies, plugins,
                libraries, and Web Components that the ojet strip command removes.
                After the ojet restore command completes, use the ojet
                    build and/or ojet serve commands to build and serve
                your JET app. 
                     
The ojet restore command supports a number of
                additional parameters, such as ojet restore --ci that invokes the
                    npm ci command instead of the default npm
                    install command. This option (ojet restore --ci)
                fetches the dependencies specified in the package-lock.json file,
                and can be useful in CI/CD pipelines.
                     
For additional help with CLI commands, enter ojet help at a terminal prompt.