Application onboarding with Fast Scan - onboard your application source code

Start the onboarding

To onboard an application, your Console login must have the Admin or Application Owner role.

Move to the Console screen if you are not already there:


Click the Onboard application button:

Define your application and source code

After clicking Onboard application, the following screen is displayed allowing you to define your application and source code:

1Application name

Enter a name for the application that represents the source code you are uploading:

  • The following characters are not authorized in Application names: \ / : * ? " < > | &
  • Identical Application names are not authorized.
  • Application names are case insensitive, therefore attempting to create an application called TEST when test already exists will result in an error.
  • The application will NOT be created until the analysis action is started.

Corresponding schema names created on the CAST Storage Service/PostgreSQL instance

All applications require a set of database schemas in which analysis results are stored:

The naming of these schemas follows specific rules as outlined below:

  • Each schema uses the following suffixes:
    • _mngt = Management schema
    • _local = Analysis schema
    • _central = Dashboard schema
  • The prefix is derived from the chosen application name.

The following constraints are imposed by CAST Storage Service/PostgreSQL:

  • A valid CAST Storage Service/PostgreSQL schema name is a string of 63 or fewer characters.
  • The schema name must begin with a letter or an underscore (_).
  • Subsequent characters can be letters, underscores or digits (0-9).
  • Schema names beginning with "pg_" are reserved for system purposes and therefore cannot be used.

Taking into account the constraints mentioned above, Console does the following list of transformations to generate a prefix from the given application name, in this example: *8App_Prod! (main.app)

  • take the application name and put it in lower case: *8-app_prod! (main.app)
  • replace space, dash "-" or dot "." and replace with an underscore: *8_app_prod!_(main_app)
  • remove all invalid characters (the characters that are not letters, underscores or digits (0-9)): 8_app_prod_main_app
  • if the prefix starts with a digit or "pg_", add an underscore before: _8_app_prod_main_app
  • if the prefix is longer than 55 characters (63 - 8 characters for suffix) reduce it to 55 by removing the last characters, giving:
    • _8_app_prod_main_app_mngt
    • _8_app_prod_main_app_local
    • _8_app_prod_main_app_central
  • if a schema with the chosen prefix already exists:
    • if the prefix is longer than 52 characters (55 - 3 characters for counter) reduce it to 52 by removing the last characters
    • for a counter from 01 to 99 add counter suffix and check if schema exists:
      • _8_app_prod_main_app_01
      • _8_app_prod_main_app_02
      • ...
      • _8_app_prod_main_app_99 
    • if all possible schemas exist then generate schema prefix from the application guid, giving the following:
      • uuid_5446d035_7d96_4f16_853e_a1b89e044029_mngt
      • uuid_5446d035_7d96_4f16_853e_a1b89e044029_local
      • uuid_5446d035_7d96_4f16_853e_a1b89e044029_central
2Domain name (optional)

Enter a domain name (optional):

  • if this is the first Application you are adding, no domain names will exist - you can therefore either enter the name of a domain and this will be created when the Application is added, or leave the field blank in which case the Application will not belong to any domain (listed under No Domain).
  • if you have already added an Application and created a domain at the same time, or you have manually added a domain, all existing domains will be offered in a drop down list. Selecting one will assign the new Application to the existing domain.
  • The following characters are not authorized in Application names \ / : * ? " < > | ( )
  • A "domain" is a method of grouping Applications together so that user roles can be assigned to all the Applications in a given Domain. Domains are managed in the Administration Center.

3License key

This field is visible only when the Named Application license key scope has been chosen by the administrator when Console was initialized (see Complete start-up wizard - v. 2.x). It enables you to input the specific license key for the Application you are creating. The license key MUST match the name of the Application you are creating.

4Nodes (optional)

Available in ≥ 2.9 when using Enterprise mode.

This field is only visible when you have multiple Nodes configured in CAST Console. It enables you to choose a specific Node for the initial Fast Scan process (the subsequent deep analysis will also be locked to this specific Node and it will not be possible to change it - this is to ensure stability). For example you may have two Nodes: one running AIP Core 8.3.40 and one running AIP Core 8.3.50, and you want to specifically use the more recent Node for this application - in this scenario, ensure you choose the Node you require here:

If you do not choose a Node (i.e. you leave the option the default position set to Any), then Console will function in load balancing mode:

  • The node running the most recent release of AIP Core will always be used before all others.
  • If there are multiple nodes running the same most recent release of AIP Core, then Console will choose the least busy node.

In previous releases where this option is not available, Console will also function in load balancing mode as described above.

5Upload source code

Choose either to upload a ZIP archive file, or select the code from a dedicated folder (see Administration Center - Settings - Source Folder Location) - note that if no dedicated folder has been configured, this option will not be visible. The Replace option allows you to change the source code you have selected.

6Fast ScanClick Fast Scan to start the onboarding process. See below.

Start the Fast Scan

When you have chosen an Application name, entered a License Key (if you are using Named Application license keys) and you have chosen your source code, the Fast Scan button will become available. Click this to start the Fast Scan process:

The following screen is then displayed:

You can also view more detailed progress using the flashing icon in the bottom left corner:

What happens during a Fast Scan?

The following occurs when the Fast Scan is launched:

Create Delivery folder

This step creates a folder in the default delivery folder location, specific to the current application. This folder contains information about the current application and is located here by default (but this location may have been customized):

  • Enterprise mode > shared folder location, i.e.: \\server\aip-node-data\delivery\<random_guid>
  • Standalone modeC:\ProgramData\CAST\AIP-Console-Standalone\delivery\<random_guid>
Unzipping source

This step is only actioned if you have chosen to upload source code from a ZIP archive file. The unzipped source code is placed in the following location (but this location may have been customized)

  • Enterprise mode > shared folder location, i.e.: \\server\aip-node-data\common-data\upload\<application_name>
  • Standalone modeC:\ProgramData\CAST\AIP-Console-Standalone\shared\upload\<application_name>
Initialize fast scanCreates data about the application and stores it in the Delivery folder created earlier.
Content discovery

Scans the uploaded source code and attempts to extract the following information:

  • Frameworks in use - e.g. Entity, ServiceStack(C#), ADO.NET, etc.
  • Languages in use - e.g. ASP, C#, CASTExtraction, CSS, Conf, HTML, SQL etc.
  • File extensions of delivered files

The information detected in this step is used for the display in the Application - Overview with Fast Scan page.

What next?

The next step is described in Application onboarding with Fast Scan - validate the Fast Scan.