JavaScript is not currently enabled, but is required for full CodeSonar manual search and browse functionality.

If you are viewing this file in your hub's Web GUI, enable JavaScript in your browser: you will also need it for GUI functionality.

If you opened this file directly from disk, your browser may be directly suppressing JavaScript functionality: certain browsers perform this suppression on local files (but not files delivered by web servers) for security reasons.

CodeSonar® 9.2p0 CONFIDENTIAL CodeSecure Inc
General

Project Tree

A project tree is a hierarchical structure for managing CodeSonar projects.

Project trees are securable resources.



A project tree is a hierarchical structure for managing CodeSonar projects.

Project trees allow you to control access to analysis information at a coarser granularity than a single project, while also providing the opportunity to impose an overall structure that reflects the relationships that exist within your organization's code base.

The root project tree is created when the hub is created, and cannot be deleted. Users (with sufficient permissions) can create further levels of project trees under the root at any time, but this is not required: some organizations will prefer to maintain a 'flat' structure where every project is a child of the root project tree.

diagram: project tree hierarchy example

Properties

Name Description
PTree Name
The name of the project tree.
The root project tree is named root; its name cannot be modified.
PTree ID
A unique ID for the project tree. The main place that users see the PTree ID is in the URL for the Project Tree page.
The root project tree has PTree ID 1.
PTree Description
A user-specified string containing a description for the project tree.
The root project tree has no description; its description cannot be modified.
Created The date and time at which the project tree was created.
Parent Project Tree Every project tree has exactly one parent project tree, except for the root project tree which has no parent.
PTree Path Derived from Parent Project Tree and PTree Name: the full path through the project tree inheritance hierarchy from the hub's root project tree to this project tree.

The PTree Path for a project tree is always displayed and specified as a /-separated sequence of PTree Name. This string can be recursively constructed for a project tree T as follows.

  • If T is the root project tree, its PTree Path is /.
  • Otherwise, T's PTree Path is parent_path/ t_name, where
For example, suppose we have a project tree T whose name is Tname.
  • If T is the root project tree, the PTree Path for T is /.
  • If T is a child of the root project tree, the PTree Path for T is /Tname.
  • If T is a child of a project tree named Sname that is itself a child of the root project tree, the PTree Path for T is /Sname/Tname.
Ancestors Derived from Parent Project Tree: the full path through the project tree inheritance hierarchy from the hub's root project tree to the Parent Project Tree.

The Ancestors for a project tree are always displayed and specified as a /-separated sequence of PTree Name, with a leading / representing the root project tree. This string can be recursively constructed for a project tree T as follows.

For example, suppose we have a project tree T whose parent project tree S is named Sname.
  • If S is the root project tree, the Ancestors string for T is /.
  • If S is a child of the root project tree, the Ancestors string for T is /Sname.
  • If S is a child of a project tree named Rname that is itself a child of the root project tree, the Ancestors string for T is /Rname/Sname.

Creating and Deleting Project Trees

Project trees can be created and deleted as shown in the following table.

Project Tree Operation Permissions Required Method
Add a new project tree
as a child of project tree U
PTREE_ADD_CHILD U

You can add a new project tree as a child of project tree U...

  • ... from the Project Tree page for U, in the Create Project Tree section.
  • ... if U is the root project tree: from the GUI Home page, in the Create Project Tree section.
Delete project tree T PTREE_DELETE T
PTREE_DELETE S for all project trees S in the subtree under T
PROJECT_DELETE P for all projects P in the subtree under T
ANALYSIS_DELETE A for all analyses A in the subtree under T
Suppose T is a project tree whose parent project tree is U. Then you can delete T ...
  • ... from the Project Tree page for T, in the Project Tree Details section.
  • ... from the Project Tree page for U, using the Remove Projects button.
  • ... if U is the root project tree, or you do not have PTREE_READ U: from the the Home page, using the Remove Projects button.
The root project tree cannot be deleted.
Change the parent project tree of tree T
from U to V
PTREE_WRITE T
PTREE_ADD_CHILD V
Suppose T is a project tree whose parent project tree is U. Then you can change the parent project tree for T...
  • ... from the Project Tree page for T, in the Project Tree Details section.
  • ... from the Project Tree page for U, using the Move Projects button.
  • ... if U is the root project tree, or you do not have PTREE_READ U: from the Home page, using the Move Projects button.
The root project tree has no parent project tree and cannot be moved.
Change the PTree Name or PTree Description for project tree T PTREE_WRITE T You can change the name and description for T from the Project Tree page for T, in the Project Tree Details section.

The root project tree name and description cannot be modified.

Accessing Project Tree Information

Project tree information is available in the CodeSonar GUI as follows.

Project Tree Full information about a single project tree and its children (projects and project trees).
Project Tree Role-Permissions View and modify role-permissions for a single project tree.
Home Full information about the root project tree and its children (projects and project trees).
 

To report problems with this documentation, please visit https://support.codesecure.com/.