projects.json
The projects.json
aims at describing the repositories grouped by project that
will be shown on the dashboards.
The project file enables the users to list the instances of the software development tools to analyse, such as local and remote Git repositories, the URLs of GitHub and GitLab issue trackers and the name of Slack channels. Furthermore, it also allows the users to organize these instances into nested groups, which structure is reflected in the visualization artifacts (i.e., documents and dashboards). Groups can be useful to represent projects within a single company, sub-projects within a large project such as Linux and Eclipse, or the organizations within a collaborative project.
- First level: project names
- Second level: data source and metadata
- Third level: data source URLs
There are some filters, labels, and a special section:
--filter-no-collection=true
: This filter is used to show old enriched data within the dashboards from repositories that don’t exist anymore in upstream.--filter-raw
and the sectionunknown
: The data sources will only be collected at the sectionunknown
but this allows user to add the same data source in different sections to enrich using the filter--filter-raw
.- Label ` –labels=[example]
: The data source will have the label of
example` which can be used to create visualisations for specific sets of data - Section
unknown
: If the data source is only under this section it will be enriched as projectmain
.
{
"Chaoss":{
"gerrit":[
"gerrit.chaoss.org --filter-raw=data.projects:CHAOSS"
],
"git":[
"https:/github.com/chaoss/grimoirelab-perceval",
"https:/github.com/chaoss/grimoirelab-sirmordred"
],
"github":[
"https:/github.com/chaoss/grimoirelab-perceval --filter-no-collection=true",
"https:/github.com/chaoss/grimoirelab-sirmordred --labels=[example]"
]
},
"GrimoireLab":{
"gerrit":[
"gerrit.chaoss.org --filter-raw=data.projects:GrimoireLab"
]
},
"unknown":{
"gerrit":[
"gerrit.chaoss.org"
],
"confluence":[
"https://wiki.chaoss.org"
]
}
}
In the projects.json
above:
- The data included in the repo
gerrit.chaoss.org
will be collected entirely since the repo is listed in theunknown
section. However only the projectGrimoireLab
will be enriched as declared in theGrimoireLab
section. - In the section
Chaoss
in the data sourcegithub
the repositorygrimoirelab-perceval
is not collected for raw index but it will enriched in the enriched index. - In the section
GrimoireLab
the metadata will showed in the enriched index as extra fields. - In the section
unknown
the data sourceconfluence
will be enriched as the projectmain
.