######################### Reporting Plugin Concepts ######################### The prerequisite for this section is a basic understanding of the DevOps Insight feature which can be found in the CloudBees Flow Userguide. Terminology ############ Release Command Center (RCC) ============================= Refers to a DevOps Insight Dashboard meant for Releases. Release Activities =================== Type of Software Development Related Activities that happen in a Release such as User stories, Continuous Integration, Testing, Deployment etc., Stages ======= The stages of a Release for example Planning, Dev, Build, Test etc., Activity Metrics ================= Measurements that pertain to a Stage of a Release Activity. Data Providers =============== Third Party Products that provide the core functionality required to perform a Release Activity and the data associated with that activitiy. Data Source =============== CloudBees flow representation of the Data Provider based on the Release Activity. Object Type ============= Represents a type of Release Object in CloudBees flow. This is a list of currently supported Objects. - Build - Build Commit - Code Commit - Defect - Deployment - Feature - Incident - Job - Pipeline Run - Quality - Release Report Object ============== Represents the Report generated corresponding to a Release Object. Usage of Plugins in RCC ######################## Plugins can be used to report data from Data Providers to DevOps Insight by virtue of implementing certain Procedure Interfaces. For example a Plugin can report User Story data to DevOps Insight by running a JQL on a regular basis, which in turn can be used by the User Story widget to display User Story Metrics in the Planning Stage. Usage of reporting in pluginspec.yaml ###################################### The features key here represents a dictionary of fields required to create the RCC Procedure Interface in the plugin. Salient fields are described below. - sourceName represents the Data Source. For example JIRA. - supportedPayloads represents the Release Object section. In the snippet below the Release object is **build**. - parameters represent the Collect Reporting Procedure interface. This procedure will implement the logic to collect data from the Data provider and report it to DevOps Insight. .. code:: yaml devOpsInsight: datasourceName: 'Sample Reporting Source' supportedReports: - reportObjectType: build parameters: - name: ReportParam1 documentation: Sample reporting parameter type: entry required: true label: Test 1 - name: ReportParam2 documentation: Sample reporting parameter type: entry required: true label: Test 2