Configuration files
To run analyses in TrustInSoft CI, a configuration is required for the GitHub repository to analyze. This configuration can:
either be written in the Project settings page (in the
Build configuration
section) (and is called a Global configuration),or be committed with files in the GitHub repository inside a
.trustinsoft/
directory at the root of the repository (and is called a Committed configuration).
This configuration includes:
the optional Build preparation stage, to prepare the repository to be analyzed,
and the required Analyses configuration, to describe the list of analyses.
While set-upping a project, you will have to chose between using a Global configuration (written in the Project settings page) or a Committed configuration (committed in the .trustinsoft/
directory of the GitHub repository), according to the following advantages and disadvantages:
Global configuration
Committed configuration
➕ Easy set-up without updating your repository
➖ Requires to modify your repository by committing files
➕ Common to all branches, tags, and pull requests
➕ Each branch, tag or pull request can have its own unique configuration
➖ Replaying a build will use the current global configuration (and not the one used for the build)
➕ Replaying a build will use the same configuration of the associated commit
➕ The Analyses configuration can be generated during the Build preparation stage
In simple words, if you need to have a different configuration for several branches, tags or pull requests, a Committed configuration should be chosen. Otherwise, a Global configuration should be enough to set-up your project.
A single project can use both a Global configuration and a Committed configuration.
In this case, when a build is run, if a .trustinsoft/
directory exists for the commit associated to this build, then the Committed configuration is used (and the Global configuration is completely ignored). Otherwise the Global configuration is used.
A single build cannot used a mixed of a Global configuration and a Committed configuration.
Each build indicates whether it is using a Global configuration or a Committed configuration.
Last updated