Page tree
Skip to end of metadata
Go to start of metadata

Summary: describes how to work with CAST AIP Extensions within the AIP Console.

How does the AIP Console provide access to extensions?

The AIP Console provides two methods to work with extensions, these are explained below. In each case, when an extension needs to be fetched either from CAST public Extend servers or from an on premises Extend local server, the following will be used on the relevant AIP Node:

AIP Console ≥ 1.25ExtendCli.exe
AIP Console ≤ 1.24ExtensionDownloader.exe

Included extensions

This section will not be populated for new Applications until you add a new version and its status is a minimum of "Delivered".

Included extensions are the extensions that are active and used when you run an analysis for a specific Application version. Extensions that are used when you run an analysis are automatically determined by AIP Console and are installed for every single source code Version you deliver - this means that each Version will have a specific set of extensions enabled and active, tailored to the source code that needs to be analyzed. You can also manually include additional extensions that have not been included automatically, if necessary.

Extension origin priority

AIP Console obtains details about which extensions to use and where to get them from, from several different sources - these are known as the extension "origin":

When an extension has multiple "origins", AIP Console uses a priority system to determine which "origin" should be used to include the extension in a given Application version. The priority used is as follows:

≥ 1.21.0-funcrel

CUSTOM are overwritten by SHIPPED which are overwritten by DISCOVERED which are overwritten by FORCE_INSTALL

≤ 1.20.0-funcrel

CUSTOM are overwritten by DISCOVERED which are overwritten by FORCE_INSTALL which are overwritten by SHIPPED


  • CUSTOM = Extensions that are manually "included" in a given version of an Application using the AIP Console interface
  • SHIPPED = Extensions that are shipped with AIP Core on the relevant AIP Node
  • DISCOVERED = Extensions that AIP Console automatically determines (during the source code delivery) must be installed for a given version of an Application
  • FORCE_INSTALL = Extensions selected by a user with the ADMIN role for use during an Application analysis (see Administration Center - Settings - Extensions Strategy for more information)

Extension categories

Extensions fall into the following categories:

Automatically active / shipped extensions
These extensions are shipped with AIP Core on the target AIP Node used by your Application (they are delivered in the shipped_extensions folder in the AIP Core installation on the target node and are moved into %PROGRAMDATA%\CAST\CAST\Extensions during the Application creation process). Typically these are critical extensions such as:

These extensions are "flagged" as follows:

The behaviour of these extensions is as follows:

AIP Console ≥ 1.11.0

During source code delivery, if any of these extensions is ALSO detected as Discovered or is set as Force Install (see below) then the AIP Console will automatically fetch the most recent release of the extension, depending on the strategy in place (Version Range - Alpha/Beta/Funcrel/LTS - and Version number lock).

For example if the default strategy is in place, then a more recent release of the extension will be auto downloaded and installed (if it exists) and this may include an alpha or beta release if it is the most recent.

AIP Console ≤ 1.10.0During source code delivery, AIP Console will use the release of the extension shipped with AIP Core and will not automatically fetch a newer release.
Discovered

Discovered extensions are flagged as follows:

Any extension that is flagged as Discovered has either:

Note that:

  • if this "discovered" extension is not present on the target AIP Node used by the Application (in %PROGRAMDATA%\CAST\CAST\Extensions), then depending on the strategy in place (Version Range - Alpha/Beta/Funcrel/LTS - and Version number lockAIP Console will download the most recent version of the extension from CAST Extend automatically during the Application analysis.
  • if this "discovered" extension is already present on the target AIP Node (in %PROGRAMDATA%\CAST\CAST\Extensions), whether because it is shipped with AIP Core, or because it has been downloaded manually on the target AIP Node previously, then AIP Console will first check whether a newer release of the extension exists on CAST Extend, and depending on the strategy in place (Version Range - Alpha/Beta/Funcrel/LTS - and Version number lock) it will download the most recent version of the extension from CAST Extend automatically during the Application analysis.
  • AIP Console will not, in general, auto install User Community or Labs extensions (any extension with an ID like com.castsoftware.uc.nameoftheextension or com.castsoftware.labs.nameoftheextension). There are some exceptions to this, for example, the following User Community extensions that provide "Universal Analyzer" technology to perform analyses may be installed if the relevant source code is discovered. This includes extensions such as:
Force Installed

These extensions are flagged as Force Installed as follows:

Any extension that is flagged as Force Installed has been specifically selected by an Admin user for use during an Application analysis (see Administration Center - Settings - Extensions Strategy for more information).

Manually included

These are extensions that you have decided to add yourself manually from the Available panel. These extensions will be downloaded and stored on the AIP Node used by the Application.

Note that these extensions are not "flagged" in any specific way in the AIP Console interface, however, they could additionally be flagged as Discovered or Force Installed.
Product / User Community / Labs

An extension always falls into one of three categories, explained in Contributor types:

Product
User Community
Labs

Available extensions

This section will not be populated for new Applications until you add a new version and its status is a minimum of "Delivered".

Available extensions are extensions that are not active for the current version, but can be included manually if you wish to:

Working with included extensions

Included extensions are those that will be used when you analyze a version.

Any changes you make, such as adding new extensions via the Available option, or changing the version number of an existing included extension, require action before the changes will be taken into account:

  • you can run an analysis to ensure that the changes are taken into account. Running just a snapshot without an analysis will not implement the changes you have made.
  • In ≥ 1.18, a yellow banner will appear at the top of the screen with an option to run the extension installation action on its own without having to run an analysis, or to run an analysis (which includes the install extensions step in ≥ 1.19):

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

Find the relevant Application - extensions are always installed on a "per Application basis" - in this example it is called "MEUDON":

Click the Extensions option on the left (click to enlarge):

A list of included extensions is displayed:

Click to enlarge:

Switching Application versions

Extensions will be used on a per Version basis - use the drop down list to switch to a different Application Version and view the included extensions for the specific Version:

Click to enlarge:

Changing the version using this version switch and then clicking the Run analysis/Snapshot button  in the same screen will not run the analysis/snapshot on the active version chosen in this screen. The analysis/snapshot will be run on the Version that is Accepted.

Enable auto configuration

In the majority of situations you should let AIP Console manage the discovery of extensions, however, when running a rescan to perform a consistency check (for example), you may sometimes need to remove a particular extension to maintain identical results, therefore this option controls the ability to remove Discovered extensions:

Behaviour of the option:

  • when enabled (default position), it is not possible to remove discovered extensions.
  • when disabled, it is possible to remove an extension that has been discovered by AIP Console using the delete icon - this icon will appear when the Enable auto configuration option is toggled to disable:

Note that a Global Configuration setting called Enable auto update is also available which functions when Enable Auto Configuration is enabled.

Changing Extension version

You can change the extension version that will be used in the next Application analysis by clicking the extension version drop down and selecting the version you require:

Click to enlarge

  • The new version of an extension must be higher than the existing version.
  • an Admin user may have implemented an extension strategy and therefore you may not be able to change the version of the extension, or the extension version you are looking for may not be available.

Filtering included extensions

You can filter extensions so that it is easier to see exactly what is being used:

DiscoveredShow only Discovered extensions
Force InstalledShow only extensions that are Force Installed.
UpdatesShow only extensions where a newer version is available.

Using the Change Forecast tool

The Change Forecast tool is provided at https://extend.castsoftware.com/change-forecast/ to help you prepare for an upgrade of a given extension. The tool provides the ability to choose two extension releases (i.e. the current extension you are using and the target extension you want to upgrade to) and view the changes that have occurred between the two releases. Knowing what has changed enables you to understand the impacts of upgrading your extension release on your existing analysis results. Changes inlude updates such as:

  • resolved issues
  • new features
  • other modifications

AIP Console has a built in utility that will allow you to consult the Change Forecast tool directly from the AIP Console interface. Click the "i" icon highlighted below:

This icon will load the Change Forecast tool in your browser (external access to https://extend.castsoftware.com is required), with a list of the extensions that have updates available. This allows you to view the changes that have been added in the updated releases of the extensions:

Working with available extensions

When working within the Extensions option, click the Available tab to view the extensions that have not been used in an analysis, but can be included manually if you wish. You can now view a list of additional extensions that can be included and activated when you analyze and generate a snapshot:

Note that an Admin user may have implemented an extension strategy and therefore the extension you are looking for may not be available.

Include an available extension

First select the Application Version you want to include the extension in - the most recent will be displayed by default:

Then choose the extension version you require by clicking the extension version drop down and selecting the appropriate version:

Click to enlarge

Click INCLUDE to include the extension in the chosen Application version. The extension will then be visible in the Included tab for the specific version you chose. When you analyze and generate a snapshot for this Application version, the extension will be installed and used:

Note that an Admin user may have implemented an extension strategy and therefore you may not be able to change the version of the available extension.

Filtering available extensions

You can filter the type of extension you want to install:

See the following for more information about the filters:

  • No labels