Explanation: Apps

1. Library

When you arrive to the apps within your project, you’ll land in the project’s app library.

To navigate to your project’s app library:

  1. Select Projects in the primary navigation.

  2. Go to your project.

  3. Select Apps in the secondary navigation.

Screenshot of the app library homepage with six sections outlined
  1. The breadcrumbs in the top bar display your current project.

  2. The top bar title is the title of the current page. In this case, you’re in Apps.

    You’ll notice a beaker icon labeled lab because apps are currently experimental.
  3. Also in the top bar are several buttons used to:

    • Update (refresh) your page

    • Access project settings

    • Create a new app

  4. Use the search bar to search for apps by name only. Search by technology is not supported.

  5. Use the toggle to sort your app library by:

    • Status

    • Last instance

    • Creation data

    • Name (either A-Z or Z-A)

  6. Finally, all apps have an app card.

    Focused image of an app card
    • Cards show the app’s name, current status, and how long the app has had that status.

    • You can also see the app’s technology from the icon.

    • To access your app’s details, select the first button (with the app name).

    • To open your app, select the second button (the button in this example says Open Notebook).

      • Note that the text on this button will change depending on the technology.

      • When an app is not running, this button changes into a Run app button.

2. Overview

The overview page is the first page you’ll reach when you navigate to your app details. It displays essential information about the app and links to other important app details.

Screenshot of the app overview homepage with nine sections outlined
  1. The second-level navigation column has links to the pages for an app’s overview, instances, and versions.

  2. The second-level navigation column displays the app’s current status and how long the app has maintained that status. There are also buttons to either stop or run your app, as well as delete it.

  3. The breadcrumbs in the top bar show which project and app you’re viewing. You can also use the breadcrumbs as navigation.

  4. The top bar title is the title of the current page.

  5. Also in the top bar are buttons to update your app, access app settings, and upgrade your app.

  6. In the body of the page layout, there is a section featuring all app settings.

  7. There is a section indicating your app’s technology, which repository the technology is in, when the app was last updated, and the app’s Docker image.

  8. Also in the body of the page layout is a section featuring the app’s configuration, including the app’s version information as well as the version’s release note (if one was added), creation date, and who created the version.

  9. The final section in the body displays information about the app’s exposed ports, persistent storage, and Docker image.

3. Settings

App settings include the following non-versioned, modifiable features:

  • Name

  • Description

  • Alerts

Settings also include persistent storage, which cannot be modified after an app has been created.

3.1. Name

Names are always required.

There are minimal restrictions when naming apps:

  • Names cannot exceed 255 characters.

  • You cannot repeat app names within a project.

3.2. Description

Descriptions are optional.

There are no restrictions on descriptions, though it’s good practice to keep them short and informative.

3.3. Alerts

By setting up alerts, you’ll receive an email each time your app’s status changes to a status you selected when creating or modifying the app.

Alerts are sent to an email address. You can either choose an email address from the drop-down menu, or, if the email address you need doesn’t appear, you can enter it. You can have alerts sent to one or several email addresses.

You can receive alerts for one or several of the follow statuses:

  • requested: you’ve asked for the app to run; it is waiting for the resources it needs to be able to launch

  • queued: the app is in line to run

  • up: the app is actively running

  • stopping: the app’s run is in the process of stopping

  • stopped: the app’s run has stopped voluntarily

  • down: there was an error with the app and it is no longer running

3.4. Persistent storage

An app’s persistent storage is customizable when creating the app. You can choose any storage size from 64 MB to 128 MB.

  • Storage is not versioned.

  • Storage size is shared by all of the app’s volume paths.

  • Storage size can’t be modified after an app has been created.

4. Configuration

You can upgrade the app’s configuration using the Upgrade app button. Upgrading your app creates a new version of that app.

The app’s configuration includes the following versioned features:

  • Authentication and authorization

  • Release notes

  • Start new version

4.1. Authentication and authorization

There are two authentication and authorization options: project and public.

  • Project: the app requires authentication through the Saagie platform as well as the correct authorizations within the project.

  • Public: the app does not requires authentication through the Saagie platform.

    If you choose to use the public setting, your app should either only include data for public consumption, or it should be protected by its own authentication system.

4.2. Release notes

Release notes are optional and can be a good way to keep track of changes from one app version to another. Use this field according to your needs.

4.3. Start new version

Each time you upgrade your app to a new version, you can choose to start or restart the app using the new version.

This configuration is optional. You can always navigate to the app’s versions page to choose which version to run.

5. Instances

An instance of your app is a single run of that app.

When you first arrive on your app’s instances page, you’ll see the information for the most recent app instance:

App instances information page

5.1. Instance information

  • Current app instance number

  • Status of the most recent app instance

  • Current app version

  • Start time, end time, and duration of the instance (as applicable)

5.2. Logs

The apps instances page is where you can view and download logs. You can view and download all logs, or choose either standard or error logs.

Use the buttons around the logs box to scroll up and down, expand the log box to use the full window, refresh logs, and load more logs.

5.3. List of all instances

The app instances page features the list of instances of that app. Select an instance from the list to view its details.

6. Versions

Whenever your app is upgraded, a new version of that app is created. You can access and run any version of your app from the app versions interface.

When you first arrive on your app’s versions page, you’ll see the following information for the current version:

App versions information page

6.1. Tags

There are two tags available to assign to app versions:

6.1.1. Current version

By default, the current version of the app is the most recent version.

However, you can tag any version of your app as the current version. You can rollback to an older version of the app to make it the current version.

When you create a new version of the app, it is tagged automatically as the current version.

6.1.2. Major version

Use the major version tag however you see fit.

For example, you might use it to highlight stable versions of the app.

You can remove the major version tag from a version by selecting the Unset as a major version button.

6.2. Version information

Each version page contains all information for that version, including:

  • Release note (if one was included)

  • Date created

  • Creator

  • Exposed ports

  • Persistent storage

  • Docker image

6.3. List of all versions

The app versions page features a list of all the versions of that app. Select a version from the list to view its details.

7. Technologies

Technologies available for your projects are determined by your organization’s Technology Catalog.

Technologies are added to the Technology Catalog and managed according to our SDK documentation.

If a technology needs to be added or updated, or you are missing a technology, speak with your administrator.