Skip to main content

Administrator User Interface

The role of the administrators is to manage the organisation resources and users. In particular, the admin will be able to perform the following operations:

  • Select the Control Version System and configure its connection to AIchor;
  • Add projects from GitHub or GitLab or BitBucket, Azure DevOps
  • Create a new project and link a Git repo;
  • Assign seats and Invite users to the project.

The organisation and login pages of the AIchor platform looks like the following:

alt text

alt text

Engines management

The first icon on the left of the page, is the engines management icon.
On this page, the administrator will be able to create engines where the workload will be running.

AIchor supports 4 engine set-ups:

  • SaaS: Administrators come with their code only. They require to only train their model and do not have any requirements in terms of where the workload will be running.

  • In the Cloud:
    Administrators already have an account in one or more cloud providers. The objective is to run the workload on their accounts by either creating engines through AIchor or by importing an already existing engine, created beforehand.

  • Hosted:
    Administrators are running their workload on InstaDeep infrastructure for security/confidentiality reasons. This will mean that InstaDeep on premise infrastructure will be used.

  • On Premise: Administrators have a ready-to-use kubernetes cluster on their public/private cloud and AIchor will import the cluster where the workload will be running.

In each of the previous set-ups, a form has to be filled to import or create the engine. Engines forms are detailed in the section Engine Management.

alt text alt text

Add VCS Providers

AIchor needs to have access to the preferred Version Control System (VCS) provider of the organisation to pull the repos from. Currently, AIchor supports GitHub, GitLab, BitBucket and Azure DevOps. Upon first login into the AIchor platform, the administrator will need to click on the “Version Control System” link located in the top menu to configure the access to the platform of the version control system providers where the repositories are located.

alt textalt text

GitLab

For GitLab, the steps are as follows: After selecting GitLab and entering a different url if needed, then clicking on button “Next” redirects the administrator to a form where he will need to enter the name, application ID and secret ID. Then he will need to click on the button “Create” for the VCS connection to be established.

alt textalt text

The Application details need to be directly generated from the GitHub/GitLab user interface.

  • Click on the link next to "register a new OAuth Application", and a new tab on Gitlab will be opened;

  • On that page, enter:

    • Click "Add new application" button alt text

    • Enter a Name;

    • Redirect URI: This is the URL where users are sent after they authorize with GitLab;

    • Under “Scopes”, tick the option “api” that grants complete read/write access to the API including all groups and projects, the container registry, and the package registry.

  • After clicking the “Save application” button the administrator will be taken to the new application page where he will be able to get the Application and Secret IDs:

    • The OAuth 2 Client ID in the Application ID field;
    • The OAuth 2 Client Secret, accessible: In the Secret field in GitLab 14.1 and earlier. Using the Copy button on the Secret field in GitLab 14.2 and later.

alt text

  • Copy the application ID and secret ID on AIchor along with the same name entered on GitLab and click "Create".

GitHub

For GitHub, the steps are as follows:

NOTE An administrator on GitHub needs to create the VCS on AIchor and provide access to relevant repositories.

  • Click "Next"

  • Click on the link next to "register a new OAuth Application", and a new tab on GitHub will be opened;

  • On that page, enter:

    • Application name; alt text
  • Enter the app name on AIchor

  • Select whether to access selected repositories or all the repositories in GitHub Organisation. alt text

BitBucket

For BitBucket, the steps are as follows:

  • Open the BitBucket account and go to the considered workspace as detailed on AIchor page and select Add OAuth consumer;

  • On the consumer page, enter:

    • Name;
    • Callback URL from AIchor page;
    • URL from AIchor page;
  • After clicking "Save", the administrator will be taken to a page where he will be able to get the key and Secret;

alt text

  • Copy the key and secret on AIchor along with the same name entered on BitBucket and click "Create".

Azure DevOps

For Azure DevOps, the steps are as follows:

  • Select Azure DevOps VCS:

alt textalt text

  • Follow the steps described in the interface:

alt textalt text

  • Add "New registration"

alt text

  • Enter a name for the application and select "Single tenant" option and register the application:

alt text

  • Search for "Azure DevOps organizations" on Azure console and navigate to "My Azure Organizations":

alt text

  • Create a new organization:

alt text

alt text

  • Create a new project in the organization:

alt text

  • Go to "Organization settings" in the bottom left corner:

alt text

  • Paste the name of the application registered, "Basic" Access level, select the project created in the organisation, and select "Project Administrator" and "Add:

alt text

  • Finally, get the application ID from the application created at the beginning.

Delete VCS

The administrator will be able to delete the Version Control System linked to his organisation (only if there are no projects associated) by clicking on the “Version Control System” link on the top menu:

alt textalt text

Projects Management

The Projects Dashboard is accessible from the left menu by clicking on “Projects”. The first time the administrator logs into the interface the project dashboard will be empty. On successive occasions and after creating projects, the administrator will be presented with the list of the projects that are part of his organisation. The list will be made up of the project name, the project creation date and a link to the Git repo from where it has been pulled. The administrator is able to filter on the names of the projects.

alt textalt text

Create New Project

On the left hand side of the menu, and after clicking on the “Create new project” button, the administrator will be guided through the project creation wizard, which is made up of the following steps:

  • "Create a new project": The administrator enters the name of the project

alt textalt text

  • "Select the target engine" : The administrator selects the target engine for the project

alt textalt text

  • “Select a VCS”: The admin will be asked to select the Version Control System provider he wants to connect to. After clicking on “Next”, he will need to select a repo from the VCS provider;

alt textalt text

  • “Select Repo”: The admin user will need to click on the desired repository from the displayed list. The list has been pulled from GitLab/GitHub after the administrator provided his connection details. There is a filtering option provided for quick access. To continue with the set-up, the admin should click on the “Next” button;

alt textalt text

  • “Select Members”: After selecting a repository in the previous step of the workflow, the list of users assigned to the repo will automatically be fetched from GitHub/GitLab. The information displayed per user is made up of the following fields:

    • GitHub/GitLab avatar;
    • Full name.

alt textalt text

In addition to those fields, there is an input text form so the administrator can introduce the email address of the user of his organisation he wants to assign a seat in AIchor Platform. Note that by default there are allowed up to five seats per project. The administrator should click on the checkbox menu item to select users and click on “Create”.

When a project is created in AIchor, project members will receive two types of notifications via email. One is an invitation to join the organisation and create an account. The second indicates that they are now members of a project in AIchor. Note the following:

  • The username of the AIchor account will be the email address of the user;
  • The provided link will be generated with an expiration time of 2 days;
  • In this initial version of the AIchor platform the administrator will not be able to remove or change the users. This functionality will be added in future versions.

Configure Projects

The administrator can add/Delete users to/from the projects.
If an invitation has expired, a button to "Resend Invitation" is displayed.

alt textalt text

In the configuration section, administrators can:

Project switch

Switch a project from an engine to another created or imported engine. Only the below transitions are allowed at the moment:
From GKE to GKE From onPrem to GKE From GKE to onPrem From EKS to EKS From Azure to Azure

alt text alt text

  • Switch a project from GitLab VCS to GitHub VCS. This allows administrator to seamlessly use AIchor after migrating a repo from GitLab to GitHub and vice versa.

alt text alt text

Note:

If you switch:

  • Running jobs would continue to run on the cluster they currently are running on.
  • New experiments will be scheduled to the newly switched cluster

PVC management

  • Manage PVCs on projects, by creating them, extending them and deleting them. To create a PVC, the administrator should specify:
    PVC Name: Name of the PVC
    Size of the PVC: Size in MiB
    StorageClass: AIchor retrieves available storage classes in the considered engine
    Access Mode: The administrator should specify the access mode for the selected storageClass (one of 4 possible values: RWX, RWO,ROM, ROO)

alt text alt text

Labels management

Administrators are able to add labels on the projects. Labels are key/value pairs that are applied can be used for governance or cost management purposes.
Labels will be applied on namespaces and other cloud resources (buckets, registries).

alt text alt text

Project deletion

Users can also delete a project only if it has no experiments.

alt textalt text