Add and Manage Apps
This page covers the apps management in RPGM Server.
Add an App
If your user role allows it, you can add a new app by clicking on the Add program button in the dashboard:
A new modal will show in which you can either click to select file or just drag and drop files from your computer on it:
You can select one or multiple .pgm app files. After selecting your files, click on close and the new apps will appears on the main app listing.
In the dashboard listing, an app appears like this:
It contains several information about the app:
- The name of the app ;
- A generated avatar using the name of the app ;
- The version of the app as written in the last changelog line in the project file ;
- The list of the reason why you have access to the app. In the example above, the user can execute the app because he is the owner and because he belongs to the PGM Solutions team which has access to the app ;
By clicking on the
... button below the main button, you will be redirected to page containing all the app information.
On the left, you can choose which section you want to display.
The Details section will show more information: description, company and owner. Users with full access to the app will also see some actions buttons for starting, downloading, updating and deleting the app. You can also edit the permissions (see the Apps Permission guide).
The changelog section will show the changelog table as written in the ppro of the app.
This section is only visible to developers with full access to the app.
Starting RPGM Server 2.7.0, each app can have multiple versions. This allow developers to upload and test a new update of an app they made before setting it to "live". More precisely, everytime a user clicks on the Update button, this will create a new version of the app that will be listed in the Versions section.
For each version you can:
- Set if this should be the default version by clicking on the first button with a check mark ;
- Edit its settings with the cog button ;
- Run this specific version with the play button ;
- Download the .pgm file of the version with the download button ;
- Delete the version with the trash button.
The settings of an app's versions are for selecting the R/Python versions:
The public links sections will list all the public links to the app. See the Public Links guide
In this section you can edit various settings about the app. Currently, it's mainly resources-oriented parameters.
The first settings control if an app can start by limiting its total possible instances, instances per IP and instances per user. For these settings, the global limits set in the administration panel still apply. Leaving a setting empty or setting it to 0 will be set to unlimited, but global settings still applies. If a single limit is excedeed, the instance will not start.
Here is an example:
- Global max total instances set to 10.
- Global max total instances per IP set to 5.
- App total instances set to 7.
- App total instances per IP set to 10.
Every IP will be limited to 5 instances, with a maximum of 7 instances of this app across all users and IPs. Moreover, the server will never run more than 10 total instances. The App total instances per IP set to 10 has no effect because it is higher than the global setting set to 5.
The other ressources options are for aborting the app if it exceed some limit of RAM, CPU, CPU time or total execution time. This settings completely override the global settings.
Here is an example:
- Global Max total RAM for each app set to 200 Mo.
- App Max RAM per instance set to 500 Mo.
This app will have a limit set to 500 Mo.
The final setting is Close on Disconnect: this will abort the instances of this app as soon as the user quits the page of the instance. This is useful for dashboard-like apps.
Inside an App
Please refer to the RPGM Client documentation, as everything is similar. The only difference is that the menu is accessible by clicking on your name on the top right corner:
- Terminal is like in RPGM Client, it will show the R output and app errors ;
- Restart will restart the app ;
- Quit will abort and close the app instance.
Other RPGM Client options like Save RData or Show Output Folder are not available in RPGM Server.
Please note that for security reasons, the R and Python consoles is available only for administrators, whatever is set in the ppro of the app.