Explanation: Projects

1. Library

When you first navigate to Projects, you’ll land in your project library.

Screenshot of the project library homepage with six sections outlined
  1. In the secondary navigation panel, you can access:

    • Activity for all projects on the platform.

    • Global environment variables that can be used with every project on the platform.

  2. The breadcrumbs in the top bar display your current location.

  3. The top bar title is the title of the current page. In this case, you’re on All projects.

  4. Also in the top bar are buttons to:

    • Update (refresh) your page

    • Create a new project

  5. Use the search bar to search for projects by name only.

  6. Finally, you’ll see a list of all of the projects on this platform. The list features of the name and description for each project, as well as a Delete button to delete to project (if you have the corresponding authorization).

2. Overview

The overview page is the first page you’ll reach when you navigate to your project. It provides access to jobs, pipelines, apps, environment variables, and Docker credentials, as well actions you can take on the project.

Screenshot of a project’s overview page with six sections outlined
  1. The first section in the primary navigation menu is Data Management. The links in this section navigate to all of the jobs, pipelines, and apps in the project.

  2. The second section in the primary navigation menu is Settings. Here, access the library of environment variables (both project and global) and Docker credentials.

  3. At the bottom of the primary navigation panel is a Delete project button. You may or may not be able to delete a project depending on your authorizations for that project.

  4. The breadcrumbs in the top bar display your current location.

  5. The top bar title is the title of the current page. In this case, you’re on Jobs, and can see the jobs library for the project.

  6. Also in the top bar are buttons to:

    • Update (refresh) your page

    • View project settings

    • Create a new job

      To create a new project, return to the project library.

3. Settings

3.1. Name

Names are always required.

There are minimal restrictions when naming projects:

  • Names cannot exceed 255 characters.

  • You cannot repeat project 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. Job technologies

In project settings, you choose which technologies you need for jobs in your project. If a technology is not selected here, it will not be available for any jobs within the project.

The technologies available to choose for your projects are determined by the Technology Catalog.

You can always modify the technologies available for your project by changing the project settings. If there are jobs within your project using a certain technology, that technology cannot be removed from the project’s available technologies.

Choosing technologies available to jobs in the project

You can view details about a technology, including a description of that technology and information about available contexts, by selecting the info button on that technology’s card.

View technology details

3.4. Authorizations

Managing authorizations for your project is very important.

Choosing which groups have which authorizations within the project
  1. Some groups can access all projects. That access in managed in Security.

  2. You can also add groups that can access this project and select their role. That role will apply for all jobs in your project.

    Table 1. Roles
    Action | Role Viewer Editor Manager

    View project

    checkmark

    checkmark

    checkmark

    Edit project content
    (example: jobs)

    checkmark

    checkmark

    Modify project settings and configuration
    (example: run type, versions)

    checkmark

    Delete Project

    checkmark

4. Environment variables

Environment variables are dynamic-named values that can be referenced inside of jobs.

Saagie uses two types of environment variables:

  • Global: available for all projects on the platform

  • Project: available only for the project in which it is created

Environment variables are not shared between platforms.

4.1. Name

Names are always required.

There are some restrictions when naming environment variables:

  • The name of your variable cannot exceed 255 characters.

  • The name can only contain:

    • uppercase letters (A-Z)

    • lowercase letters (a-z)

    • numbers (0-9)

    • underscores (_)

    • hyphens (-)

    • periods (.)

4.2. Description

Descriptions are optional.

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

4.3. Global variables

Access all global environment variables for the platform from the library page.

Screenshot of a project’s global-level environment variable page with five sections outlined
  1. Verify your location to make sure you’re accessing global environment variables.

    • You should see the data management menu for all projects.

    • Environment variables should be in the only options in the settings menu.

  2. Additionally, you can use the breadcrumbs to verify your location. When working with global environment variables, you should only see the breadcrumb Projects.

  3. In the top bar, you’ll see when the list of variables was last updated, as well as a button to create a new global variable.

  4. Search for global environment variables by name only.

  5. The list of global environment variables includes the name and description of the variable, as well as a icon you can select to copy the variable. There is also a badge indicating that each variable is global.

    On the global environment variables menu, you can only view global environment variables. You can also create and edit them.

4.4. Project variables

Access your project’s environment variables from the overview page.

You can create environment variables per project. These will only be accessible through the project you have determined, so other projects will not be able to access them.

The configuration of these environment variables is done into the project.

Screenshot of a project’s project environment variable page with five sections outlined
  1. Verify your location to make sure you’re accessing project environment variables.

    • You should see links to jobs, pipelines, and apps in the data management menu.

    • In settings menu, you’ll see environment variables and Docker credentials.

  2. Additionally, you can use the breadcrumbs to verify your location. When working with project environment variables, you should see Projects followed by your project.

  3. In the top bar, you’ll see:

    • when the list of variables was last updated,

    • access to the project settings, and

    • a button to create a new project variable.

  4. Search for project environment variables by name only.

  5. The list of environment variables inside of the project includes the name and description of the variable, as well as a icon you can select to copy the variable. There is also a badge indicating whether the variable is global or project.

    You can view both global and project environment variables within a project, but you can only create or edit project variables.

    There is also the option to override global environment variables within a project.

4.5. View and edit variables

To view the details for an environment variable, select it. Doing so will open a panel with the variable’s details.

This is where you can edit a variable’s name, description, and value.

You can only edit global variables from the project library page, and you can only edit project variables from the project overview page.

When you open the details for a global variable from the project environment variables list, you will see the option to override the variable for the current project only.

5. Docker credentials

Some types of jobs and apps use Docker images. When a Docker image is private, you’ll need to provide Docker credentials so that your Saagie platform will have access to the image.

Docker images are project-specific (not global) and can only be used in the project in which they are added. You can add the same Docker credentials to multiple projects.

Information needed:

  • You’ll provide the type of credentials (Docker Hub or private Docker registry), as well as your username and password.

  • If you’re adding a private Docker registry, you’ll also provide the registry’s name.

  • You can delete your Docker credentials at any time.

Saagie does not receive any type of list of the images accessible with your Docker credentials.
Screenshot of a project’s Docker credentials page with four sections outlined
  1. The breadcrumbs in the top bar display your current location, which, in this case, shows your current project. Any Docker credentials present or added here are only available for this project.

  2. In the top bar, you’ll see:

    • when the list of credentials was last updated,

    • access to the project settings, and

    • a button to add new credentials.

  3. Search for Docker credentials by name only.

  4. The list of Docker credentials shows the type of credential, the name, and when the credentials were added.

5.1. Credential details

Each set of Docker credentials can be opened to reveal the following:

Screenshot of a the details of a set of Docker credentials
  1. You can update the type of credentials as well as your username and password whenever you need to. If you change from Docker Hub to a private registry, you’ll also need to add the registry’s URL.

  2. You’ll see whether your credentials are used in any jobs or custom apps.

    • In this example, the credentials have not been used with any jobs or apps.

    • If your credentials have been used, a searchable list of all jobs and apps using the credentials will appear here.

  3. This section also shows when your Docker credentials were added to the project.

  4. Finally, you can delete your credentials at any time.

    If your Docker credentials are used by any jobs or custom apps, deleting them might cause problems for those jobs or apps.