From 2df5c20214506ed9e337f30a47ee00fa3bf3d8c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Thu, 9 Jan 2025 10:38:18 +0100 Subject: [PATCH 01/25] First version of GitHub pipeline observability MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/.gitignore | 2 + github_pipeline_observability/README.md | 108 + github_pipeline_observability/manifest.yaml | 22 + .../c987eb44-e834-44d8-8c28-9c24a016df41.json | 1298 +++++++++++ .../document-dashboard/config.yaml | 31 + .../d589113d-d8c4-4687-afe7-39d639f168b3.json | 2015 +++++++++++++++++ .../openpipeline/config.yaml | 13 + .../openpipeline/events.sdlc.json | 1673 ++++++++++++++ 8 files changed, 5162 insertions(+) create mode 100644 github_pipeline_observability/.gitignore create mode 100644 github_pipeline_observability/README.md create mode 100644 github_pipeline_observability/manifest.yaml create mode 100644 github_pipeline_observability/pipeline_observability/document-dashboard/c987eb44-e834-44d8-8c28-9c24a016df41.json create mode 100644 github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml create mode 100644 github_pipeline_observability/pipeline_observability/document-dashboard/d589113d-d8c4-4687-afe7-39d639f168b3.json create mode 100644 github_pipeline_observability/pipeline_observability/openpipeline/config.yaml create mode 100644 github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json diff --git a/github_pipeline_observability/.gitignore b/github_pipeline_observability/.gitignore new file mode 100644 index 0000000..01fb216 --- /dev/null +++ b/github_pipeline_observability/.gitignore @@ -0,0 +1,2 @@ +environment_variables.txt +manifest_local.yaml \ No newline at end of file diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md new file mode 100644 index 0000000..9aee3da --- /dev/null +++ b/github_pipeline_observability/README.md @@ -0,0 +1,108 @@ +# GitHub Pipeline Observability Package + +To leverage the GitHub Pipeline Observability Package, two steps are required: +* Configure Dynatrace OpenPipeline and upload Dashboards +* Configure GitHub to send Webhook events to Dynatrace + +## Configure Dynatrace OpenPipeline and upload Dashboards + +### Prerequisites + +1. [Install Dynatrace Configuration as Code via Monaco](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/installation) +2. [Create an API token](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/manage-configuration#prerequisites) and store as environment variable +``` +$env:DT_ENV_TOKEN +``` + +3. [Create an OAuth client](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/guides/create-oauth-client) with the following permissions and store as it as environment variables: + * "Scopes" + +``` +$env:OAUTH_CLIENT_ID +$env:OAUTH_CLIENT_SECRET +``` + +4. (Optional) Download this repository and go to `github_pipeline_observability` +``` +git clone +cd github_pipeline_observability +``` + +5. Edit the `manifest.yaml` to configure your environment: +``` +manifestVersion: 1.0 +projects: + - name: pipeline_observability +environmentGroups: + - name: group + environments: + - name: + url: + type: value + value: + auth: + token: + name: DT_ENV_TOKEN + oAuth: + clientId: + name: OAUTH_CLIENT_ID + clientSecret: + name: OAUTH_CLIENT_SECRET + tokenEndpoint: + type: environment + value: OAUTH_TOKEN_ENDPOINT +``` + + +### Apply Monaco configuration + +#### OpenPipeline configuration for Software Development Lifecycle is empty + +To configure Dynatrace for GitHub pipeline observability, a OpenPipeline and two Dashboards need to be configured. +Run the following command to apply this configure. + +``` +monaco deploy manifest.yaml +``` + +#### OpenPipeline configuration for Software Development Lifecycle is available + +MERGE is needed + +## Configure GitHub to send Webhook events to Dynatrace + +#### Create Dynatrace Access Token + +To allow Dynatrace receiving GitHub webhook events that are processed using OpenPipeline, an access token with *openpipeline scopes* is needed. + +1. In Dynatrace, navigate to **Access Tokens**. +2. Click **Generate new token**. +3. Provide a descriptive name for your token. +4. Select the following scopes: + - `openpipeline.events_sdlc.custom` + - `openpipeline.events_sdlc` +5. Click **Generate token** +6. Save the generated token securely for subsequent steps. It will be referred as `YOUR-ACCESS-TOKEN`. +​ +#### Configure GitHub Webhook + +You can configure webhooks at either the organization level (affecting all repositories) or the repository level. Note that *Lead Time For Changes* calculations and monitoring will only include the repositories where webhooks are configured. + +1. In GitHub, select your organization or repository. +2. Go to **Settings** > **Webhooks**. +3. Click **Add webhook**. +4. Configure the following settings: + - **Payload URL**: + ``` + https://{your-environment-id}.live.dynatrace.com/platform/ingest/custom/events.sdlc/github?api-token={YOUR-ACCESS-TOKEN} + ``` + - **Content Type**: `application/json` + - **Which events would you like to trigger this webhook?**: Select *Let me select individual events* and enable: + - Pull requests + - Statuses + - Workflow runs + - Workflow jobs + - (disable "Pushes") +5. Select **Active** to receive event details when the hook is triggered. +6. Click **Add webhook** to save the webhook. + diff --git a/github_pipeline_observability/manifest.yaml b/github_pipeline_observability/manifest.yaml new file mode 100644 index 0000000..7af96bf --- /dev/null +++ b/github_pipeline_observability/manifest.yaml @@ -0,0 +1,22 @@ +manifestVersion: 1.0 +projects: + - name: pipeline_observability +environmentGroups: + - name: group + environments: + - name: + url: + type: value + value: + auth: + token: + name: DT_ENV_TOKEN + oAuth: + clientId: + name: OAUTH_CLIENT_ID + clientSecret: + name: OAUTH_CLIENT_SECRET + tokenEndpoint: + type: environment + value: OAUTH_TOKEN_ENDPOINT + \ No newline at end of file diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/c987eb44-e834-44d8-8c28-9c24a016df41.json b/github_pipeline_observability/pipeline_observability/document-dashboard/c987eb44-e834-44d8-8c28-9c24a016df41.json new file mode 100644 index 0000000..33b8bd3 --- /dev/null +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/c987eb44-e834-44d8-8c28-9c24a016df41.json @@ -0,0 +1,1298 @@ +{ + "importedWithCode": false, + "layouts": { + "0": { + "h": 2, + "w": 5, + "x": 0, + "y": 1 + }, + "1": { + "h": 4, + "w": 5, + "x": 5, + "y": 1 + }, + "10": { + "h": 2, + "w": 5, + "x": 0, + "y": 3 + }, + "11": { + "h": 1, + "w": 23, + "x": 0, + "y": 0 + }, + "12": { + "h": 1, + "w": 24, + "x": 0, + "y": 9 + }, + "2": { + "h": 4, + "w": 23, + "x": 0, + "y": 5 + }, + "3": { + "h": 2, + "w": 5, + "x": 0, + "y": 10 + }, + "4": { + "h": 2, + "w": 5, + "x": 5, + "y": 10 + }, + "5": { + "h": 2, + "w": 5, + "x": 5, + "y": 12 + }, + "6": { + "h": 4, + "w": 23, + "x": 0, + "y": 14 + }, + "7": { + "h": 4, + "w": 13, + "x": 10, + "y": 1 + }, + "8": { + "h": 4, + "w": 13, + "x": 10, + "y": 10 + }, + "9": { + "h": 2, + "w": 5, + "x": 0, + "y": 12 + } + }, + "settings": {}, + "tiles": { + "0": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } | filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| fieldsAdd OpenedPrDuration = toTimestamp(now())-toTimestamp(start_time) | summarize max(OpenedPrDuration), count()", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Open PRs", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "autoSelectVisualization": false, + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "max(OpenedPrDuration)", + "count()" + ], + "categoryAxisLabel": "max(OpenedPrDuration),count()", + "tooltipVariant": "single", + "valueAxis": [ + "max(OpenedPrDuration)", + "count()" + ], + "valueAxisLabel": "max(OpenedPrDuration),count()" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "max(OpenedPrDuration)" + }, + { + "rangeAxis": "", + "valueAxis": "count()" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "Open PRs", + "prefixIcon": "", + "recordField": "count()", + "showLabel": false, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "1": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } | filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now())-toTimestamp(start_time) | summarize max(OpenedPrDuration), count()", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "In Open status (time max)", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "max(OpenedPrDuration)", + "count()" + ], + "categoryAxisLabel": "max(OpenedPrDuration),count()", + "tooltipVariant": "single", + "valueAxis": [ + "max(OpenedPrDuration)", + "count()" + ], + "valueAxisLabel": "max(OpenedPrDuration),count()" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "max(OpenedPrDuration)" + }, + { + "rangeAxis": "", + "valueAxis": "count()" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "isIconVisible": false, + "label": "max(OpenedPrDuration)", + "prefixIcon": "", + "recordField": "max(OpenedPrDuration)", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [], + "unitsOverrides": [ + { + "added": 1727701272906, + "baseUnit": "nanosecond", + "decimals": 1, + "delimiter": true, + "displayUnit": null, + "identifier": "max(OpenedPrDuration)", + "suffix": "", + "unitCategory": "time" + } + ] + } + }, + "10": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| sort timestamp desc\n| summarize { statuses = collectArray(event.status), actions = collectArray(ext.task.action) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } | filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter contains(toString(actions),\"reopened\")\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| summarize count()", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Re-opened PRs", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "autoSelectVisualization": false, + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "count()" + ], + "categoryAxisLabel": "count()", + "tooltipVariant": "single", + "valueAxis": [ + "count()" + ], + "valueAxisLabel": "count()" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "hiddenLegendFields": [ + "task" + ], + "pointsDisplay": "auto", + "truncationMode": "middle", + "valueRepresentation": "absolute", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "count()" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "Open PRs", + "prefixIcon": "", + "recordField": "count()", + "showLabel": false, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": { + "[\"statuses\"]": 259.734375 + }, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "11": { + "content": "## Open Pull Requests", + "title": "", + "type": "markdown" + }, + "12": { + "content": "## Merged Pull Requests", + "title": "", + "type": "markdown" + }, + "2": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events \n| filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url , vcs.repository.change.id } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fields \nIn_open_status = toTimestamp(now())-toTimestamp(start_time),\nPR_number = number, \nPR_title = task.name,\nPR_url= ext.pr.url,\nSource_repo = ext.task.repository.source.full_name, \nSource_ref=ext.task.repository.source.ref, \nTarget_repo = ext.task.repository.target.full_name, \nTarget_ref=ext.task.repository.target.ref,\nCreated_at = start_time, GlobalId = vcs.repository.change.id \n| sort In_open_status desc\n\n", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Open PRs details", + "type": "data", + "visualization": "table", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "PR_title", + "PR_url", + "Source_repo", + "Source_ref", + "Target_repo", + "Target_ref" + ], + "categoryAxisLabel": "PR_title,PR_url,Source_repo,Source_ref,Target_repo,Target_ref", + "tooltipVariant": "single", + "valueAxis": [ + "In_open_status", + "PR_number", + "GlobalId" + ], + "valueAxisLabel": "In_open_status,PR_number,GlobalId" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "fieldMapping": { + "leftAxisDimensions": [ + "PR_title" + ], + "leftAxisValues": [ + "In_open_status" + ], + "timestamp": "Created_at" + }, + "gapPolicy": "connect", + "hiddenLegendFields": [], + "pointsDisplay": "auto", + "truncationMode": "middle", + "valueRepresentation": "absolute", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "In_open_status" + }, + "displayedFields": [ + "PR_title", + "PR_url", + "Source_repo", + "Source_ref", + "Target_repo", + "Target_ref" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "max(Duration)", + "prefixIcon": "", + "recordField": "max(Duration)", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "colorThresholdTarget": "value", + "columnTypeOverrides": [ + { + "fields": [], + "id": 36911602, + "value": "date" + } + ], + "columnWidths": { + "[\"OpenFrom\"]": 138, + "[\"PR_number\"]": 146.4600830078125, + "[\"PR_title\"]": 404.0850830078125, + "[\"PR_url\"]": 423.39935302734375, + "[\"SourceRepository\"]": 233.796875, + "[\"Source_ref\"]": 279.58856201171875, + "[\"Source_repo\"]": 266.47222900390625, + "[\"Target_repo\"]": 244.47222900390625 + }, + "enableSparklines": false, + "enableThresholdInRow": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": true, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "default" + }, + "thresholds": [], + "unitsOverrides": [ + { + "added": 1727701272906, + "baseUnit": "nanosecond", + "decimals": 2, + "delimiter": true, + "displayUnit": null, + "identifier": "max(Duration)", + "suffix": "", + "unitCategory": "time" + } + ] + } + }, + "3": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| dedup task.id\n| summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Merged PRs", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "Count", + "Median", + "Avg" + ], + "categoryAxisLabel": "Count,Median,Avg", + "tooltipVariant": "single", + "valueAxis": [ + "Count", + "Median", + "Avg" + ], + "valueAxisLabel": "Count,Median,Avg" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Count" + }, + { + "rangeAxis": "", + "valueAxis": "Median" + }, + { + "rangeAxis": "", + "valueAxis": "Avg" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "Merged PRs", + "prefixIcon": "", + "recordField": "Count", + "showLabel": false, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "4": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\"\n | filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n | dedup task.id\n | summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Open-to-merge duration (p50)", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "Count", + "Median", + "Avg" + ], + "categoryAxisLabel": "Count,Median,Avg", + "tooltipVariant": "single", + "valueAxis": [ + "Count", + "Median", + "Avg" + ], + "valueAxisLabel": "Count,Median,Avg" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Count" + }, + { + "rangeAxis": "", + "valueAxis": "Median" + }, + { + "rangeAxis": "", + "valueAxis": "Avg" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "Median", + "prefixIcon": "", + "recordField": "Median", + "showLabel": false, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "5": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| dedup task.id\n| summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Open-to-merge duration (avg)", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "Count", + "Median", + "Avg" + ], + "categoryAxisLabel": "Count,Median,Avg", + "tooltipVariant": "single", + "valueAxis": [ + "Count", + "Median", + "Avg" + ], + "valueAxisLabel": "Count,Median,Avg" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Count" + }, + { + "rangeAxis": "", + "valueAxis": "Median" + }, + { + "rangeAxis": "", + "valueAxis": "Avg" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "Avg", + "prefixIcon": "", + "recordField": "Avg", + "showLabel": false, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "6": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" | sort timestamp asc\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| dedup task.id\n| fields Duration = duration, Number = number, Title = task.name,Url= ext.pr.url,SourceRepository = ext.task.repository.source.full_name, SourceRef=ext.task.repository.source.ref, TargetRepository = ext.task.repository.target.full_name, TargetRef=ext.task.repository.target.ref, CreatedAt = start_time, MergetAt = end_time,GlobalId = vcs.repository.change.id | sort Duration desc\n", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Merged PRs details", + "type": "data", + "visualization": "table", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "Title", + "Url", + "SourceRepository", + "SourceRef", + "TargetRepository", + "TargetRef" + ], + "categoryAxisLabel": "Title,Url,SourceRepository,SourceRef,TargetRepository,TargetRef", + "tooltipVariant": "single", + "valueAxis": [ + "Duration", + "Number", + "GlobalId" + ], + "valueAxisLabel": "Duration,Number,GlobalId" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "fieldMapping": { + "leftAxisDimensions": [ + "Title" + ], + "leftAxisValues": [ + "Duration" + ], + "timestamp": "CreatedAt" + }, + "gapPolicy": "connect", + "hiddenLegendFields": [], + "pointsDisplay": "auto", + "truncationMode": "middle", + "valueRepresentation": "absolute", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Duration" + }, + { + "rangeAxis": "", + "valueAxis": "GlobalId" + } + ], + "displayedFields": [ + "Title", + "Url", + "SourceRepository", + "SourceRef", + "TargetRepository", + "TargetRef" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "Duration" + }, + "displayedFields": [ + "Title", + "Url", + "SourceRepository", + "SourceRef", + "TargetRepository", + "TargetRef" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "Median duration ( from open to merge )", + "prefixIcon": "", + "recordField": "Avg", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "default", + "sortBy": { + "columnId": "[\"duration\"]", + "direction": "descending" + } + }, + "thresholds": [] + } + }, + "7": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } | filter not in(statuses[0],array(\"merged\",\"closed\")) \n| summarize count(),by: {ext.task.repository.target.full_name}", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": " Open PRs by target repository", + "type": "data", + "visualization": "pieChart", + "visualizationSettings": { + "autoSelectVisualization": false, + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "ext.task.repository.target.full_name" + ], + "categoryAxisLabel": "ext.task.repository.target.full_name", + "tooltipVariant": "single", + "valueAxis": [ + "count()" + ], + "valueAxisLabel": "count()" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "absolute" + }, + "colorPalette": "swamps", + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue-moss", + "dataMappings": { + "value": "count()" + }, + "displayedFields": [ + "ext.task.repository.target.full_name" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "max": null, + "min": null, + "shape": "circle" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "Open PRs", + "prefixIcon": "", + "recordField": "count()", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "8": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" | sort timestamp asc\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| dedup task.id\n| summarize Count= count(),by:{vcs.repository.ref.name}", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Merged Pull Requests by Target Repository", + "type": "data", + "visualization": "pieChart", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "vcs.repository.ref.name" + ], + "categoryAxisLabel": "vcs.repository.ref.name", + "tooltipVariant": "single", + "valueAxis": [ + "Count" + ], + "valueAxisLabel": "Count" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "absolute" + }, + "colorPalette": "blue-steel", + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Count" + } + ], + "displayedFields": [ + "vcs.repository.ref.name" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "Count" + }, + "displayedFields": [ + "vcs.repository.ref.name" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "Avg", + "prefixIcon": "", + "recordField": "Avg", + "showLabel": false, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "9": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| dedup task.id\n| summarize SumCommits = sum(ext.task.merge.commits)", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Merged commits via PRs", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "SumCommits" + ], + "categoryAxisLabel": "SumCommits", + "tooltipVariant": "single", + "valueAxis": [ + "SumCommits" + ], + "valueAxisLabel": "SumCommits" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "SumCommits" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "SumCommits", + "prefixIcon": "", + "recordField": "SumCommits", + "showLabel": false, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + } + }, + "variables": [ + { + "defaultValue": [ + "{{ .extractedIDs.id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05 }}*" + ], + "input": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| summarize distinctTargetRepositories = collectDistinct(ext.task.repository.target.full_name)\n| expand distinctTargetRepositories\n| sort distinctTargetRepositories", + "key": "TargetRepository", + "multiple": true, + "type": "query", + "visible": true + }, + { + "defaultValue": [ + "{{ .extractedIDs.id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05 }}*" + ], + "input": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| summarize distinctTargetRef = collectDistinct(ext.task.repository.target.ref)\n| expand distinctTargetRef\n| sort distinctTargetRef", + "key": "TargetRef", + "multiple": true, + "type": "query", + "visible": true + } + ], + "version": 17 +} \ No newline at end of file diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml new file mode 100644 index 0000000..cb4fab6 --- /dev/null +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml @@ -0,0 +1,31 @@ +configs: +- id: c987eb44-e834-44d8-8c28-9c24a016df41 + config: + name: GitHub Pull Request monitoring v.3 + parameters: + extractedIDs: + type: value + value: + id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05: 3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05 + template: c987eb44-e834-44d8-8c28-9c24a016df41.json + skip: false + originObjectId: c987eb44-e834-44d8-8c28-9c24a016df41 + type: + document: + kind: dashboard + private: true +- id: d589113d-d8c4-4687-afe7-39d639f168b3 + config: + name: GitHub Workflows monitoring v.3 + parameters: + extractedIDs: + type: value + value: + id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05: 3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05 + template: d589113d-d8c4-4687-afe7-39d639f168b3.json + skip: false + originObjectId: d589113d-d8c4-4687-afe7-39d639f168b3 + type: + document: + kind: dashboard + private: true \ No newline at end of file diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/d589113d-d8c4-4687-afe7-39d639f168b3.json b/github_pipeline_observability/pipeline_observability/document-dashboard/d589113d-d8c4-4687-afe7-39d639f168b3.json new file mode 100644 index 0000000..4c3974f --- /dev/null +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/d589113d-d8c4-4687-afe7-39d639f168b3.json @@ -0,0 +1,2015 @@ +{ + "importedWithCode": false, + "layouts": { + "0": { + "h": 4, + "w": 7, + "x": 0, + "y": 2 + }, + "1": { + "h": 2, + "w": 4, + "x": 0, + "y": 0 + }, + "10": { + "h": 2, + "w": 4, + "x": 8, + "y": 0 + }, + "11": { + "h": 4, + "w": 7, + "x": 7, + "y": 2 + }, + "12": { + "h": 2, + "w": 4, + "x": 16, + "y": 0 + }, + "14": { + "h": 4, + "w": 7, + "x": 13, + "y": 22 + }, + "15": { + "h": 6, + "w": 20, + "x": 0, + "y": 32 + }, + "16": { + "h": 1, + "w": 20, + "x": 0, + "y": 15 + }, + "17": { + "h": 1, + "w": 20, + "x": 0, + "y": 31 + }, + "18": { + "h": 4, + "w": 7, + "x": 6, + "y": 22 + }, + "19": { + "h": 5, + "w": 20, + "x": 0, + "y": 26 + }, + "2": { + "h": 2, + "w": 4, + "x": 4, + "y": 0 + }, + "3": { + "h": 6, + "w": 20, + "x": 0, + "y": 16 + }, + "4": { + "h": 2, + "w": 4, + "x": 12, + "y": 0 + }, + "5": { + "h": 4, + "w": 20, + "x": 0, + "y": 6 + }, + "6": { + "h": 4, + "w": 6, + "x": 14, + "y": 2 + }, + "7": { + "h": 4, + "w": 6, + "x": 0, + "y": 22 + }, + "8": { + "h": 5, + "w": 20, + "x": 0, + "y": 10 + } + }, + "settings": {}, + "tiles": { + "0": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize count(), by: { cicd.pipeline.run.outcome}", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Pipeline completion status", + "type": "data", + "visualization": "pieChart", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "cicd.pipeline.run.outcome" + ], + "categoryAxisLabel": "cicd.pipeline.run.outcome", + "tooltipVariant": "single", + "valueAxis": [ + "count()" + ], + "valueAxisLabel": "count()" + }, + "categoryOverrides": { + "": { + "added": 1726836121804, + "color": { + "Default": "var(--dt-colors-charts-categorical-color-11-default, #627cfe)" + } + }, + "failure": { + "added": 1726836109108, + "color": { + "Default": "var(--dt-colors-charts-categorical-themed-fireplace-color-01-default, #ae132d)" + } + }, + "success": { + "added": 1726836111136, + "color": { + "Default": "var(--dt-colors-charts-categorical-color-09-default, #649438)" + } + } + }, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "count()" + } + ], + "displayedFields": [ + "cicd.pipeline.run.outcome" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "count()" + }, + "displayedFields": [ + "cicd.pipeline.run.outcome" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "cicd.pipeline.run.outcome", + "prefixIcon": "", + "recordField": "cicd.pipeline.run.outcome", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "1": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" \n| fields vcs.repository.ref.name,cicd.pipeline.name,ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize count()", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "∑ pipeline runs", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "count()" + ], + "categoryAxisLabel": "count()", + "tooltipVariant": "single", + "valueAxis": [ + "count()" + ], + "valueAxisLabel": "count()" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "count()" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "Count", + "prefixIcon": "", + "recordField": "count()", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "10": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" \n| fields vcs.repository.ref.name,cicd.pipeline.name,ext.pipeline.run.trigger,duration\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize avg(duration)", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Pipeline duration (Avg)", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "avg(duration)" + ], + "categoryAxisLabel": "avg(duration)", + "tooltipVariant": "single", + "valueAxis": [ + "avg(duration)" + ], + "valueAxisLabel": "avg(duration)" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "avg(duration)" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "avg(duration)", + "prefixIcon": "", + "recordField": "avg(duration)", + "showLabel": false, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "11": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize count(), by: { ext.pipeline.run.trigger}", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Pipeline triggers", + "type": "data", + "visualization": "pieChart", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "ext.pipeline.run.trigger" + ], + "categoryAxisLabel": "ext.pipeline.run.trigger", + "tooltipVariant": "single", + "valueAxis": [ + "count()" + ], + "valueAxisLabel": "count()" + }, + "categoryOverrides": { + "": { + "added": 1726836121804, + "color": { + "Default": "var(--dt-colors-charts-categorical-color-11-default, #627cfe)" + } + }, + "failure": { + "added": 1726836109108, + "color": { + "Default": "var(--dt-colors-charts-categorical-themed-fireplace-color-01-default, #ae132d)" + } + }, + "success": { + "added": 1726836111136, + "color": { + "Default": "var(--dt-colors-charts-categorical-color-09-default, #649438)" + } + } + }, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "count()" + } + ], + "displayedFields": [ + "ext.pipeline.run.trigger" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "count()" + }, + "displayedFields": [ + "ext.pipeline.run.trigger" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "cicd.pipeline.run.outcome", + "prefixIcon": "", + "recordField": "cicd.pipeline.run.outcome", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "12": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and ext.pipeline.run.attempt \u003e 1 and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| fields vcs.repository.ref.name,cicd.pipeline.name,ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize count() ", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "∑ Re-runs", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "count()" + ], + "categoryAxisLabel": "count()", + "tooltipVariant": "single", + "valueAxis": [ + "count()" + ], + "valueAxisLabel": "count()" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "count()" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "isIconVisible": false, + "label": "count()", + "prefixIcon": "", + "recordField": "count()", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [ + { + "field": "failureRate", + "id": 1, + "isEnabled": true, + "rules": [ + { + "color": { + "Default": "var(--dt-colors-charts-status-ideal-default, #2f6863)" + }, + "comparator": "≤", + "id": 0, + "label": "", + "value": 0 + }, + { + "color": { + "Default": "var(--dt-colors-charts-status-warning-default, #eca440)" + }, + "comparator": "≥", + "id": 1, + "label": "" + }, + { + "color": { + "Default": "var(--dt-colors-charts-status-critical-default, #c4233b)" + }, + "comparator": "≥", + "id": 2, + "label": "", + "value": 0 + } + ], + "title": "" + } + ], + "unitsOverrides": [ + { + "added": 1727678780356, + "baseUnit": "percent", + "decimals": 0, + "delimiter": true, + "displayUnit": null, + "identifier": "failureRate", + "suffix": "", + "unitCategory": "percentage" + } + ] + } + }, + "14": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"task\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\" | fieldsAdd steps_array=toArray(ext.task.steps) | expand steps_array | parse steps_array,\"JSON:steps_data\" \n| join [fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) ], \non:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.status = steps_data[status], \nstep.task.id = task.id,\nstep.task.name = task.name,\nstep.task.outcome = task.outcome,\nstep.task.cicd.pipeline.run.id = cicd.pipeline.run.id \n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(step.conclusion==\"failure\")) / toDouble(count())*100), by: {step.name, step.task.name} | filter failureRate\u003e0 | sort failureRate desc | limit 5", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Error-prone steps | Top 5", + "type": "data", + "visualization": "pieChart", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "step.name", + "step.task.name" + ], + "categoryAxisLabel": "step.name,step.task.name", + "colorPaletteMode": "multi-color", + "groupMode": "grouped", + "layout": "horizontal", + "tooltipVariant": "grouped", + "valueAxis": [ + "failureRate" + ], + "valueAxisLabel": "failureRate" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "hiddenLegendFields": [], + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "failureRate" + } + ], + "displayedFields": [ + "step.name", + "step.task.name" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "failureRate" + }, + "displayedFields": [ + "step.name", + "step.task.name" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "error", + "prefixIcon": "", + "recordField": "error", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "15": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"task\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\"\n| join [fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) ], \non:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| fieldsAdd steps_array=toArray(ext.task.steps) | expand steps_array | parse steps_array,\"JSON:steps_data\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.status = steps_data[status], \nstep.task.id = task.id,\nstep.task.name = task.name,\nstep.task.outcome = task.outcome,\nstep.task.cicd.pipeline.run.id = cicd.pipeline.run.id | summarize percentile(step.duration,50), alias:Median ,by:{step.name, alias: StepName,step.task.name, alias: TaskName} | filter isNotNull(Median) | sort Median desc | limit 5", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Steps by duration (p50) | Top 5", + "type": "data", + "visualization": "categoricalBarChart", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "StepName", + "TaskName" + ], + "categoryAxisLabel": "StepName,TaskName", + "colorPaletteMode": "multi-color", + "groupMode": "grouped", + "layout": "horizontal", + "tooltipVariant": "grouped", + "valueAxis": [ + "Median" + ], + "valueAxisLabel": "Median" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "hiddenLegendFields": [], + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Median" + } + ], + "displayedFields": [ + "StepName", + "TaskName" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "Median" + }, + "displayedFields": [ + "StepName", + "TaskName" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "error", + "prefixIcon": "", + "recordField": "error", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "16": { + "content": "## Pipeline tasks", + "title": "", + "type": "markdown" + }, + "17": { + "content": "## Pipeline steps", + "title": "", + "type": "markdown" + }, + "18": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"task\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\" \n| join [fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) ], \non:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize Count=count() , by:{ext.task.runner.name} | sort Count desc | limit 5", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Runners used | Top 5", + "type": "data", + "visualization": "donutChart", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "ext.task.runner.name" + ], + "categoryAxisLabel": "ext.task.runner.name", + "colorPaletteMode": "multi-color", + "tooltipVariant": "single", + "valueAxis": [ + "Count" + ], + "valueAxisLabel": "Count" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "number-of-slices", + "groupingThresholdValue": 0, + "valueType": "absolute" + }, + "curve": "linear", + "gapPolicy": "connect", + "hiddenLegendFields": [], + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Count" + } + ], + "displayedFields": [ + "ext.task.runner.name" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "Count" + }, + "displayedFields": [ + "ext.task.runner.name" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "error", + "prefixIcon": "", + "recordField": "error", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [], + "unitsOverrides": [ + { + "added": 1727680127964, + "baseUnit": "percent", + "decimals": 0, + "delimiter": false, + "displayUnit": null, + "identifier": "failureRate", + "suffix": "", + "unitCategory": "percentage" + } + ] + } + }, + "19": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"started\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) \n\n| fields start_time,cicd.pipeline.run.id,ext.pipeline.run.attempt\n| joinNested jobs=[fetch events | filter event.category == \"task\" and event.status == \"started\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\" | fields cicd.pipeline.run.id,ext.task.run.attempt,start_time | sort start_time asc ],on: {cicd.pipeline.run.id,left[ext.pipeline.run.attempt]==right[ext.task.run.attempt]} \n| fieldsAdd timeToStart = jobs[0][start_time] - start_time ", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "First pipeline job time-to-start", + "type": "data", + "visualization": "areaChart", + "visualizationSettings": { + "autoSelectVisualization": false, + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "cicd.pipeline.run.id", + "ext.pipeline.run.attempt", + "timeToStart" + ], + "categoryAxisLabel": "cicd.pipeline.run.id,ext.pipeline.run.attempt,timeToStart", + "categoryAxisTickLayout": "horizontal", + "colorPaletteMode": "multi-color", + "groupMode": "stacked", + "layout": "horizontal", + "scale": "absolute", + "tooltipVariant": "single", + "valueAxis": [ + "cicd.pipeline.run.id", + "ext.pipeline.run.attempt", + "timeToStart" + ], + "valueAxisLabel": "cicd.pipeline.run.id,ext.pipeline.run.attempt,timeToStart" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "colorPalette": "categorical", + "curve": "smooth", + "fieldMapping": { + "leftAxisDimensions": [], + "leftAxisValues": [ + "timeToStart" + ], + "timestamp": "start_time" + }, + "gapPolicy": "connect", + "hiddenLegendFields": [], + "leftYAxisSettings": { + "isLabelVisible": true, + "label": "Time to start" + }, + "legend": { + "hidden": true + }, + "pointsDisplay": "auto", + "seriesOverrides": [], + "truncationMode": "middle", + "valueRepresentation": "absolute", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "colorPalette": "categorical", + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "cicd.pipeline.run.id" + }, + { + "rangeAxis": "", + "valueAxis": "ext.pipeline.run.attempt" + }, + { + "rangeAxis": "", + "valueAxis": "timeToStart" + } + ], + "displayedFields": [], + "legend": "auto", + "truncationMode": "middle", + "variant": "single", + "yAxis": { + "label": "Frequency", + "scale": "linear" + } + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "categorical", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon", + "truncationMode": "middle" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "start_time", + "prefixIcon": "", + "recordField": "start_time", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "2": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| fields vcs.repository.ref.name,cicd.pipeline.name,ext.pipeline.run.trigger,duration\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize median(duration)", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Pipeline duration (p50)", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "median(duration)" + ], + "categoryAxisLabel": "median(duration)", + "tooltipVariant": "single", + "valueAxis": [ + "median(duration)" + ], + "valueAxisLabel": "median(duration)" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "median(duration)" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "median(duration)", + "prefixIcon": "", + "recordField": "median(duration)", + "showLabel": false, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "3": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"task\" and event.status == \"finished\" and event.provider==\"github.com\" and task.outcome!=\"skipped\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\"\n| join [fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) ], \non:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize percentile(duration,50), alias:Median ,by:{task.name, alias: TaskName}| filter isNotNull(Median) | sort Median desc | limit 5", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Task duration (p50) | Top 5", + "type": "data", + "visualization": "categoricalBarChart", + "visualizationSettings": { + "autoSelectVisualization": false, + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "TaskName" + ], + "categoryAxisLabel": "TaskName", + "colorPaletteMode": "multi-color", + "tooltipVariant": "single", + "valueAxis": [ + "Median" + ], + "valueAxisLabel": "Median" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "hiddenLegendFields": [], + "pointsDisplay": "auto", + "truncationMode": "middle", + "valueRepresentation": "absolute", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Median" + } + ], + "displayedFields": [ + "TaskName" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "Median" + }, + "displayedFields": [ + "TaskName" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "error", + "prefixIcon": "", + "recordField": "error", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "4": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" \n| fields vcs.repository.ref.name,cicd.pipeline.name,ext.pipeline.run.trigger,cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100)", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Failure Rate", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "failureRate" + ], + "categoryAxisLabel": "failureRate", + "tooltipVariant": "single", + "valueAxis": [ + "failureRate" + ], + "valueAxisLabel": "failureRate" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "failureRate" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "isIconVisible": false, + "label": "failureRate", + "prefixIcon": "", + "recordField": "failureRate", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [ + { + "field": "failureRate", + "id": 1, + "isEnabled": true, + "rules": [ + { + "color": { + "Default": "var(--dt-colors-charts-status-ideal-default, #2f6863)" + }, + "comparator": "≤", + "id": 0, + "label": "", + "value": 0 + }, + { + "color": { + "Default": "var(--dt-colors-charts-status-warning-default, #eca440)" + }, + "comparator": "≥", + "id": 1, + "label": "" + }, + { + "color": { + "Default": "var(--dt-colors-charts-status-critical-default, #c4233b)" + }, + "comparator": "≥", + "id": 2, + "label": "", + "value": 0 + } + ], + "title": "" + } + ], + "unitsOverrides": [ + { + "added": 1727678780356, + "baseUnit": "percent", + "decimals": 0, + "delimiter": true, + "displayUnit": null, + "identifier": "failureRate", + "suffix": "", + "unitCategory": "percentage" + } + ] + } + }, + "5": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events \n| filter event.category == \"pipeline\" and event.status == \"finished\" and cicd.pipeline.run.outcome != \"canceled\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize percentile(duration,50), alias:Median ,by:{cicd.pipeline.name, alias: name} | sort Median desc | limit 5", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Pipeline duration (p50) | Top 5", + "type": "data", + "visualization": "categoricalBarChart", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "name" + ], + "categoryAxisLabel": "name", + "colorPaletteMode": "multi-color", + "tooltipVariant": "single", + "valueAxis": [ + "Median" + ], + "valueAxisLabel": "Median" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "hiddenLegendFields": [], + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Median" + } + ], + "displayedFields": [ + "name" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "Median" + }, + "displayedFields": [ + "name" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "error", + "prefixIcon": "", + "recordField": "error", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, + "6": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100), by: {vcs.repository.ref.name,cicd.pipeline.name }\n| filter failureRate\u003e0 | sort failureRate desc | limit 5", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Error-prune pipelines | Top 5", + "type": "data", + "visualization": "pieChart", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "categoryAxisLabel": "vcs.repository.ref.name,cicd.pipeline.name", + "colorPaletteMode": "multi-color", + "tooltipVariant": "single", + "valueAxis": [ + "failureRate" + ], + "valueAxisLabel": "failureRate" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "number-of-slices", + "groupingThresholdValue": 0, + "valueType": "absolute" + }, + "curve": "linear", + "gapPolicy": "connect", + "hiddenLegendFields": [], + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "failureRate" + } + ], + "displayedFields": [ + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "failureRate" + }, + "displayedFields": [ + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "error", + "prefixIcon": "", + "recordField": "error", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [], + "unitsOverrides": [ + { + "added": 1727680127964, + "baseUnit": "percent", + "decimals": 0, + "delimiter": false, + "displayUnit": null, + "identifier": "failureRate", + "suffix": "", + "unitCategory": "percentage" + } + ] + } + }, + "7": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"task\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\"\n| join [fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) ], \non:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(task.outcome==\"failure\")) / toDouble(count())*100), by: task.name | filter failureRate\u003e0 | sort failureRate desc | limit 5", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Error-prone tasks | Top 5", + "type": "data", + "visualization": "pieChart", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "task.name" + ], + "categoryAxisLabel": "task.name", + "colorPaletteMode": "multi-color", + "tooltipVariant": "single", + "valueAxis": [ + "failureRate" + ], + "valueAxisLabel": "failureRate" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "absolute", + "groupingThresholdValue": 0, + "valueType": "absolute" + }, + "curve": "linear", + "gapPolicy": "connect", + "hiddenLegendFields": [], + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "failureRate" + } + ], + "displayedFields": [ + "task.name" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "failureRate" + }, + "displayedFields": [ + "task.name" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "error", + "prefixIcon": "", + "recordField": "error", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [], + "unitsOverrides": [ + { + "added": 1727680127964, + "baseUnit": "percent", + "decimals": 0, + "delimiter": false, + "displayUnit": null, + "identifier": "failureRate", + "suffix": "", + "unitCategory": "percentage" + } + ] + } + }, + "8": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| fields \nDuration = duration,\nName = cicd.pipeline.name,\nStatus = cicd.pipeline.run.outcome,\nRun_url = cicd.pipeline.run.url.full,\nRun_attempt = ext.pipeline.run.attempt,\nRun_trigger = ext.pipeline.run.trigger,\nStart = start_time,\nEnd = end_time,\nRepository = vcs.repository.ref.name \n| sort Duration desc \n", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Pipeline run details", + "type": "data", + "visualization": "table", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "Name", + "Status", + "Run_url", + "Run_trigger", + "Repository" + ], + "categoryAxisLabel": "Name,Status,Run_url,Run_trigger,Repository", + "colorPaletteMode": "multi-color", + "tooltipVariant": "single", + "valueAxis": [ + "Duration", + "Run_attempt" + ], + "valueAxisLabel": "Duration,Run_attempt" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "fieldMapping": { + "leftAxisDimensions": [ + "Name" + ], + "leftAxisValues": [ + "Duration" + ], + "timestamp": "Start" + }, + "gapPolicy": "connect", + "hiddenLegendFields": [], + "pointsDisplay": "auto", + "truncationMode": "middle", + "valueRepresentation": "absolute", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Duration" + }, + { + "rangeAxis": "", + "valueAxis": "Run_attempt" + } + ], + "displayedFields": [ + "Name", + "Status", + "Repository" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { + "value": "Duration" + }, + "displayedFields": [ + "Name", + "Status", + "Run_url", + "Run_trigger", + "Repository" + ], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "error", + "prefixIcon": "", + "recordField": "error", + "showLabel": true, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": { + "[\"Repository\"]": 273.09375, + "[\"RunUrl\"]": 346.84375 + }, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [ + [ + "RunUrl" + ] + ], + "linewrapEnabled": true, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "comfortable" + }, + "thresholds": [] + } + } + }, + "variables": [ + { + "defaultValue": [ + "{{ .extractedIDs.id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05 }}*" + ], + "input": "fetch events\n| filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.type == \"run\"\n| summarize distinctRepositories = collectDistinct(vcs.repository.ref.name)\n| expand distinctRepositories\n| sort distinctRepositories", + "key": "Repository", + "multiple": true, + "type": "query", + "visible": true + }, + { + "defaultValue": [ + "{{ .extractedIDs.id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05 }}*" + ], + "input": "fetch events\n| filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.type == \"run\"\n| filter in(vcs.repository.ref.name, $Repository)\n| summarize distinctWorkflows = collectDistinct(cicd.pipeline.name)\n| expand distinctWorkflows\n| sort distinctWorkflows", + "key": "Workflow", + "multiple": true, + "type": "query", + "visible": true + }, + { + "defaultValue": [ + "{{ .extractedIDs.id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05 }}*" + ], + "input": "fetch events\n| filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.type == \"run\"\n| summarize distinctTriggers = collectDistinct(ext.pipeline.run.trigger)\n| expand distinctTriggers\n| sort distinctTriggers", + "key": "Trigger", + "multiple": true, + "type": "query", + "visible": true + } + ], + "version": 17 +} \ No newline at end of file diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/config.yaml b/github_pipeline_observability/pipeline_observability/openpipeline/config.yaml new file mode 100644 index 0000000..32e8cf5 --- /dev/null +++ b/github_pipeline_observability/pipeline_observability/openpipeline/config.yaml @@ -0,0 +1,13 @@ +configs: +- id: events.sdlc + config: + parameters: + extractedIDs: + type: value + value: + id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435: 9ecd9ce4-ad89-4aa8-af7b-ebb7daf55435 + template: events.sdlc.json + skip: false + type: + openpipeline: + kind: events.sdlc \ No newline at end of file diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json new file mode 100644 index 0000000..c9752d7 --- /dev/null +++ b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json @@ -0,0 +1,1673 @@ +{ + "customBasePath": "/platform/ingest/custom/events.sdlc", + "editable": true, + "endpoints": [ + { + "basePath": "/platform/ingest/custom/events.sdlc", + "builtin": false, + "defaultBucket": "default_events", + "displayName": "GitHub", + "editable": true, + "enabled": true, + "processors": [ + { + "builtin": false, + "description": "Sets event.id to a unique identifier", + "dqlScript": "fieldsAdd event.id = hashSha1(concat(toString(toLong(now())), toString(RANDOM())))", + "editable": true, + "enabled": true, + "id": "github:sets_event_id_to_a_unique_identifier_1213", + "matcher": "isNull(event.id)", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"created_at\": \"2024-07-03T04:58:10Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\", \n \"pull_requests\": []\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Sets default SDLC and pipeline properties", + "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\",\nevent.provider = \"github.com\",\nevent.category = \"pipeline\",\nevent.type = \"run\"\n/*\n\"event.category\": \"application\",\n\"event.type\": \"deployment\"\n*/", + "editable": true, + "enabled": true, + "id": "github:sets_sdlc_pipeline_properties_9061", + "matcher": "isNotNull(workflow_run)", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"created_at\": \"2024-07-03T04:58:10Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\", \n \"pull_requests\": []\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Sets default SDLC and task properties", + "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"build\"\n/*\n\"event.category\": \"application\",\n\"event.type\": \"deployment\"\n*/", + "editable": true, + "enabled": true, + "id": "github:sets_sdlc_task_properties_1775", + "matcher": "isNotNull(workflow_job)", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"created_at\": \"2024-07-03T04:58:10Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\", \n \"pull_requests\": []\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Sets default SDLC properties and type to change", + "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"change\"", + "editable": true, + "enabled": true, + "id": "github:sets_default_and_type_change_2135", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Sets default SDLC properties and type to commit", + "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"commit\"", + "editable": true, + "enabled": true, + "id": "github:sets_default_and_type_commit_6181", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Clean up", + "editable": true, + "enabled": false, + "fields": [ + "action", + "installation", + "repository", + "sender", + "workflow", + "workflow_job", + "workflow_run" + ], + "id": "github:clean_up_github_properties_8323", + "matcher": "isNotNull(workflow_run) or isNotNull(workflow_job)", + "sampleData": null, + "type": "fieldsRemove" + } + ], + "routing": { + "type": "dynamic" + }, + "segment": "github" + }, + { + "basePath": "/platform/ingest/custom/events.sdlc", + "builtin": false, + "defaultBucket": "default_events", + "displayName": "ArgoCD", + "editable": true, + "enabled": true, + "processors": [ + { + "builtin": false, + "description": "Sets event.id to a unique identifier", + "dqlScript": "fieldsAdd event.id = hashSha1(concat(toString(toLong(now())), toString(RANDOM())))", + "editable": true, + "enabled": true, + "id": "argocd:sets_event_id_to_a_unique_identifier_9364", + "matcher": "isNull(event.id)", + "sampleData": "{\n \"action\": \"completed\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Sets default SDLC properites and type deployment", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{apiVersion, kind} \n| fieldsAdd \nif(isNull(apiVersion), \"1.0.0\", else: apiVersion), \nalias: event.version, \nevent.kind = \"SDLC_EVENT\", \nevent.provider = \"argocd\",\nif(isNull(kind), \"task\", else: lower(kind)), \nalias: event.category, \nevent.type = \"deployment\" \n| fieldsRemove record_json, apiVersion, kind", + "editable": true, + "enabled": true, + "id": "argocd:sets_application_properties_6951", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Sets task.(id|name)", + "dqlScript": "fieldsAdd \ntask.id = hashSha1(concat(toString(toLong(now())), toString(RANDOM()))),\ntask.name = \"ArgoCD Deployment\"", + "editable": true, + "enabled": true, + "id": "argocd:sets_task_id_and_name_4198", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n }\n }\n}", + "type": "dql" + } + ], + "routing": { + "pipelineId": "argocd:application_1194", + "type": "static" + }, + "segment": "argocd" + }, + { + "basePath": "/platform/ingest/v1/events.sdlc", + "builtin": true, + "defaultBucket": "default_events", + "displayName": "Endpoint for Software Development Lifecycle events", + "editable": false, + "enabled": true, + "processors": [ + { + "builtin": true, + "description": "sdlc event default fields", + "editable": false, + "enabled": true, + "fields": [ + { + "name": "event.kind", + "value": "SDLC_EVENT" + } + ], + "id": "sdlc:ingest_enrichment_map", + "matcher": "true", + "sampleData": "", + "type": "fieldsAdd" + }, + { + "builtin": true, + "description": "Sets start_time to end_time", + "dqlScript": "fieldsAdd start_time = end_time", + "editable": false, + "enabled": true, + "id": "sdlc:start_time_to_end_time_processor", + "matcher": "isNull(start_time) AND isNotNull(end_time)", + "sampleData": "", + "type": "dql" + }, + { + "builtin": true, + "description": "Sets start_time to current timestamp", + "dqlScript": "fieldsAdd start_time = now()", + "editable": false, + "enabled": true, + "id": "sdlc:start_time_processor", + "matcher": "isNull(start_time) AND isNull(end_time)", + "sampleData": "", + "type": "dql" + }, + { + "builtin": true, + "description": "Sets end_time to start_time", + "dqlScript": "fieldsAdd end_time = start_time", + "editable": false, + "enabled": true, + "id": "sdlc:end_time_to_start_time_processor", + "matcher": "isNull(end_time) AND isNotNull(start_time)", + "sampleData": "", + "type": "dql" + }, + { + "builtin": true, + "description": "Sets event.id to a unique identifier", + "dqlScript": "fieldsAdd event.id = hashSha1(concat(toString(toLong(now())), toString(RANDOM())))", + "editable": false, + "enabled": true, + "id": "sdlc:event_id_processor", + "matcher": "isNull(event.id)", + "sampleData": "", + "type": "dql" + }, + { + "builtin": true, + "description": "Sets event.category to pipeline if conditions match", + "dqlScript": "fieldsAdd event.category = \"pipeline\"", + "editable": false, + "enabled": true, + "id": "sdlc:event_category_pipeline_processor", + "matcher": "isNull(event.category) AND (isNotNull(pipeline.id) AND isNull(task.id))", + "sampleData": "", + "type": "dql" + }, + { + "builtin": true, + "description": "Sets event.category to task if conditions match", + "dqlScript": "fieldsAdd event.category = \"task\"", + "editable": false, + "enabled": true, + "id": "sdlc:event_category_task_processor", + "matcher": "isNull(event.category) AND (isNotNull(task.id) OR (isNull(task.id) AND isNull(pipeline.id)))", + "sampleData": "", + "type": "dql" + } + ], + "routing": { + "type": "dynamic" + }, + "segment": "" + } + ], + "id": "events.sdlc", + "pipelines": [ + { + "builtin": false, + "dataExtraction": { + "editable": true, + "processors": [] + }, + "displayName": "github-workflow", + "editable": true, + "enabled": true, + "id": "github:workflow_6504", + "metricExtraction": { + "editable": true, + "processors": [ + { + "builtin": false, + "description": "Number of finished SDLC pipelines", + "dimensions": [ + "event.status", + "cicd.pipeline.name", + "ext.pipeline.head_branch", + "event.provider", + "event.category", + "event.type", + "vcs.repository.ref.name" + ], + "editable": true, + "enabled": true, + "id": "github:workflows:runs_4612", + "matcher": "//isNotNull(workflow_run) AND\nevent.status == \"finished\"", + "metricKey": "events.sdlc.finished_pipelines", + "sampleData": null, + "type": "counterMetric" + }, + { + "builtin": false, + "description": "Number of SDLC pipeline events", + "dimensions": [ + "event.status", + "cicd.pipeline.name", + "ext.pipeline.head_branch", + "event.provider", + "event.category", + "event.type", + "vcs.repository.ref.name" + ], + "editable": true, + "enabled": true, + "id": "github:workflows:number_of_SDLC_pipeline_events_6061", + "matcher": "true", + "metricKey": "events.sdlc.pipelines", + "sampleData": null, + "type": "counterMetric" + }, + { + "builtin": false, + "description": "Duration of finished SDLC pipelines", + "dimensions": [ + "event.status", + "cicd.pipeline.name", + "event.provider", + "event.category", + "event.type", + "vcs.repository.ref.name", + "ext.pipeline.head_branch" + ], + "editable": true, + "enabled": true, + "field": "duration", + "id": "github:workflows:pipeline_duration_2861", + "matcher": "//isNotNull(workflow_run) AND\nevent.status == \"finished\"", + "metricKey": "events.sdlc.pipeline_duration", + "sampleData": null, + "type": "valueMetric" + } + ] + }, + "processing": { + "editable": true, + "processors": [ + { + "builtin": false, + "description": "event.status", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status} \n| fieldsAdd if(status == \"in_progress\", \"started\", else: if(status == \"completed\", \"finished\", else: status)), alias: event.status\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:workflow:event.status_1279", + "matcher": "isNotNull(workflow_run)", + "sampleData": "{\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"created_at\": \"2024-07-03T04:58:10Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\", \n \"pull_requests\": []\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "duration", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{updated_at, run_started_at, status} \n| fieldsAdd if((updated_at \u003e run_started_at) and event.status == \"finished\", toTimestamp(updated_at) - toTimestamp(run_started_at), else: toDuration(0)), alias: duration\n| fieldsRemove record_json, status, updated_at, run_started_at", + "editable": true, + "enabled": true, + "id": "github:workflow:duration_3758", + "matcher": "isNotNull(workflow_run)", + "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "start_time", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{created_at} \n| fieldsAdd start_time = toTimestamp(created_at)\n| fieldsRemove record_json, created_at", + "editable": true, + "enabled": true, + "id": "github:workflow:start_time_8369", + "matcher": "isNotNull(workflow_run) //and event.status == \"started\"", + "sampleData": "{\n \"event.status\": \"started\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/workflows/CI/badge.svg\"\n }\n }", + "type": "dql" + }, + { + "builtin": false, + "description": "end_time", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{updated_at} \n| fieldsAdd end_time = toTimestamp(updated_at)\n| fieldsRemove record_json, updated_at", + "editable": true, + "enabled": true, + "id": "github:workflow:end_time_1541", + "matcher": "isNotNull(workflow_run) and event.status == \"finished\"", + "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/workflows/CI/badge.svg\"\n }\n }", + "type": "dql" + }, + { + "builtin": false, + "description": "timestamp", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{updated_at} \n| fieldsAdd dif2h = toLong(7200000000000)\n| fieldsAdd nt = toLong(toTimestamp(now()))\n| fieldsAdd if(nt - toLong(toTimestamp(start_time)) \u003c dif2h, start_time, else: toTimestamp(nt)), alias: st\n| fieldsAdd if(nt - toLong(toTimestamp(end_time)) \u003c dif2h, end_time, else: toTimestamp(nt)), alias: et\n| fieldsAdd if(nt - toLong(toTimestamp(updated_at)) \u003c dif2h, updated_at, else: toTimestamp(nt)), alias: ut\n| fieldsAdd if(event.status == \"started\", st, else: if(event.status == \"finished\", et, else: ut)), alias: timestamp\n| fieldsRemove record_json, updated_at, st, et, ut, nt, dif2h", + "editable": true, + "enabled": true, + "id": "github:workflow:timestamp_3154", + "matcher": "isNotNull(workflow_run) ", + "sampleData": "{\n \"start_time\": \"2024-10-04T13:30:00.01Z\",\n \"end_time\": \"2024-10-04T13:40:00.00Z\",\n \"event.status\": \"other\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-10-04T13:35:00.00Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/workflows/CI/badge.svg\"\n }\n }", + "type": "dql" + }, + { + "builtin": false, + "description": "cicd.pipeline.id, cicd.pipeline.url.full, cicd.pipeline.name", + "dqlScript": "parse workflow, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, name, html_url} \n| fieldsRename cicd.pipeline.id = id, cicd.pipeline.name = name, cicd.pipeline.url.full = html_url\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:workflow:pipeline.id_pipeline.name_pipeline.url_6138", + "matcher": "isNotNull(workflow_run) and isNotNull(workflow)", + "sampleData": "{\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/workflows/CI/badge.svg\"\n }\n }", + "type": "dql" + }, + { + "builtin": false, + "description": "cicd.pipeline.run.id, cicd.pipeline.run.url.full", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, html_url} \n| fieldsRename cicd.pipeline.run.id = id, cicd.pipeline.run.url.full = html_url\n| fieldsRemove record_json\n", + "editable": true, + "enabled": true, + "id": "github:workflow:pipeline.run.id_pipeline.run.url_5049", + "matcher": "isNotNull(workflow_run)", + "sampleData": "{\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/workflows/CI/badge.svg\"\n }\n }", + "type": "dql" + }, + { + "builtin": false, + "description": "cicd.pipeline.run.outcome", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{conclusion} \n| fieldsRename cicd.pipeline.run.outcome = conclusion\n| fieldsRemove record_json, action", + "editable": true, + "enabled": true, + "id": "github:workflow:pipeline.run.outcome_7507", + "matcher": "isNotNull(workflow_run) and action == \"completed\"", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"created_at\": \"2024-07-03T04:58:10Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\", \n \"pull_requests\": []\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.ref.name", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:workflow:vcs.repository.ref.name_4133", + "matcher": "isNotNull(repository)", + "sampleData": null, + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.url.full", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url} \n| fieldsRename vcs.repository.url.full = html_url", + "editable": true, + "enabled": true, + "id": "github:workflow:vcs.repository.url.full_3802", + "matcher": "isNotNull(repository)", + "sampleData": null, + "type": "dql" + }, + { + "builtin": false, + "description": "ext.pipeline.run.attempt", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_attempt} \n| fieldsRename ext.pipeline.run.attempt = run_attempt\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:workflow:ext.pipeline.run.attempt_6964", + "matcher": "isNotNull(workflow_run) ", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.pipeline.run.trigger", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{event} \n| fieldsRename ext.pipeline.run.trigger = event\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:workflow:ext.pipeline.run.trigger_9871", + "matcher": "isNotNull(workflow_run) ", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.pipeline.(branch|head_sha)", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head_branch, head_sha} \n| fieldsRename ext.pipeline.head_branch = head_branch\n| fieldsRename ext.pipeline.head_sha = head_sha\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:workflow:ext.pipeline.head_branch_sha_2706", + "matcher": "isNotNull(workflow_run) ", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Clean up", + "dqlScript": "fieldsRemove action, workflow_run, workflow, repository, organization, sender, installation", + "editable": true, + "enabled": true, + "id": "github:workflow:remove_fields_3337", + "matcher": "isNotNull(workflow_run)", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168\n },\n \"workflow\": {\n \"id\": 71372937\n },\n \"repository\": {\n \"default_branch\": \"main\"\n },\n \"organization\": {\n \"login\": \"mojaorganizacjatestowa\"\n },\n \"sender\": {\n \"login\": \"sasekmail\"\n },\n \"installation\": {\n \"id\": 45029986,\n \"node_id\": \"MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uNDUwMjk5ODY=\"\n }\n }", + "type": "dql" + } + ] + }, + "securityContext": { + "editable": true, + "processors": [] + }, + "storage": { + "catchAllBucketName": "default_events", + "editable": true, + "processors": [] + }, + "type": "default" + }, + { + "builtin": false, + "dataExtraction": { + "editable": true, + "processors": [] + }, + "displayName": "github-job", + "editable": true, + "enabled": true, + "id": "github:job_9528", + "metricExtraction": { + "editable": true, + "processors": [ + { + "builtin": false, + "description": "Number of finished SDLC tasks", + "dimensions": [ + "event.type", + "event.provider", + "event.status", + "event.category", + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "editable": true, + "enabled": true, + "id": "github:job:number_of_finished_SDLC_tasks_4783", + "matcher": "event.status == \"finished\"", + "metricKey": "events.sdlc.finished_tasks", + "sampleData": null, + "type": "counterMetric" + }, + { + "builtin": false, + "description": "Number of SDLC tasks", + "dimensions": [ + "event.type", + "event.provider", + "event.status", + "event.category", + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "editable": true, + "enabled": true, + "id": "github:job:number_of_SDLC_tasks_4537", + "matcher": "true", + "metricKey": "events.sdlc.tasks", + "sampleData": null, + "type": "counterMetric" + }, + { + "builtin": false, + "description": "Duration of finished SDLC tasks", + "dimensions": [ + "event.provider", + "event.status", + "event.category", + "event.type", + "cicd.pipeline.name", + "vcs.repository.ref.name" + ], + "editable": true, + "enabled": true, + "field": "duration", + "id": "github:job:duration_of_finished_SDLC_tasks_9361", + "matcher": "event.status == \"finished\"", + "metricKey": "events.sdlc.task_duration", + "sampleData": null, + "type": "valueMetric" + } + ] + }, + "processing": { + "editable": true, + "processors": [ + { + "builtin": false, + "description": "event.status", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status} \n| fieldsAdd if(status == \"in_progress\", \"started\", else: if(status == \"completed\", \"finished\", else: status)), alias: event.status\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:event.status_4086", + "matcher": "isNotNull(workflow_job)", + "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "duration", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{started_at, created_at, status} \n| fieldsAdd if((started_at \u003e created_at) and event.status == \"finished\", toTimestamp(started_at) - toTimestamp(created_at), else: toDuration(0)), alias: duration\n| fieldsRemove record_json, started_at, created_at, status", + "editable": true, + "enabled": true, + "id": "github:job:duration_8891", + "matcher": "isNotNull(workflow_job)", + "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "start_time", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{created_at} \n| fieldsAdd start_time = toTimestamp(created_at)\n| fieldsRemove record_json, created_at", + "editable": true, + "enabled": true, + "id": "github:job:start_time_2810", + "matcher": "isNotNull(workflow_job) and event.status == \"started\"", + "sampleData": "{\n \"event.status\": \"started\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "end_time", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{completed_at} \n| fieldsAdd end_time = toTimestamp(completed_at)\n| fieldsRemove record_json, completed_at", + "editable": true, + "enabled": true, + "id": "github:job:end_time_7477", + "matcher": "isNotNull(workflow_job) and event.status == \"finished\"", + "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "timestamp", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{updated_at} \n| fieldsAdd dif2h = toLong(7200000000000)\n| fieldsAdd nt = toLong(toTimestamp(now()))\n| fieldsAdd if(nt - toLong(toTimestamp(start_time)) \u003c dif2h, start_time, else: toTimestamp(nt)), alias: st\n| fieldsAdd if(nt - toLong(toTimestamp(end_time)) \u003c dif2h, end_time, else: toTimestamp(nt)), alias: et\n| fieldsAdd if(event.status == \"started\", st, else: if(event.status == \"finished\", et, else: toTimestamp(nt))), alias: timestamp\n| fieldsRemove record_json, updated_at, st, et, nt, dif2h", + "editable": true, + "enabled": true, + "id": "github:job:timestamp_2361", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"event.status\": \"finished\",\n \"end_time\": \"2024-10-04T14:18:14.749000000Z\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "cicd.pipeline.run.id, task.id, task.name", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_id, id, name} \n| fieldsRename cicd.pipeline.run.id = run_id, task.id = id, task.name = name\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:pipeline.run.id_task.id_4478", + "matcher": "isNotNull(workflow_job)", + "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n }", + "type": "dql" + }, + { + "builtin": false, + "description": "task.outcome", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{conclusion} \n| fieldsRename task.outcome = conclusion\n| fieldsRemove record_json, action", + "editable": true, + "enabled": true, + "id": "github:job:task.outcome_7820", + "matcher": "isNotNull(workflow_job) and action == \"completed\"", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.ref.name", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:vcs.repository.ref.name_8247", + "matcher": "isNotNull(repository)", + "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"mojaorganizacjatestowa/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/mojaorganizacjatestowa\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa\",\n \"followers_url\": \"https://api.github.com/users/mojaorganizacjatestowa/followers\",\n \"following_url\": \"https://api.github.com/users/mojaorganizacjatestowa/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/mojaorganizacjatestowa/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/mojaorganizacjatestowa/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/mojaorganizacjatestowa/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/mojaorganizacjatestowa/orgs\",\n \"repos_url\": \"https://api.github.com/users/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/actionspipeline.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.url.full", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url} \n| fieldsRename vcs.repository.url.full = html_url\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:vcs.repository.url.full_1476", + "matcher": "isNotNull(repository)", + "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"mojaorganizacjatestowa/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/mojaorganizacjatestowa\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa\",\n \"followers_url\": \"https://api.github.com/users/mojaorganizacjatestowa/followers\",\n \"following_url\": \"https://api.github.com/users/mojaorganizacjatestowa/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/mojaorganizacjatestowa/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/mojaorganizacjatestowa/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/mojaorganizacjatestowa/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/mojaorganizacjatestowa/orgs\",\n \"repos_url\": \"https://api.github.com/users/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/actionspipeline.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.topics", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{topics} \n| fieldsRename vcs.repository.topics = topics\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:vcs.repository.topics_9776", + "matcher": "isNotNull(repository)", + "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"mojaorganizacjatestowa/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/mojaorganizacjatestowa\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa\",\n \"followers_url\": \"https://api.github.com/users/mojaorganizacjatestowa/followers\",\n \"following_url\": \"https://api.github.com/users/mojaorganizacjatestowa/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/mojaorganizacjatestowa/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/mojaorganizacjatestowa/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/mojaorganizacjatestowa/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/mojaorganizacjatestowa/orgs\",\n \"repos_url\": \"https://api.github.com/users/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/actionspipeline.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.properties", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{custom_properties} \n| fieldsRename vcs.repository.properties = custom_properties\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:vcs.repository.properties_5603", + "matcher": "isNotNull(repository)", + "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"mojaorganizacjatestowa/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/mojaorganizacjatestowa\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa\",\n \"followers_url\": \"https://api.github.com/users/mojaorganizacjatestowa/followers\",\n \"following_url\": \"https://api.github.com/users/mojaorganizacjatestowa/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/mojaorganizacjatestowa/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/mojaorganizacjatestowa/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/mojaorganizacjatestowa/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/mojaorganizacjatestowa/orgs\",\n \"repos_url\": \"https://api.github.com/users/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/actionspipeline.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.labels", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{labels}\n| fieldsRename ext.task.labels = labels\n| fieldsRemove record_json ", + "editable": true, + "enabled": true, + "id": "github:job:ext.task.labels_3178", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.run.attempt", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_attempt} \n| fieldsRename ext.task.run.attempt = run_attempt\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:ext.task.run.attempt_7991", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.runner.name, ext.task.runner.group.name", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{runner_name, runner_group_name} \n| fieldsRename ext.task.runner.name = runner_name\n| fieldsRename ext.task.runner.group.name = runner_group_name\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:ext.task.runner.name_ext.task.runner.group.name_3013", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.steps", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{steps} \n| fieldsRename ext.task.steps = steps\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:ext.task.steps_6131", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", + "type": "dql" + }, + { + "builtin": false, + "description": "Clean up", + "dqlScript": "fieldsRemove action, workflow_job, repository, organization, sender, installation", + "editable": true, + "enabled": true, + "id": "github:job:remove_fields_7330", + "matcher": "isNotNull(workflow_job)", + "sampleData": null, + "type": "dql" + } + ] + }, + "securityContext": { + "editable": true, + "processors": [] + }, + "storage": { + "catchAllBucketName": "default_events", + "editable": true, + "processors": [] + }, + "type": "default" + }, + { + "builtin": false, + "dataExtraction": { + "editable": true, + "processors": [] + }, + "displayName": "github-pull-request", + "editable": true, + "enabled": true, + "id": "github:pull_request_8730", + "metricExtraction": { + "editable": true, + "processors": [ + { + "builtin": false, + "description": "Number of finished SDLC tasks", + "dimensions": [ + "event.type", + "event.provider", + "event.status", + "event.category", + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "editable": true, + "enabled": true, + "id": "github:pull-request:number_of_finished_SDLC_tasks_2815", + "matcher": "event.status == \"finished\"", + "metricKey": "events.sdlc.finished_tasks", + "sampleData": null, + "type": "counterMetric" + }, + { + "builtin": false, + "description": "Number of SDLC tasks", + "dimensions": [ + "event.type", + "event.provider", + "event.status", + "event.category", + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "editable": true, + "enabled": true, + "id": "github:pull-request:number_of_SDLC_tasks_4441", + "matcher": "true", + "metricKey": "events.sdlc.tasks", + "sampleData": null, + "type": "counterMetric" + }, + { + "builtin": false, + "description": "Duration of finished SDLC tasks", + "dimensions": [ + "event.type", + "event.provider", + "event.category", + "event.status", + "cicd.pipeline.name", + "vcs.repository.ref.name" + ], + "editable": true, + "enabled": true, + "field": "duration", + "id": "github:pull-request:duration_of_finished_SDLC_tasks_3902", + "matcher": "event.status == \"finished\"", + "metricKey": "events.sdlc.task_duration", + "sampleData": null, + "type": "valueMetric" + } + ] + }, + "processing": { + "editable": true, + "processors": [ + { + "builtin": false, + "description": "event.status", + "dqlScript": "/* there was a lack of \"closed\" status for PRs closed w/o merging */\nparse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged, state} \n| fieldsAdd if(merged == true, \"merged\", else: if(state == \"closed\", \"closed\", else: \"open\")), alias: event.status\n| fieldsRemove record_json, merged, state", + "editable": true, + "enabled": true, + "id": "github:pull-request:event.status_8886", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "duration", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged_at, created_at} \n| fieldsAdd if((merged_at \u003e created_at) and event.status == \"merged\", toTimestamp(merged_at) - toTimestamp(created_at), else: toDuration(0)), alias: duration\n| fieldsRemove record_json, merged_at, created_at", + "editable": true, + "enabled": true, + "id": "github:pull-request:duration_3699", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"event.status\":\"merged\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "start_time", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{created_at} \n| fieldsAdd start_time = toTimestamp(created_at)\n| fieldsRemove record_json, created_at", + "editable": true, + "enabled": true, + "id": "github:pull-request:start_time_4242", + "matcher": "isNotNull(pull_request) \n/*\nand event.status == \"open\"\n/*", + "sampleData": "{\n \"event.status\":\"open\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "end_time", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged_at, closed_at} \n//| fieldsAdd end_time = toTimestamp(merged_at)\n| fieldsAdd if(merged == true, toTimestamp(merged_at), else: toTimestamp(closed_at)), alias: end_time\n| fieldsRemove record_json, merged_at, closed_at", + "editable": true, + "enabled": true, + "id": "github:pull-request:end_time_2015", + "matcher": "isNotNull(pull_request) and (event.status == \"merged\" or event.status == \"closed\")", + "sampleData": "{\n \"event.status\": \"merged\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "timestamp", + "dqlScript": "// 2024-11-24 \n// adjustment od timestamp due to potetial PR events comming after source PR is beeing merged and closed. \n// Additionaly Slawek Z. need precise update time for sorting on dashboards\n// A bug for 7200 sec gap? or something else....Toggle this one off\nparse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{updated_at} \n//| fieldsAdd dif2h = toLong(7200000000000)\n| fieldsAdd nt = toLong(toTimestamp(now()))\n//| fieldsAdd if(nt - toLong(toTimestamp(start_time)) \u003c dif2h, start_time, else: toTimestamp(nt)), alias: st\n//| fieldsAdd if(nt - toLong(toTimestamp(updated_at)) \u003c dif2h, updated_at, else: toTimestamp(nt)), alias: timestamp\n| fieldsAdd toTimestamp(nt), alias: timestamp\n//| fieldsAdd if(nt - toLong(toTimestamp(end_time)) \u003c dif2h, end_time, else: toTimestamp(nt)), alias: et\n//| fieldsAdd if(event.status == \"open\", st, else: if(event.status == \"merged\", et, else: toTimestamp(nt))), alias: timestamp\n//| fieldsRemove st, et, nt, dif2h\n| fieldsRemove nt, dif2h, updated_at", + "editable": true, + "enabled": false, + "id": "github:pull-request:timestamp_8455", + "matcher": "isNotNull(pull_request) ", + "sampleData": "{\n \"event.status\": \"merged\",\n \"action\": \"opened\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-11-27T12:57:21Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "task.id, task.name", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename task.id = id, task.name = title\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:pull-request:task.id_8340", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "task.outcome", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged} \n| fieldsAdd if(merged == true, \"Success\"), alias: task.outcome\n| fieldsRemove record_json, merged, action", + "editable": true, + "enabled": true, + "id": "github:pull-request:task.outcome_6376", + "matcher": "isNotNull(pull_request) and action == \"closed\"", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.change.id, vcs.repository.change.title", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename vcs.repository.change.id = id, vcs.repository.change.title = title\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:pull-request:pull_request.id_pull_request.number_pull_request.name_4660", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.ref.name", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:pull-request:vcs.repository.ref.name_9152", + "matcher": "isNotNull(repository)", + "sampleData": null, + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.ref.revision", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merge_commit_sha} \n| fieldsRename vcs.repository.ref.revision = merge_commit_sha\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:pull-request:vcs.repository.ref.revision_9671", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.ref.type", + "dqlScript": "fieldsAdd \"tbd:branch vs tag\", alias: vcs.repository.ref.type", + "editable": true, + "enabled": true, + "id": "github:pull-request:vcs.repository.ref.type_3064", + "matcher": "isNotNull(repository)", + "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.url.full", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url} \n| fieldsRename vcs.repository.url.full = html_url", + "editable": true, + "enabled": true, + "id": "github:pull-request:vcs.repository.url.full_5151", + "matcher": "isNotNull(repository)", + "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.labels", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{labels}\n| fieldsAdd ext.task.labels=toArray(labels)\n//| expand ext.task.labels\n| fieldsRemove record_json, labels", + "editable": true, + "enabled": true, + "id": "github:pull-request:ext.task.labels_8497", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.repository.source.(full_name|name|ref)", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head}\n| fieldsAdd head[repo][full_name], alias: ext.task.repository.source.full_name\n| fieldsAdd head[repo][name], alias: ext.task.repository.source.name\n| fieldsAdd head[ref], alias: ext.task.repository.source.ref\n| fieldsRemove record_json, head", + "editable": true, + "enabled": true, + "id": "github:pull-request:ext.task.repository.source_8853", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"head\": {\n \"label\": \"mojaorganizacjatestowa:sasekmail-patch-7\",\n \"ref\": \"sasekmail-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.repository.target.(full_name|name|ref)", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{base}\n| fieldsAdd base[repo][full_name], alias: ext.task.repository.target.full_name\n| fieldsAdd base[repo][name], alias: ext.task.repository.target.name\n| fieldsAdd base[ref], alias: ext.task.repository.target.ref\n| fieldsRemove record_json, base", + "editable": true, + "enabled": true, + "id": "github:pull-request:ext.task.repository.target._full_name_name_ref_9238", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"base\": {\n \"label\": \"mojaorganizacjatestowa:sasekmail-patch-7\",\n \"ref\": \"sasekmail-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.merger.name", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged_by}\n| fieldsAdd merged_by[login], alias: ext.task.merger.name\n| fieldsRemove record_json, merged_by", + "editable": true, + "enabled": true, + "id": "github:pull-request:ext.task.merger.name_6302", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"author_association\": \"CONTRIBUTOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n },\n \"repository\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"private\": false,\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-17T11:17:59Z\",\n \"pushed_at\": \"2024-09-17T13:07:14Z\",\n \"homepage\": null,\n \"size\": 78,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n },\n \"organization\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"url\": \"https://api.github.com/orgs/mojaorganizacjatestowa\",\n \"repos_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/events\",\n \"hooks_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/hooks\",\n \"issues_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/issues\",\n \"members_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/members{/member}\",\n \"public_members_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/public_members{/member}\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"description\": null\n },\n \"sender\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.sender.name", + "dqlScript": "parse sender, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{login}\n| fieldsAdd login, alias: ext.task.sender.name\n| fieldsRemove record_json, login", + "editable": true, + "enabled": true, + "id": "github:pull-request:ext.task.sender.name_1786", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"author_association\": \"CONTRIBUTOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n },\n \"repository\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"private\": false,\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-17T11:17:59Z\",\n \"pushed_at\": \"2024-09-17T13:07:14Z\",\n \"homepage\": null,\n \"size\": 78,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n },\n \"organization\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"url\": \"https://api.github.com/orgs/mojaorganizacjatestowa\",\n \"repos_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/events\",\n \"hooks_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/hooks\",\n \"issues_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/issues\",\n \"members_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/members{/member}\",\n \"public_members_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/public_members{/member}\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"description\": null\n },\n \"sender\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.merge.commits", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{commits}\n| fieldsAdd commits, alias: ext.task.merge.commits\n| fieldsRemove record_json, commits", + "editable": true, + "enabled": true, + "id": "github:pull-request:ext.task.merge.commits_4167", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.pr.url", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url}\n| fieldsAdd html_url, alias: ext.pr.url\n| fieldsRemove record_json, html_url", + "editable": true, + "enabled": true, + "id": "github:pull-request:ext.pr.url_1987", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.merge_commit_sha", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merge_commit_sha} \n| fieldsRename ext.task.merge_commit_sha = merge_commit_sha\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:pull-request:ext.task.merge_commit_sha_5884", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.(action|number)", + "dqlScript": "fieldsAdd action, alias: ext.task.action, number, alias: ext.task.number", + "editable": true, + "enabled": true, + "id": "github:pull-request:ext.task.action_9401", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Clean up", + "dqlScript": "fieldsRemove action, number, pull_request", + "editable": true, + "enabled": true, + "id": "github:pull-request:remove_fields_3747", + "matcher": "isNotNull(pull_request)", + "sampleData": null, + "type": "dql" + } + ] + }, + "securityContext": { + "editable": true, + "processors": [] + }, + "storage": { + "catchAllBucketName": "default_events", + "editable": true, + "processors": [] + }, + "type": "default" + }, + { + "builtin": false, + "dataExtraction": { + "editable": true, + "processors": [] + }, + "displayName": "github-commit-status", + "editable": true, + "enabled": true, + "id": "github:commit-status_7380", + "metricExtraction": { + "editable": true, + "processors": [ + { + "builtin": false, + "description": "Number of finished SDLC tasks", + "dimensions": [ + "event.category", + "event.type", + "event.provider", + "event.status", + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "editable": true, + "enabled": true, + "id": "github:commit-status:number_of_finished_SDLC_tasks_1543", + "matcher": "event.status == \"finished\"", + "metricKey": "events.sdlc.finished_tasks", + "sampleData": null, + "type": "counterMetric" + }, + { + "builtin": false, + "description": "Number of SDLC tasks", + "dimensions": [ + "event.category", + "event.type", + "event.provider", + "event.status", + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "editable": true, + "enabled": true, + "id": "github:commit-status:number_of_SDLC_tasks_6525", + "matcher": "true", + "metricKey": "events.sdlc.tasks", + "sampleData": null, + "type": "counterMetric" + }, + { + "builtin": false, + "description": "Duration of finished SDLC tasks", + "dimensions": [ + "event.type", + "event.category", + "event.provider", + "event.status", + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "editable": true, + "enabled": true, + "field": "duration", + "id": "github:commit-status:duration_of_finished_SDLC_tasks_1534", + "matcher": "event.status == \"finished\"", + "metricKey": "events.sdlc.task_duration", + "sampleData": null, + "type": "valueMetric" + } + ] + }, + "processing": { + "editable": true, + "processors": [ + { + "builtin": false, + "description": "event.status", + "dqlScript": "fieldsAdd if(state == \"success\", \"built\", else: \"open\"), alias: event.status", + "editable": true, + "enabled": true, + "id": "github:commit-status:event.status_8886", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "duration", + "dqlScript": "fieldsAdd toDuration(0), alias: duration", + "editable": true, + "enabled": false, + "id": "github:commit-status:duration_3699", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "start_time", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{created_at} \n| fieldsAdd start_time = toTimestamp(created_at)\n| fieldsRemove record_json, created_at", + "editable": true, + "enabled": false, + "id": "github:commit-status:start_time_4242", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"\n/*\nand event.status == \"open\"\n/*", + "sampleData": "{\n \"event.status\":\"open\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "end_time", + "dqlScript": "fieldsAdd end_time = toTimestamp(updated_at)", + "editable": true, + "enabled": true, + "id": "github:commit-status:end_time_2015", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "timestamp", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsAdd dif2h = toLong(7200000000000)\n| fieldsAdd nt = toLong(toTimestamp(now()))\n| fieldsAdd if(nt - toLong(toTimestamp(start_time)) \u003c dif2h, start_time, else: toTimestamp(nt)), alias: st\n| fieldsAdd if(nt - toLong(toTimestamp(end_time)) \u003c dif2h, end_time, else: toTimestamp(nt)), alias: et\n| fieldsAdd if(event.status == \"open\", st, else: if(event.status == \"merged\", et, else: toTimestamp(nt))), alias: timestamp\n| fieldsRemove st, et, nt, dif2h", + "editable": true, + "enabled": false, + "id": "github:commit-status:timestamp_8455", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "task.id, task.name", + "dqlScript": "fieldsAdd id, alias: task.id\n| fieldsAdd context, alias: task.name", + "editable": true, + "enabled": true, + "id": "github:commit-status:task.id_8340", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "task.outcome", + "dqlScript": "fieldsAdd state, alias: task.outcome", + "editable": true, + "enabled": true, + "id": "github:commit-status:task.outcome_6376", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.ref.name", + "dqlScript": "fieldsAdd name, alias: vcs.repository.ref.name", + "editable": true, + "enabled": true, + "id": "github:commit-status:vcs.repository.ref.name_9152", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.ref.revision", + "dqlScript": "fieldsAdd sha, alias: vcs.repository.ref.revision", + "editable": true, + "enabled": true, + "id": "github:commit-status:vcs.repository.ref.revision_9671", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "vcs.repository.url.full", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url} \n| fieldsAdd html_url, alias: vcs.repository.url.full \n| fieldsRemove html_url", + "editable": true, + "enabled": true, + "id": "github:commit-status:vcs.repository.url.full_5151", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"SourceCodeRepo-2\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"private\": false,\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2\"\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.repository.branch.(name)", + "dqlScript": "parse branches[0], \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{name}\n| fieldsAdd name, alias:ext.task.repository.branch.name\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:commit-status:ext.task.repository.source_8853", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"SourceCodeRepo-2\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"private\": false,\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2\"\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "ext.task.artifacts", + "dqlScript": "fieldsAdd description, alias:ext.task.artifacts", + "editable": true, + "enabled": true, + "id": "github:commit-status:ext.task.artifacts_2701", + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"SourceCodeRepo-2\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"private\": false,\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2\"\n }\n }\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Clean up", + "dqlScript": "fieldsRemove id, sha, name, target_url, avatar_url, context, description, state, commit, branches, created_at, updated_at, repository, organization, sender", + "editable": true, + "enabled": false, + "id": "github:commit-status:remove_fields_2808", + "matcher": "isNotNull(commit)", + "sampleData": null, + "type": "dql" + } + ] + }, + "securityContext": { + "editable": true, + "processors": [] + }, + "storage": { + "catchAllBucketName": "default_events", + "editable": true, + "processors": [] + }, + "type": "default" + }, + { + "builtin": false, + "dataExtraction": { + "editable": true, + "processors": [] + }, + "displayName": "argocd-application", + "editable": true, + "enabled": true, + "id": "argocd:application_1194", + "metricExtraction": { + "editable": true, + "processors": [ + { + "builtin": false, + "description": "Number of finished SDLC tasks", + "dimensions": [ + "event.category", + "event.type", + "event.provider", + "event.status", + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], + "editable": true, + "enabled": true, + "id": "argocd:application:number_of_finished_SDLC_tasks_3453", + "matcher": "event.status == \"finished\"", + "metricKey": "events.sdlc.finished_tasks", + "sampleData": null, + "type": "counterMetric" + }, + { + "builtin": false, + "description": "Number of SDLC tasks", + "dimensions": [ + "event.category", + "event.type", + "event.provider", + "event.status", + "vcs.repository.ref.name", + "cicd.pipeline.name", + "actor.geo.country.name" + ], + "editable": true, + "enabled": true, + "id": "argocd:application:number_of_SDLC_tasks_2369", + "matcher": "true", + "metricKey": "events.sdlc.tasks", + "sampleData": null, + "type": "counterMetric" + }, + { + "builtin": false, + "description": "Duration of finished SDLC tasks", + "dimensions": [ + "event.type", + "event.category", + "event.provider", + "event.status", + "cicd.pipeline.name", + "vcs.repository.ref.name" + ], + "editable": true, + "enabled": true, + "field": "duration", + "id": "argocd:application:duration_of_finished_SDLC_tasks_3839", + "matcher": "event.status == \"finished\"", + "metricKey": "events.sdlc.task_duration", + "sampleData": null, + "type": "valueMetric" + } + ] + }, + "processing": { + "editable": true, + "processors": [ + { + "builtin": false, + "description": "event.status", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status} \n| fieldsAdd if(lower(status[operationState][phase]) == \"running\", \"started\", else: if(lower(status[operationState][phase]) == \"succeeded\", \"finished\", else: lower(status[operationState][phase]))), alias: event.status\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:event.status_7232", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "duration", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd if((status[operationState][finishedAt] \u003e status[operationState][startedAt]) and lower(status[sync][status]) == \"synced\", toTimestamp(status[operationState][finishedAt]) - toTimestamp(status[operationState][startedAt]), else: toDuration(0)), alias: duration\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:duration_3411", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "start_time", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd start_time = status[operationState][startedAt]\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:start_time_3797", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "end_time", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd end_time = status[operationState][finishedAt]\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:end_time_5325", + "matcher": "type == \"DeploySuccess\" and event.status == \"finished\"", + "sampleData": "{\n \"event.status\":\"finished\",\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "timestamp", + "dqlScript": "fieldsAdd dif2h = toLong(7200000000000)\n| fieldsAdd nt = toLong(toTimestamp(now()))\n| fieldsAdd if(nt - toLong(toTimestamp(start_time)) \u003c dif2h, start_time, else: toTimestamp(nt)), alias: st\n| fieldsAdd if(nt - toLong(toTimestamp(end_time)) \u003c dif2h, end_time, else: toTimestamp(nt)), alias: et\n| fieldsAdd if(event.status == \"started\", st, else: if(event.status == \"finished\", et, else: toTimestamp(nt))), alias: timestamp\n| fieldsRemove st, et, nt, dif2h", + "editable": true, + "enabled": false, + "id": "argocd:application:timestamp_3312", + "matcher": "type == \"DeploySuccess\" and event.status == \"finished\"", + "sampleData": "{\n \"event.status\": \"finished\",\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "deployment.service.(uid|name|namespace|resource_version|project|labels[])", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{metadata}\n| fieldsAdd deployment.service.uid = metadata[uid]\n| fieldsAdd deployment.service.name = metadata[name]\n| fieldsAdd deployment.service.namespace = metadata[namespace]\n| fieldsAdd deployment.service.resource_version = metadata[resourceVersion]\n| fieldsAdd deployment.service.labels = metadata[labels]\n| fieldsRemove record_json, metadata", + "editable": true, + "enabled": true, + "id": "argocd:application:task.id_task.name_5968", + "matcher": "type == \"DeploySuccess\" ", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "deployment.service.(revision)", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n//| fieldsAdd deployment.service.revision = status[sync][revision]\n| fieldsAdd deployment.service.revision = status[operationState][syncResult][revision]\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:ext.application.sync.status_revision_2886", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "deployment.source.(path|repo.url|target_revision)", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n//| fieldsAdd deployment.source.path = spec[source][path]\n//| fieldsAdd deployment.source.repo.url = spec[source][repoURL]\n//| fieldsAdd deployment.source.target_revision = spec[source][targetRevision]\n| fieldsAdd deployment.source.repo.url = status[sync][comparedTo][source][repoURL]\n| fieldsAdd deployment.source.revision = status[sync][comparedTo][source][targetRevision]\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:ext.application.source._path_repo.url_target_revision_project_4441", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "deployment.(project)", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{spec}\n| fieldsAdd deployment.project = spec[project]\n| fieldsRemove record_json, spec", + "editable": true, + "enabled": true, + "id": "argocd:application:deployment.project_6167", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "deployment.target.(namespace|server.url)", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n//| fieldsAdd deployment.target.namespace = spec[destination][namespace]\n//| fieldsAdd deployment.target.server.url = spec[destination][server]\n| fieldsAdd deployment.target.namespace = status[sync][comparedTo][destination][namespace]\n| fieldsAdd deployment.target.server.url = status[sync][comparedTo][destination][server]\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:application.target.namespace.server.url_1851", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "deployment.history", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd deployment.history = status[history]\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:deployment.history_1390", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "deployment.images", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd deployment.images = status[summary][images]\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:deployment.images_3636", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "deployment.labels", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{metadata}\n| fieldsAdd deployment.labels = metadata[labels]\n| fieldsFlatten deployment.labels, prefix: \"deployment.label.\"\n| fieldsRemove record_json, metadata", + "editable": true, + "enabled": true, + "id": "argocd:application:deployment.labels_6365", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\",\n \"host\": \"srv-1\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "deployment.(sync.status|health.status|reconciliation_time)", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd deployment.reconciliation_time = toTimestamp(status[reconciledAt])\n| fieldsAdd deployment.sync.status = lower(status[sync][status])\n| fieldsAdd deployment.health.status = lower(status[health][status])\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:deployment.reconciliation.time_sync.status_health.status_8354", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "argocd.(sync.status|health.status|reconciliation_time)", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd argocd.reconciliation_time = toTimestamp(status[reconciledAt])\n| fieldsAdd argocd.sync.status = lower(status[sync][status])\n| fieldsAdd argocd.health.status = lower(status[health][status])\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:argocd.reconciliation.time_sync.status_health.status_9056", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "argocd.sync.(state|revision)", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd argocd.sync.state = lower(status[operationState][phase])\n| fieldsAdd argocd.sync.previous_revision = lower(status[history][-2][revision])\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:argocd.sync.state_revision_7665", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "argocd.sync.outcome", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd argocd.sync.outcome = lower(status[operationState][message])\n| fieldsRemove record_json, status", + "editable": true, + "enabled": true, + "id": "argocd:application:argocd.sync.outcome_8631", + "matcher": "type == \"DeploySuccess\"", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "type": "dql" + }, + { + "builtin": false, + "description": "Clean up", + "dqlScript": "fieldsRemove type, app, apiVersion, kind, metadata, spec, status, commit.message", + "editable": true, + "enabled": false, + "id": "argocd:application:remove_fields_2091", + "matcher": "type == \"DeploySuccess\"", + "sampleData": null, + "type": "dql" + } + ] + }, + "securityContext": { + "editable": true, + "processors": [] + }, + "storage": { + "catchAllBucketName": "default_events", + "editable": true, + "processors": [] + }, + "type": "default" + }, + { + "builtin": true, + "dataExtraction": { + "editable": false, + "processors": [] + }, + "displayName": "events.sdlc", + "editable": false, + "enabled": true, + "id": "default", + "metricExtraction": { + "editable": false, + "processors": [] + }, + "processing": { + "editable": false, + "processors": [] + }, + "securityContext": { + "editable": false, + "processors": [] + }, + "storage": { + "catchAllBucketName": "default_events", + "editable": false, + "processors": [] + }, + "type": "default" + } + ], + "routing": { + "catchAllPipeline": { + "editable": false, + "pipelineId": "default" + }, + "editable": true, + "entries": [ + { + "builtin": false, + "editable": true, + "enabled": true, + "matcher": "isNotNull(workflow_run)", + "note": "Route matching events into workflow pipline", + "pipelineId": "github:workflow_6504" + }, + { + "builtin": false, + "editable": true, + "enabled": true, + "matcher": "isNotNull(workflow_job)", + "note": "Route matching events into job pipeline", + "pipelineId": "github:job_9528" + }, + { + "builtin": false, + "editable": true, + "enabled": true, + "matcher": "isNotNull(pull_request)", + "note": "Route matching events into PR pipeline ", + "pipelineId": "github:pull_request_8730" + }, + { + "builtin": false, + "editable": true, + "enabled": true, + "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", + "note": "Route matching events into commits pipeline", + "pipelineId": "github:commit-status_7380" + } + ] + } +} \ No newline at end of file From 09e7ad479873adfe333a9b380d2df9def96cf166 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Fri, 10 Jan 2025 07:45:23 +0100 Subject: [PATCH 02/25] Update of readme MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/README.md | 53 ++++++++++++++---- .../GitHub Pull Request monitoring v.2.png | Bin 0 -> 459988 bytes ...Hub Workflows monitoring v.2_pipelines.png | Bin 0 -> 340880 bytes .../GitHub Workflows monitoring v.2_tasks.png | Bin 0 -> 110109 bytes 4 files changed, 43 insertions(+), 10 deletions(-) create mode 100644 github_pipeline_observability/images/GitHub Pull Request monitoring v.2.png create mode 100644 github_pipeline_observability/images/GitHub Workflows monitoring v.2_pipelines.png create mode 100644 github_pipeline_observability/images/GitHub Workflows monitoring v.2_tasks.png diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index 9aee3da..c6afeb3 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -1,6 +1,6 @@ # GitHub Pipeline Observability Package -To leverage the GitHub Pipeline Observability Package, two steps are required: +If you want to know how your GitHub workflows are performing in terms of task duration, failure rate, runner utilization, etc. and you are interested in analyzing pull requests, then leverage this **GitHub Pipeline Observability Package**. To apply it, two steps are required: * Configure Dynatrace OpenPipeline and upload Dashboards * Configure GitHub to send Webhook events to Dynatrace @@ -9,22 +9,22 @@ To leverage the GitHub Pipeline Observability Package, two steps are required: ### Prerequisites 1. [Install Dynatrace Configuration as Code via Monaco](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/installation) -2. [Create an API token](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/manage-configuration#prerequisites) and store as environment variable + +2. [Create an API token](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/manage-configuration#prerequisites) and store it as an environment variable: ``` $env:DT_ENV_TOKEN ``` -3. [Create an OAuth client](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/guides/create-oauth-client) with the following permissions and store as it as environment variables: +3. [Create an OAuth client](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/guides/create-oauth-client) with the following permissions and store it as an environment variables: * "Scopes" - ``` $env:OAUTH_CLIENT_ID $env:OAUTH_CLIENT_SECRET ``` -4. (Optional) Download this repository and go to `github_pipeline_observability` +4. Download this repository and go to `github_pipeline_observability` ``` -git clone +git clone https://github.com/Dynatrace/dynatrace-configuration-as-code-samples.git cd github_pipeline_observability ``` @@ -53,19 +53,26 @@ environmentGroups: value: OAUTH_TOKEN_ENDPOINT ``` - ### Apply Monaco configuration -#### OpenPipeline configuration for Software Development Lifecycle is empty +```mermaid +flowchart TD + A[Check your OpenPipeline SDLC scope] --> B{Is there a custom endpoint/pipeline?}; + B -- No --> C[Deploy OpenPipeline configuration] + B -- Yes --> D[Merge configuration before deploying OpenPipeline configuration] +``` + + +#### Deploy OpenPipeline configuratioon -To configure Dynatrace for GitHub pipeline observability, a OpenPipeline and two Dashboards need to be configured. +To prepare Dynatrace for GitHub pipeline observability, a OpenPipeline and two Dashboards need to be configured. Run the following command to apply this configure. ``` monaco deploy manifest.yaml ``` -#### OpenPipeline configuration for Software Development Lifecycle is available +#### Merge configuration before deploying OpenPipeline configuration MERGE is needed @@ -106,3 +113,29 @@ You can configure webhooks at either the organization level (affecting all repos 5. Select **Active** to receive event details when the hook is triggered. 6. Click **Add webhook** to save the webhook. +## Observe your GitHub workfow and pull request activities + +#### GitHub Workflow monitoring +* Overall Pipeline analysis + * Total number of pipeline runs (+details) + * Pipeline duration: p50, avg + * Failure rate / Pipeline completion status + * Re-runs + * Pipeline triggers + * Error-prune pipelines | Top 5 +![](./images/GitHub%20Workflows%20monitoring%20v.2_pipelines.png) +* Pipeline tasks / steps + * Task duration (p50) + * Error-prune tasks | Top 5 + * Distribution of Runners + * Steps by duration (p50) | Top 5 +![](./images/GitHub%20Workflows%20monitoring%20v.2_tasks.png) + +#### GitHub Pull Request monitoring +* Open PRs (+details) +* Open PRs by repository +* In Open status +* Merged PRs (+details) +* Merged PRs by taget repository +* Time to merge (Open-to-merge duration): p50, avg +![](./images/GitHub%20Pull%20Request%20monitoring%20v.2.png) \ No newline at end of file diff --git a/github_pipeline_observability/images/GitHub Pull Request monitoring v.2.png b/github_pipeline_observability/images/GitHub Pull Request monitoring v.2.png new file mode 100644 index 0000000000000000000000000000000000000000..a4b83f4f1a83519533a412eb77d452ab552bf37a GIT binary patch literal 459988 zcmbTd1yodB_XkWP3Q`IJ(g-5mk^@K$EeJ?=Nq3j1h;%oDbaxLWAlxA@&pelAEKe55dalrG|hwr}331K+%%Q+IW;vbDEFLsJM((!qVNsY4~kB&hW?Cu769lj7xhh ziS`Fff{A8dx)eTadg;>o(3s*pJZ4M!77MLb1jIFrC7DNfT8<&bJoUZDJ|scrWwPV} zZjGAJ3O;>r1YKi@gtKa^1}N)3Np*Xbe^Q?R`gVl4e8}?G0J>QVe+mGKWba2dwi)yt zKcA^Cu^yB*OA_vB6(39^F6`YS>P*U)my;?dK>HT)IrLs}WJKc=Q}OLvs*ub_b~vd- zYVpvYCtt4K(*x-6&E9KEtcQ>5V(hY_6sU zO?9(7ZdS)A6PJzjVVI>UkQ`J^^bhe_NY%W#2cK>Bw3rvw_O=bs`wIZrBxJPM4#I;0 z&j2IX`=r3vcs(Kv*PF-d2A^_+CAE%T>oNhqYMwM_^REK51<0Bbw&e(~H|}$nOkOzQ zxU{v=IeObmNf>0l3TS(uPD@?&jkIcHJ4~+Z_YZiea~C#xF!qz`f=~)Ns;`TFRDSD8 zr7RDQL+~vyh@GFAeUWD(xKvo94V8N56a0>po@GD z{G}c+(OF68h%I2~60}5B`o=OdoC*zh345&PN5J|>W$f1DzKZgPc8Qm(yjOdV39jE} zzI&yPvZ?!YVv+_^vZWP*E7{&9T&_JyKda>B1rI;KxwxQPOKv1()vh^;?GUD1Uoye5fYVzgCYW{`R^AZCH5@vU6;Rh)wY zhbx-!w@f)s2I>LoP5Oz@+weAdo_EyKQc>z`?qWl7!Zyz+V^n4N#?x%*Tb~$)Yv)Yw z(A1-gM;S>wFEF^5r(#nxY1<6BO#0=0Y3G856> z6aE_0di}98cGwzTGa4wIt4n7s$(vv$7}Qs_PIw}5%NHWY%``_Uh9}l-A(GidF(|cog?!RV>W{)5iKbK$P_Ozn7yg;jo}1% zoo_ZFH$gK2oY2xB-{sJavX}N`#*Nb)AaNyb$!yE;|LC7|8+jX&3#`fa*2sM+J@kC& z)zD)_zAfH@h|`c#*@i-2&5e@zslKU)AH*-7U(j46rKhK-rHAQ7roVTH)BC&-*zo8B z;q*$0UD;xZ+qCBN(>=CnuM&_(XWsocxjfzRTN~DT{{=-ojzj!I^ur3AH$87di|D7` z7r!kS&vDV(z|N9x%6HqD-1&U&dP9F>>08AtJE@pZHaKgLqg&wf?kw4=lkAP%N9{!I z?3srZ%X;Jutqs5h?S+s9>BEAB#RiBCz{&*Q4JU=(gx&POB-7k|m&l{s!&_utq(H>a zW5MIby}`rKoz%m6UwfBk_RzvinTAMn!#-#XG}c0 zrk1ah+oT5jvf>wz9GDXreNTBOcZa}f4#|>={J|c|fdj?&?ca;Mpk#Zd&wIHxXN>>$ zjcCvNo|Z3*1dI5HsK}^~QTcLIQDe_8DEXr9BI}}tBh{Y4Q@NG>m3x^jnORf<&39{G zmm6qf@3WUdrhf7FzB6qdtzSM5O>5Bos2evgQHR)m=ho=+#V5_D%m?&2T=r9+ScFJ~ zF*|Fr{V@A5K{AwM^}VkC3tf)75A}PEGj-d#tfP6<$CK#!}LW$1~_A+Vx^*gxm$cRAOXSA_*gW({bRt7(6x0~&9A(^jjW;! z>kg5Ce8Sv`ဆvem^R!fJ#C9*mSJN#EatjY&&2TFHl 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

64-s=E?Fkg1XUl(E7A|ZG3DUl)7Bs^xI5;}@ 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 z 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

&-`{om;zs;RcAU&-gceY|l9foV+#a9E3H!yXfT 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

pd9^Ke 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%0D0m+KlK;23;m0yRI47OhL{rlBy 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

;RQ7xu<+r}56WV+ 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

0V#n^vylNcf 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¥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 literal 0 HcmV?d00001 diff --git a/github_pipeline_observability/images/GitHub Workflows monitoring v.2_tasks.png b/github_pipeline_observability/images/GitHub Workflows monitoring v.2_tasks.png new file mode 100644 index 0000000000000000000000000000000000000000..5f8e8b391f891c3d180edf0a93f5613ece480374 GIT binary patch literal 110109 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 Date: Fri, 10 Jan 2025 07:53:04 +0100 Subject: [PATCH 03/25] Minor change in readme MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/README.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index c6afeb3..0d13f4f 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -1,8 +1,8 @@ # GitHub Pipeline Observability Package If you want to know how your GitHub workflows are performing in terms of task duration, failure rate, runner utilization, etc. and you are interested in analyzing pull requests, then leverage this **GitHub Pipeline Observability Package**. To apply it, two steps are required: -* Configure Dynatrace OpenPipeline and upload Dashboards -* Configure GitHub to send Webhook events to Dynatrace +1. Configure Dynatrace OpenPipeline and upload Dashboards +2. Configure GitHub to send Webhook events to Dynatrace ## Configure Dynatrace OpenPipeline and upload Dashboards @@ -62,11 +62,9 @@ flowchart TD B -- Yes --> D[Merge configuration before deploying OpenPipeline configuration] ``` - #### Deploy OpenPipeline configuratioon -To prepare Dynatrace for GitHub pipeline observability, a OpenPipeline and two Dashboards need to be configured. -Run the following command to apply this configure. +Run the following command to apply the provided configuration. ``` monaco deploy manifest.yaml @@ -74,7 +72,7 @@ monaco deploy manifest.yaml #### Merge configuration before deploying OpenPipeline configuration -MERGE is needed +Describe how to MERGE first ## Configure GitHub to send Webhook events to Dynatrace From 12f4ed45835dcb380231095931b4c32258b89d56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Wed, 15 Jan 2025 14:46:18 +0100 Subject: [PATCH 04/25] Changed Dashboards MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- ...0a635714-5545-4413-95e1-023333e8edac.json} | 1004 +++++++++++++---- .../document-dashboard/config.yaml | 21 +- ...f9847607-0c63-4f8a-99bd-92e7cf7d86db.json} | 576 ++++++++-- 3 files changed, 1287 insertions(+), 314 deletions(-) rename github_pipeline_observability/pipeline_observability/document-dashboard/{d589113d-d8c4-4687-afe7-39d639f168b3.json => 0a635714-5545-4413-95e1-023333e8edac.json} (63%) rename github_pipeline_observability/pipeline_observability/document-dashboard/{c987eb44-e834-44d8-8c28-9c24a016df41.json => f9847607-0c63-4f8a-99bd-92e7cf7d86db.json} (63%) diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/d589113d-d8c4-4687-afe7-39d639f168b3.json b/github_pipeline_observability/pipeline_observability/document-dashboard/0a635714-5545-4413-95e1-023333e8edac.json similarity index 63% rename from github_pipeline_observability/pipeline_observability/document-dashboard/d589113d-d8c4-4687-afe7-39d639f168b3.json rename to github_pipeline_observability/pipeline_observability/document-dashboard/0a635714-5545-4413-95e1-023333e8edac.json index 4c3974f..ee08589 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/d589113d-d8c4-4687-afe7-39d639f168b3.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/0a635714-5545-4413-95e1-023333e8edac.json @@ -2,112 +2,178 @@ "importedWithCode": false, "layouts": { "0": { - "h": 4, - "w": 7, + "h": 5, + "w": 8, "x": 0, - "y": 2 + "y": 7 }, "1": { - "h": 2, + "h": 3, "w": 4, "x": 0, - "y": 0 + "y": 4 }, "10": { - "h": 2, + "h": 3, "w": 4, - "x": 8, - "y": 0 + "x": 0, + "y": 15 }, "11": { - "h": 4, - "w": 7, - "x": 7, - "y": 2 + "h": 5, + "w": 8, + "x": 8, + "y": 7 }, "12": { - "h": 2, + "h": 3, "w": 4, "x": 16, - "y": 0 + "y": 4 }, "14": { - "h": 4, - "w": 7, - "x": 13, - "y": 22 + "h": 6, + "w": 8, + "x": 16, + "y": 42 }, "15": { "h": 6, - "w": 20, - "x": 0, - "y": 32 - }, - "16": { - "h": 1, - "w": 20, + "w": 16, "x": 0, - "y": 15 + "y": 42 }, "17": { - "h": 1, - "w": 20, + "h": 2, + "w": 24, "x": 0, - "y": 31 + "y": 40 }, "18": { - "h": 4, - "w": 7, - "x": 6, - "y": 22 + "h": 6, + "w": 8, + "x": 0, + "y": 29 }, "19": { "h": 5, - "w": 20, + "w": 24, "x": 0, - "y": 26 + "y": 35 }, "2": { + "h": 3, + "w": 4, + "x": 0, + "y": 12 + }, + "20": { "h": 2, + "w": 24, + "x": 0, + "y": 0 + }, + "22": { + "h": 3, "w": 4, "x": 4, - "y": 0 + "y": 4 + }, + "23": { + "h": 3, + "w": 4, + "x": 8, + "y": 4 + }, + "24": { + "h": 2, + "w": 24, + "x": 0, + "y": 2 + }, + "25": { + "h": 2, + "w": 24, + "x": 0, + "y": 24 + }, + "26": { + "h": 3, + "w": 4, + "x": 0, + "y": 26 + }, + "27": { + "h": 3, + "w": 4, + "x": 4, + "y": 26 + }, + "28": { + "h": 3, + "w": 4, + "x": 8, + "y": 26 }, "3": { "h": 6, - "w": 20, + "w": 16, + "x": 8, + "y": 29 + }, + "30": { + "h": 3, + "w": 4, + "x": 12, + "y": 26 + }, + "31": { + "h": 3, + "w": 4, + "x": 20, + "y": 4 + }, + "32": { + "h": 1, + "w": 24, + "x": 0, + "y": 48 + }, + "33": { + "h": 5, + "w": 24, "x": 0, - "y": 16 + "y": 49 }, "4": { - "h": 2, + "h": 3, "w": 4, "x": 12, - "y": 0 + "y": 4 }, "5": { - "h": 4, + "h": 6, "w": 20, - "x": 0, - "y": 6 + "x": 4, + "y": 12 }, "6": { - "h": 4, - "w": 6, - "x": 14, - "y": 2 + "h": 5, + "w": 8, + "x": 16, + "y": 7 }, "7": { - "h": 4, - "w": 6, - "x": 0, - "y": 22 + "h": 3, + "w": 8, + "x": 16, + "y": 26 }, "8": { - "h": 5, - "w": 20, + "h": 6, + "w": 24, "x": 0, - "y": 10 + "y": 18 } }, "settings": {}, @@ -119,7 +185,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize count(), by: { cicd.pipeline.run.outcome}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count(), by: { cicd.pipeline.run.outcome}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -134,7 +200,7 @@ }, "tileTimeframeEnabled": false }, - "title": "Pipeline completion status", + "title": "Workflow Completion Status", "type": "data", "visualization": "pieChart", "visualizationSettings": { @@ -153,9 +219,7 @@ "categoryOverrides": { "": { "added": 1726836121804, - "color": { - "Default": "var(--dt-colors-charts-categorical-color-11-default, #627cfe)" - } + "color": "#C4233B" }, "failure": { "added": 1726836109108, @@ -165,9 +229,7 @@ }, "success": { "added": 1726836111136, - "color": { - "Default": "var(--dt-colors-charts-categorical-color-09-default, #649438)" - } + "color": "#2F6863" } }, "circleChartSettings": { @@ -177,10 +239,22 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "cicd.pipeline.run.outcome", + "displayedFields": [ + "cicd.pipeline.run.outcome", + "count()" + ], + "longitude": "count()", + "value": "count()" + }, "histogram": { "dataMappings": [ { @@ -208,6 +282,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "count()", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -232,7 +314,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "1": { @@ -242,7 +331,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" \n| fields vcs.repository.ref.name,cicd.pipeline.name,ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -257,7 +346,7 @@ }, "tileTimeframeEnabled": false }, - "title": "∑ pipeline runs", + "title": "Total Workflow Executions", "type": "data", "visualization": "singleValue", "visualizationSettings": { @@ -281,10 +370,21 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "count()", + "displayedFields": [ + "count()" + ], + "longitude": "count()", + "value": "count()" + }, "histogram": { "dataMappings": [ { @@ -306,6 +406,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "count()", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -334,7 +442,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "10": { @@ -344,7 +459,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" \n| fields vcs.repository.ref.name,cicd.pipeline.name,ext.pipeline.run.trigger,duration\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize median(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -359,21 +474,21 @@ }, "tileTimeframeEnabled": false }, - "title": "Pipeline duration (Avg)", + "title": "Median Execution Time", "type": "data", "visualization": "singleValue", "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "avg(duration)" + "median(duration)" ], - "categoryAxisLabel": "avg(duration)", + "categoryAxisLabel": "median(duration)", "tooltipVariant": "single", "valueAxis": [ - "avg(duration)" + "median(duration)" ], - "valueAxisLabel": "avg(duration)" + "valueAxisLabel": "median(duration)" }, "categoryOverrides": {}, "circleChartSettings": { @@ -383,15 +498,26 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "median(duration)", + "displayedFields": [ + "avg(duration)" + ], + "longitude": "median(duration)", + "value": "avg(duration)" + }, "histogram": { "dataMappings": [ { "rangeAxis": "", - "valueAxis": "avg(duration)" + "valueAxis": "median(duration)" } ], "displayedFields": [], @@ -408,14 +534,23 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "avg(duration)", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, "colorThresholdTarget": "value", "label": "avg(duration)", "prefixIcon": "", - "recordField": "avg(duration)", + "recordField": "median(duration)", "showLabel": false, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -433,7 +568,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "11": { @@ -443,7 +585,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize count(), by: { ext.pipeline.run.trigger}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count(), by: { ext.pipeline.run.trigger}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -501,10 +643,22 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "ext.pipeline.run.trigger", + "displayedFields": [ + "ext.pipeline.run.trigger", + "count()" + ], + "longitude": "count()", + "value": "count()" + }, "histogram": { "dataMappings": [ { @@ -532,6 +686,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "count()", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -556,7 +718,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "12": { @@ -566,7 +735,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and ext.pipeline.run.attempt \u003e 1 and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| fields vcs.repository.ref.name,cicd.pipeline.name,ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize count() ", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter ext.pipeline.run.attempt \u003e 1 \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name,$Repository) \n| filter in(cicd.pipeline.name,$Workflow) \n| filter in(ext.pipeline.run.trigger,$Trigger)\n| summarize count() ", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -581,7 +750,7 @@ }, "tileTimeframeEnabled": false }, - "title": "∑ Re-runs", + "title": "Re-triggered Workflows", "type": "data", "visualization": "singleValue", "visualizationSettings": { @@ -605,10 +774,21 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "count()", + "displayedFields": [ + "count()" + ], + "longitude": "count()", + "value": "count()" + }, "histogram": { "dataMappings": [ { @@ -630,6 +810,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "count()", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -695,6 +883,9 @@ "title": "" } ], + "tooltip": { + "showCustomFields": false + }, "unitsOverrides": [ { "added": 1727678780356, @@ -706,7 +897,11 @@ "suffix": "", "unitCategory": "percentage" } - ] + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "14": { @@ -716,7 +911,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"task\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\" | fieldsAdd steps_array=toArray(ext.task.steps) | expand steps_array | parse steps_array,\"JSON:steps_data\" \n| join [fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) ], \non:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.status = steps_data[status], \nstep.task.id = task.id,\nstep.task.name = task.name,\nstep.task.outcome = task.outcome,\nstep.task.cicd.pipeline.run.id = cicd.pipeline.run.id \n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(step.conclusion==\"failure\")) / toDouble(count())*100), by: {step.name, step.task.name} | filter failureRate\u003e0 | sort failureRate desc | limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"build\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fieldsAdd steps_array=toArray(ext.task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type==\"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name,$Workflow) \n | filter in(ext.pipeline.run.trigger,$Trigger) ], \n on:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.status = steps_data[status], \nstep.task.id = task.id,\nstep.task.name = task.name,\nstep.task.outcome = task.outcome,\nstep.task.cicd.pipeline.run.id = cicd.pipeline.run.id \n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(step.conclusion==\"failure\")) / toDouble(count())*100), by: {step.name, step.task.name} \n| filter failureRate \u003e 0 \n| sort failureRate desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -724,24 +919,17 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Error-prone steps | Top 5", + "title": "Error-prone Steps | Top 5", "type": "data", "visualization": "pieChart", "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { - "categoryAxis": [ - "step.name", - "step.task.name" - ], "categoryAxisLabel": "step.name,step.task.name", "colorPaletteMode": "multi-color", "groupMode": "grouped", "layout": "horizontal", "tooltipVariant": "grouped", - "valueAxis": [ - "failureRate" - ], "valueAxisLabel": "failureRate" }, "categoryOverrides": {}, @@ -757,35 +945,32 @@ "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "displayedFields": [] + }, "histogram": { - "dataMappings": [ - { - "rangeAxis": "", - "valueAxis": "failureRate" - } - ], - "displayedFields": [ - "step.name", - "step.task.name" - ], + "dataMappings": [], + "displayedFields": [], "variant": "single" }, "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": { - "value": "failureRate" - }, - "displayedFields": [ - "step.name", - "step.task.name" - ], + "dataMappings": {}, + "displayedFields": [], "legend": { "hidden": false, "position": "auto" }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -810,7 +995,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "15": { @@ -820,7 +1012,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"task\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\"\n| join [fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) ], \non:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| fieldsAdd steps_array=toArray(ext.task.steps) | expand steps_array | parse steps_array,\"JSON:steps_data\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.status = steps_data[status], \nstep.task.id = task.id,\nstep.task.name = task.name,\nstep.task.outcome = task.outcome,\nstep.task.cicd.pipeline.run.id = cicd.pipeline.run.id | summarize percentile(step.duration,50), alias:Median ,by:{step.name, alias: StepName,step.task.name, alias: TaskName} | filter isNotNull(Median) | sort Median desc | limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"build\"\n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type==\"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| fieldsAdd steps_array=toArray(ext.task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.status = steps_data[status], \nstep.task.id = task.id,\nstep.task.name = task.name,\nstep.task.outcome = task.outcome,\nstep.task.cicd.pipeline.run.id = cicd.pipeline.run.id \n| summarize percentile(step.duration,50), alias:Median ,by:{step.name, alias: StepName,step.task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -828,7 +1020,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Steps by duration (p50) | Top 5", + "title": "Step Duration (p50) | Top 5", "type": "data", "visualization": "categoricalBarChart", "visualizationSettings": { @@ -857,10 +1049,23 @@ "curve": "linear", "gapPolicy": "connect", "hiddenLegendFields": [], + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "StepName", + "displayedFields": [ + "StepName", + "TaskName", + "Median" + ], + "longitude": "Median", + "value": "Median" + }, "histogram": { "dataMappings": [ { @@ -890,6 +1095,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "Median", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -914,16 +1127,18 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, - "16": { - "content": "## Pipeline tasks", - "title": "", - "type": "markdown" - }, "17": { - "content": "## Pipeline steps", + "content": "### Step Details\n\nThese tiles will give you a comprehensive view of the detailed performance and status of individual steps within your GitHub jobs\n\n-----\n", "title": "", "type": "markdown" }, @@ -934,7 +1149,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"task\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\" \n| join [fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) ], \non:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize Count=count() , by:{ext.task.runner.name} | sort Count desc | limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\"\n| filter event.type==\"build\"\n| filter event.status == \"finished\"\n| filter event.provider==\"github.com\"\n| join [\n fetch events \n | filter event.category == \"pipeline\" \n | filter event.status == \"finished\" \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.type==\"run\" \n | fields cicd.pipeline.run.id,cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize Count=count() , by:{ext.task.runner.name} \n| sort Count desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -942,7 +1157,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Runners used | Top 5", + "title": "Job Runners | Top 5", "type": "data", "visualization": "donutChart", "visualizationSettings": { @@ -968,10 +1183,22 @@ "curve": "linear", "gapPolicy": "connect", "hiddenLegendFields": [], + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "ext.task.runner.name", + "displayedFields": [ + "ext.task.runner.name", + "Count" + ], + "longitude": "Count", + "value": "Count" + }, "histogram": { "dataMappings": [ { @@ -999,6 +1226,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "Count", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1024,6 +1259,9 @@ "rowDensity": "condensed" }, "thresholds": [], + "tooltip": { + "showCustomFields": false + }, "unitsOverrides": [ { "added": 1727680127964, @@ -1035,7 +1273,11 @@ "suffix": "", "unitCategory": "percentage" } - ] + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "19": { @@ -1045,7 +1287,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"started\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) \n\n| fields start_time,cicd.pipeline.run.id,ext.pipeline.run.attempt\n| joinNested jobs=[fetch events | filter event.category == \"task\" and event.status == \"started\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\" | fields cicd.pipeline.run.id,ext.task.run.attempt,start_time | sort start_time asc ],on: {cicd.pipeline.run.id,left[ext.pipeline.run.attempt]==right[ext.task.run.attempt]} \n| fieldsAdd timeToStart = jobs[0][start_time] - start_time ", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"started\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger) \n| fields start_time, cicd.pipeline.run.id, ext.pipeline.run.attempt\n| joinNested jobs=[\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"task\" \n | filter event.type==\"build\" \n | filter event.status == \"started\" \n | filter event.provider==\"github.com\" \n | fields cicd.pipeline.run.id,ext.task.run.attempt,start_time \n | sort start_time asc ],\n on: {cicd.pipeline.run.id,left[ext.pipeline.run.attempt]==right[ext.task.run.attempt]} \n| fieldsAdd timeToStart = jobs[0][start_time] - start_time ", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1088,14 +1330,17 @@ "colorPalette": "categorical", "curve": "smooth", "fieldMapping": { - "leftAxisDimensions": [], "leftAxisValues": [ - "timeToStart" + "cicd.pipeline.run.id" ], "timestamp": "start_time" }, "gapPolicy": "connect", - "hiddenLegendFields": [], + "hiddenLegendFields": [ + "cicd.pipeline.run.id", + "ext.pipeline.run.attempt", + "timeToStart" + ], "leftYAxisSettings": { "isLabelVisible": true, "label": "Time to start" @@ -1107,8 +1352,22 @@ "seriesOverrides": [], "truncationMode": "middle", "valueRepresentation": "absolute", + "xAxisIsLabelVisible": false, + "xAxisLabel": "start_time", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "start_time", + "displayedFields": [ + "start_time", + "cicd.pipeline.run.id", + "ext.pipeline.run.attempt", + "timeToStart" + ], + "latitude": "ext.pipeline.run.attempt", + "longitude": "cicd.pipeline.run.id", + "value": "cicd.pipeline.run.id" + }, "histogram": { "colorPalette": "categorical", "dataMappings": [ @@ -1146,6 +1405,14 @@ "shape": "hexagon", "truncationMode": "middle" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "cicd.pipeline.run.id", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1170,7 +1437,12 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": {}, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "2": { @@ -1180,7 +1452,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| fields vcs.repository.ref.name,cicd.pipeline.name,ext.pipeline.run.trigger,duration\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize median(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1195,21 +1467,21 @@ }, "tileTimeframeEnabled": false }, - "title": "Pipeline duration (p50)", + "title": "Average Execution Time", "type": "data", "visualization": "singleValue", "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "median(duration)" + "avg(duration)" ], - "categoryAxisLabel": "median(duration)", + "categoryAxisLabel": "avg(duration)", "tooltipVariant": "single", "valueAxis": [ - "median(duration)" + "avg(duration)" ], - "valueAxisLabel": "median(duration)" + "valueAxisLabel": "avg(duration)" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1219,15 +1491,26 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "avg(duration)", + "displayedFields": [ + "median(duration)" + ], + "longitude": "avg(duration)", + "value": "median(duration)" + }, "histogram": { "dataMappings": [ { "rangeAxis": "", - "valueAxis": "median(duration)" + "valueAxis": "avg(duration)" } ], "displayedFields": [], @@ -1244,14 +1527,23 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "median(duration)", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, "colorThresholdTarget": "value", "label": "median(duration)", "prefixIcon": "", - "recordField": "median(duration)", + "recordField": "avg(duration)", "showLabel": false, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -1269,9 +1561,56 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, + "20": { + "content": "### GitHub Workflow Pulse: Execution Stats\n\nThis dashboard offers a detailed overview of your GitHub workflow executions, providing valuable insights into the performance and efficiency of your CI/CD pipelines. [Data ingest](https://dt-rnd.atlassian.net/wiki/x/WwLNLg) ", + "title": "", + "type": "markdown" + }, + "22": { + "content": "Successful Executions", + "title": "", + "type": "markdown" + }, + "23": { + "content": "Failed Executions", + "title": "", + "type": "markdown" + }, + "24": { + "content": "### Workflow Details\n\nThis section provides a clear and detailed view of the current state of GitHub workflow executions, enabling you to manage and improve them effectively. \n\n-----", + "title": "", + "type": "markdown" + }, + "25": { + "content": "### Job Details\n\nThis section will give you a comprehensive view of the detailed performance and status of individual jobs within your GitHub workflows, enabling you to monitor, analyze, and optimize your CI/CD processes effectively. \n\n-----", + "title": "", + "type": "markdown" + }, + "26": { + "content": "Total Jobs Executed", + "title": "", + "type": "markdown" + }, + "27": { + "content": "Successful Jobs", + "title": "", + "type": "markdown" + }, + "28": { + "content": "Failed Jobs", + "title": "", + "type": "markdown" + }, "3": { "davis": { "davisVisualization": { @@ -1279,7 +1618,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"task\" and event.status == \"finished\" and event.provider==\"github.com\" and task.outcome!=\"skipped\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\"\n| join [fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) ], \non:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize percentile(duration,50), alias:Median ,by:{task.name, alias: TaskName}| filter isNotNull(Median) | sort Median desc | limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\" \n| filter event.type==\"build\"\n| filter event.status == \"finished\" \n| filter event.provider ==\"github.com\" \n| filter task.outcome != \"skipped\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type==\"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize percentile(duration,50), alias:Median ,by:{task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1287,7 +1626,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Task duration (p50) | Top 5", + "title": "Job Duration (p50) | Top 5", "type": "data", "visualization": "categoricalBarChart", "visualizationSettings": { @@ -1314,11 +1653,23 @@ "curve": "linear", "gapPolicy": "connect", "hiddenLegendFields": [], + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "valueRepresentation": "absolute", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "TaskName", + "displayedFields": [ + "TaskName", + "Median" + ], + "longitude": "Median", + "value": "Median" + }, "histogram": { "dataMappings": [ { @@ -1346,6 +1697,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "Median", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1370,9 +1729,157 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, + "30": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| summarize avg(duration)", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Average Job Duration", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "avg(duration)" + ], + "categoryAxisLabel": "avg(duration)", + "tooltipVariant": "single", + "valueAxis": [ + "avg(duration)" + ], + "valueAxisLabel": "avg(duration)" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "legend": { + "hidden": true + }, + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "dataMapping": { + "dimension": "avg(duration)", + "displayedFields": [ + "median(duration)" + ], + "longitude": "avg(duration)", + "value": "median(duration)" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "avg(duration)" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "median(duration)", + "showLabel": false + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "median(duration)", + "prefixIcon": "", + "recordField": "avg(duration)", + "showLabel": false, + "sparklineSettings": {}, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } + } + }, + "31": { + "content": "Space for an additional KPI", + "title": "", + "type": "markdown" + }, + "32": { + "content": " ", + "title": "", + "type": "markdown" + }, + "33": { + "content": "#### Additional resources\n**Software Development Lifecycle Events**\n* [SDLC events](https://myaccount.dynatrace.com) (docs)\n**Optimize DQL usage**\n* [DQL Best practices](https://docs.dynatrace.com/docs/shortlink/dql-best-practices) (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.2.1", + "title": "", + "type": "markdown" + }, "4": { "davis": { "davisVisualization": { @@ -1380,7 +1887,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" \n| fields vcs.repository.ref.name,cicd.pipeline.name,ext.pipeline.run.trigger,cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name,$Repository) \n| filter in(cicd.pipeline.name,$Workflow)\n| filter in(ext.pipeline.run.trigger,$Trigger)\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1395,7 +1902,7 @@ }, "tileTimeframeEnabled": false }, - "title": "Failure Rate", + "title": "Error Rate", "type": "data", "visualization": "singleValue", "visualizationSettings": { @@ -1419,10 +1926,18 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "displayedFields": [], + "longitude": "failureRate", + "value": "failureRate" + }, "histogram": { "dataMappings": [ { @@ -1444,6 +1959,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "failureRate", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1509,6 +2032,9 @@ "title": "" } ], + "tooltip": { + "showCustomFields": false + }, "unitsOverrides": [ { "added": 1727678780356, @@ -1520,7 +2046,11 @@ "suffix": "", "unitCategory": "percentage" } - ] + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "5": { @@ -1530,7 +2060,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.category == \"pipeline\" and event.status == \"finished\" and cicd.pipeline.run.outcome != \"canceled\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize percentile(duration,50), alias:Median ,by:{cicd.pipeline.name, alias: name} | sort Median desc | limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter cicd.pipeline.run.outcome != \"canceled\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize percentile(duration,50), alias:Median ,by:{cicd.pipeline.name, alias: name} | sort Median desc | limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1538,7 +2068,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Pipeline duration (p50) | Top 5", + "title": "Workflow Duration (p50) | Top 5", "type": "data", "visualization": "categoricalBarChart", "visualizationSettings": { @@ -1564,10 +2094,22 @@ "curve": "linear", "gapPolicy": "connect", "hiddenLegendFields": [], + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "name", + "displayedFields": [ + "name", + "Median" + ], + "longitude": "Median", + "value": "Median" + }, "histogram": { "dataMappings": [ { @@ -1595,6 +2137,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "Median", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1619,7 +2169,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "6": { @@ -1629,7 +2186,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100), by: {vcs.repository.ref.name,cicd.pipeline.name }\n| filter failureRate\u003e0 | sort failureRate desc | limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize failureRate = if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100), by: {vcs.repository.ref.name,cicd.pipeline.name }\n| filter failureRate\u003e0 | sort failureRate desc | limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1637,22 +2194,15 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Error-prune pipelines | Top 5", + "title": "Error-prune Workflows | Top 5", "type": "data", "visualization": "pieChart", "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { - "categoryAxis": [ - "vcs.repository.ref.name", - "cicd.pipeline.name" - ], "categoryAxisLabel": "vcs.repository.ref.name,cicd.pipeline.name", "colorPaletteMode": "multi-color", "tooltipVariant": "single", - "valueAxis": [ - "failureRate" - ], "valueAxisLabel": "failureRate" }, "categoryOverrides": {}, @@ -1668,35 +2218,32 @@ "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "displayedFields": [] + }, "histogram": { - "dataMappings": [ - { - "rangeAxis": "", - "valueAxis": "failureRate" - } - ], - "displayedFields": [ - "vcs.repository.ref.name", - "cicd.pipeline.name" - ], + "dataMappings": [], + "displayedFields": [], "variant": "single" }, "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": { - "value": "failureRate" - }, - "displayedFields": [ - "vcs.repository.ref.name", - "cicd.pipeline.name" - ], + "dataMappings": {}, + "displayedFields": [], "legend": { "hidden": false, "position": "auto" }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1722,6 +2269,9 @@ "rowDensity": "condensed" }, "thresholds": [], + "tooltip": { + "showCustomFields": false + }, "unitsOverrides": [ { "added": 1727680127964, @@ -1733,7 +2283,11 @@ "suffix": "", "unitCategory": "percentage" } - ] + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "7": { @@ -1743,7 +2297,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"task\" and event.status == \"finished\" and event.provider==\"github.com\" and event.kind == \"SDLC_EVENT\" and event.type==\"build\"\n| join [fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\" | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger) ], \non:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(task.outcome==\"failure\")) / toDouble(count())*100), by: task.name | filter failureRate\u003e0 | sort failureRate desc | limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type ==\"build\"\n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type==\"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(task.outcome==\"failure\")) / toDouble(count())*100), by: task.name \n| filter failureRate\u003e0 \n| sort failureRate desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1751,21 +2305,15 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Error-prone tasks | Top 5", + "title": "Error-prone Jobs | Top 5", "type": "data", "visualization": "pieChart", "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { - "categoryAxis": [ - "task.name" - ], "categoryAxisLabel": "task.name", "colorPaletteMode": "multi-color", "tooltipVariant": "single", - "valueAxis": [ - "failureRate" - ], "valueAxisLabel": "failureRate" }, "categoryOverrides": {}, @@ -1781,33 +2329,32 @@ "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "displayedFields": [] + }, "histogram": { - "dataMappings": [ - { - "rangeAxis": "", - "valueAxis": "failureRate" - } - ], - "displayedFields": [ - "task.name" - ], + "dataMappings": [], + "displayedFields": [], "variant": "single" }, "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": { - "value": "failureRate" - }, - "displayedFields": [ - "task.name" - ], + "dataMappings": {}, + "displayedFields": [], "legend": { "hidden": false, "position": "auto" }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1833,6 +2380,9 @@ "rowDensity": "condensed" }, "thresholds": [], + "tooltip": { + "showCustomFields": false + }, "unitsOverrides": [ { "added": 1727680127964, @@ -1844,7 +2394,11 @@ "suffix": "", "unitCategory": "percentage" } - ] + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "8": { @@ -1854,7 +2408,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"pipeline\" and event.status == \"finished\" and event.kind == \"SDLC_EVENT\" and event.type==\"run\"\n| filter in(vcs.repository.ref.name,$Repository) and in(cicd.pipeline.name,$Workflow) and in(ext.pipeline.run.trigger,$Trigger)\n| fields \nDuration = duration,\nName = cicd.pipeline.name,\nStatus = cicd.pipeline.run.outcome,\nRun_url = cicd.pipeline.run.url.full,\nRun_attempt = ext.pipeline.run.attempt,\nRun_trigger = ext.pipeline.run.trigger,\nStart = start_time,\nEnd = end_time,\nRepository = vcs.repository.ref.name \n| sort Duration desc \n", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| fields \nDuration = duration,\nName = cicd.pipeline.name,\nStatus = cicd.pipeline.run.outcome,\nRun = cicd.pipeline.run.url.full,\nAttempts = ext.pipeline.run.attempt,\nTrigger = ext.pipeline.run.trigger,\nStart = start_time,\nEnd = end_time,\nRepository = vcs.repository.ref.name \n| sort Duration desc \n", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1862,7 +2416,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Pipeline run details", + "title": "Workflow Execution Details", "type": "data", "visualization": "table", "visualizationSettings": { @@ -1871,18 +2425,18 @@ "categoryAxis": [ "Name", "Status", - "Run_url", - "Run_trigger", + "Run", + "Trigger", "Repository" ], - "categoryAxisLabel": "Name,Status,Run_url,Run_trigger,Repository", + "categoryAxisLabel": "Name,Status,Run,Trigger,Repository", "colorPaletteMode": "multi-color", "tooltipVariant": "single", "valueAxis": [ "Duration", - "Run_attempt" + "Attempts" ], - "valueAxisLabel": "Duration,Run_attempt" + "valueAxisLabel": "Duration,Attempts" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1892,21 +2446,42 @@ }, "curve": "linear", "fieldMapping": { - "leftAxisDimensions": [ - "Name" - ], "leftAxisValues": [ "Duration" ], "timestamp": "Start" }, "gapPolicy": "connect", - "hiddenLegendFields": [], + "hiddenLegendFields": [ + "Duration", + "Run_attempt", + "Attempts" + ], + "leftYAxisSettings": {}, "pointsDisplay": "auto", "truncationMode": "middle", "valueRepresentation": "absolute", + "xAxisIsLabelVisible": false, + "xAxisLabel": "Start", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "Duration", + "displayedFields": [ + "Duration", + "Name", + "Status", + "Run", + "Attempts", + "Trigger", + "Start", + "End", + "Repository" + ], + "latitude": "Attempts", + "longitude": "Duration", + "value": "Attempts" + }, "histogram": { "dataMappings": [ { @@ -1915,7 +2490,7 @@ }, { "rangeAxis": "", - "valueAxis": "Run_attempt" + "valueAxis": "Attempts" } ], "displayedFields": [ @@ -1934,8 +2509,8 @@ "displayedFields": [ "Name", "Status", - "Run_url", - "Run_trigger", + "Run", + "Trigger", "Repository" ], "legend": { @@ -1944,6 +2519,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "Attempts", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1975,7 +2558,12 @@ "monospacedFontEnabled": false, "rowDensity": "comfortable" }, - "thresholds": [] + "thresholds": [], + "tooltip": {}, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } } }, diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml index cb4fab6..30d71bb 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml @@ -1,30 +1,25 @@ configs: -- id: c987eb44-e834-44d8-8c28-9c24a016df41 +- id: 0a635714-5545-4413-95e1-023333e8edac config: - name: GitHub Pull Request monitoring v.3 + name: GitHub Workflow v.0.2.1 parameters: extractedIDs: type: value value: id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05: 3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05 - template: c987eb44-e834-44d8-8c28-9c24a016df41.json + template: 0a635714-5545-4413-95e1-023333e8edac.json skip: false - originObjectId: c987eb44-e834-44d8-8c28-9c24a016df41 + originObjectId: 0a635714-5545-4413-95e1-023333e8edac type: document: kind: dashboard private: true -- id: d589113d-d8c4-4687-afe7-39d639f168b3 +- id: f9847607-0c63-4f8a-99bd-92e7cf7d86db config: - name: GitHub Workflows monitoring v.3 - parameters: - extractedIDs: - type: value - value: - id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05: 3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05 - template: d589113d-d8c4-4687-afe7-39d639f168b3.json + name: GitHub Pull Request v.0.2.1 + template: f9847607-0c63-4f8a-99bd-92e7cf7d86db.json skip: false - originObjectId: d589113d-d8c4-4687-afe7-39d639f168b3 + originObjectId: f9847607-0c63-4f8a-99bd-92e7cf7d86db type: document: kind: dashboard diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/c987eb44-e834-44d8-8c28-9c24a016df41.json b/github_pipeline_observability/pipeline_observability/document-dashboard/f9847607-0c63-4f8a-99bd-92e7cf7d86db.json similarity index 63% rename from github_pipeline_observability/pipeline_observability/document-dashboard/c987eb44-e834-44d8-8c28-9c24a016df41.json rename to github_pipeline_observability/pipeline_observability/document-dashboard/f9847607-0c63-4f8a-99bd-92e7cf7d86db.json index 33b8bd3..e05401c 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/c987eb44-e834-44d8-8c28-9c24a016df41.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/f9847607-0c63-4f8a-99bd-92e7cf7d86db.json @@ -2,82 +2,124 @@ "importedWithCode": false, "layouts": { "0": { - "h": 2, - "w": 5, + "h": 3, + "w": 4, "x": 0, - "y": 1 + "y": 7 }, "1": { - "h": 4, - "w": 5, - "x": 5, - "y": 1 + "h": 3, + "w": 4, + "x": 4, + "y": 7 }, "10": { - "h": 2, - "w": 5, + "h": 3, + "w": 4, "x": 0, - "y": 3 + "y": 10 }, "11": { - "h": 1, - "w": 23, + "h": 2, + "w": 24, "x": 0, "y": 0 }, "12": { + "h": 2, + "w": 24, + "x": 0, + "y": 18 + }, + "13": { + "h": 2, + "w": 24, + "x": 0, + "y": 5 + }, + "15": { + "h": 5, + "w": 24, + "x": 0, + "y": 32 + }, + "16": { "h": 1, "w": 24, "x": 0, - "y": 9 + "y": 31 + }, + "17": { + "h": 6, + "w": 8, + "x": 16, + "y": 20 + }, + "18": { + "h": 6, + "w": 8, + "x": 16, + "y": 7 + }, + "19": { + "h": 3, + "w": 4, + "x": 4, + "y": 10 }, "2": { - "h": 4, - "w": 23, + "h": 5, + "w": 24, "x": 0, - "y": 5 + "y": 13 + }, + "20": { + "h": 3, + "w": 4, + "x": 0, + "y": 2 }, "3": { - "h": 2, - "w": 5, + "h": 3, + "w": 4, "x": 0, - "y": 10 + "y": 20 }, "4": { - "h": 2, - "w": 5, - "x": 5, - "y": 10 + "h": 3, + "w": 4, + "x": 4, + "y": 23 }, "5": { - "h": 2, - "w": 5, - "x": 5, - "y": 12 + "h": 3, + "w": 4, + "x": 4, + "y": 20 }, "6": { - "h": 4, - "w": 23, + "h": 5, + "w": 24, "x": 0, - "y": 14 + "y": 26 }, "7": { - "h": 4, - "w": 13, - "x": 10, - "y": 1 + "h": 6, + "w": 8, + "x": 8, + "y": 7 }, "8": { - "h": 4, - "w": 13, - "x": 10, - "y": 10 + "h": 6, + "w": 8, + "x": 8, + "y": 20 }, "9": { - "h": 2, - "w": 5, + "h": 3, + "w": 4, "x": 0, - "y": 12 + "y": 23 } }, "settings": {}, @@ -89,7 +131,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } | filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| fieldsAdd OpenedPrDuration = toTimestamp(now())-toTimestamp(start_time) | summarize max(OpenedPrDuration), count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter in(ext.task.repository.target.full_name,$TargetRepository) \n| filter in(ext.task.repository.target.ref,$TargetRef)\n| fieldsAdd OpenedPrDuration = toTimestamp(now())-toTimestamp(start_time) \n| summarize max(OpenedPrDuration), count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -128,6 +170,13 @@ "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "max(OpenedPrDuration)", + "displayedFields": [], + "latitude": "count()", + "longitude": "max(OpenedPrDuration)", + "value": "count()" + }, "histogram": { "dataMappings": [ { @@ -153,6 +202,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "count()", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -177,7 +234,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "1": { @@ -187,7 +251,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } | filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now())-toTimestamp(start_time) | summarize max(OpenedPrDuration), count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now()) - toTimestamp(start_time) \n| summarize max(OpenedPrDuration), count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -195,7 +259,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "In Open status (time max)", + "title": "Oldest Open PR", "type": "data", "visualization": "singleValue", "visualizationSettings": { @@ -225,6 +289,15 @@ "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "max(OpenedPrDuration)", + "displayedFields": [ + "count()" + ], + "latitude": "count()", + "longitude": "max(OpenedPrDuration)", + "value": "count()" + }, "histogram": { "dataMappings": [ { @@ -250,6 +323,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "count()", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -279,6 +360,9 @@ "rowDensity": "condensed" }, "thresholds": [], + "tooltip": { + "showCustomFields": false + }, "unitsOverrides": [ { "added": 1727701272906, @@ -290,7 +374,11 @@ "suffix": "", "unitCategory": "time" } - ] + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "10": { @@ -300,7 +388,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| sort timestamp desc\n| summarize { statuses = collectArray(event.status), actions = collectArray(ext.task.action) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } | filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter contains(toString(actions),\"reopened\")\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status), actions = collectArray(ext.task.action) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter contains(toString(actions),\"reopened\")\n| filter in(ext.task.repository.target.full_name, $TargetRepository) and in(ext.task.repository.target.ref, $TargetRef)\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -336,11 +424,20 @@ "hiddenLegendFields": [ "task" ], + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "valueRepresentation": "absolute", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "count()", + "displayedFields": [], + "longitude": "count()", + "value": "count()" + }, "histogram": { "dataMappings": [ { @@ -362,6 +459,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "count()", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -388,16 +493,53 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "11": { - "content": "## Open Pull Requests", + "content": "### GitHub Pull Request Pulse: Open \u0026 Merged Insights\nThis dashboard provides a comprehensive overview of the status of pull requests (PRs) in your GitHub repositories. Track open and merged PRs in real-time, analyze trends, and gain insights into your team's development workflow. [Data ingest](https://dt-rnd.atlassian.net/wiki/x/WwLNLg) ", "title": "", "type": "markdown" }, "12": { - "content": "## Merged Pull Requests", + "content": "### Merged Pull Requests\n\nThis section provides a clear and detailed view of the merged pull requests, helping you to understand the efficiency and effectiveness of your code integration process.\n\n-----", + "title": "", + "type": "markdown" + }, + "13": { + "content": "### Open Pull Requests\n\nThis section provides a clear and detailed view of the current state of open pull requests, enabling you to manage and prioritize them effectively. \n\n-----", + "title": "", + "type": "markdown" + }, + "15": { + "content": "#### Additional resources\n**Software Development Lifecycle Events**\n* [SDLC events](https://myaccount.dynatrace.com) (docs)\n**Optimize DQL usage**\n* [DQL Best practices](https://docs.dynatrace.com/docs/shortlink/dql-best-practices) (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.2.1", + "title": "", + "type": "markdown" + }, + "16": { + "content": " ", + "title": "", + "type": "markdown" + }, + "17": { + "content": "Merged PRs by Author", + "title": "", + "type": "markdown" + }, + "18": { + "content": "Open PRs by Author", + "title": "", + "type": "markdown" + }, + "19": { + "content": "Average Time Open", "title": "", "type": "markdown" }, @@ -408,7 +550,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url , vcs.repository.change.id } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fields \nIn_open_status = toTimestamp(now())-toTimestamp(start_time),\nPR_number = number, \nPR_title = task.name,\nPR_url= ext.pr.url,\nSource_repo = ext.task.repository.source.full_name, \nSource_ref=ext.task.repository.source.ref, \nTarget_repo = ext.task.repository.target.full_name, \nTarget_ref=ext.task.repository.target.ref,\nCreated_at = start_time, GlobalId = vcs.repository.change.id \n| sort In_open_status desc\n\n", + "query": "fetch events \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.provider==\"github.com\" \n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url , vcs.repository.change.id } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fields \nIn_open_status = toTimestamp(now())-toTimestamp(start_time),\nPR_number = number, \nPR_title = task.name,\nPR_url= ext.pr.url,\nSource_repo = ext.task.repository.source.full_name, \nSource_ref=ext.task.repository.source.ref, \nTarget_repo = ext.task.repository.target.full_name, \nTarget_ref=ext.task.repository.target.ref,\nCreated_at = start_time, GlobalId = vcs.repository.change.id \n| sort In_open_status desc\n\n", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -416,7 +558,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Open PRs details", + "title": "Open PRs Details", "type": "data", "visualization": "table", "visualizationSettings": { @@ -447,24 +589,55 @@ }, "curve": "linear", "fieldMapping": { - "leftAxisDimensions": [ - "PR_title" - ], "leftAxisValues": [ "In_open_status" ], "timestamp": "Created_at" }, "gapPolicy": "connect", - "hiddenLegendFields": [], + "hiddenLegendFields": [ + "In_open_status", + "PR_number", + "GlobalId" + ], + "leftYAxisSettings": {}, "pointsDisplay": "auto", "truncationMode": "middle", "valueRepresentation": "absolute", + "xAxisIsLabelVisible": false, + "xAxisLabel": "Created_at", "xAxisScaling": "analyzedTimeframe" }, - "histogram": { - "dataMappings": [], + "dataMapping": { + "dimension": "In_open_status", "displayedFields": [], + "latitude": "PR_number", + "longitude": "In_open_status", + "value": "PR_number" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "In_open_status" + }, + { + "rangeAxis": "", + "valueAxis": "PR_number" + }, + { + "rangeAxis": "", + "valueAxis": "GlobalId" + } + ], + "displayedFields": [ + "PR_title", + "PR_url", + "Source_repo", + "Source_ref", + "Target_repo", + "Target_ref" + ], "variant": "single" }, "honeycomb": { @@ -487,6 +660,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "PR_number", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -532,6 +713,9 @@ "rowDensity": "default" }, "thresholds": [], + "tooltip": { + "showCustomFields": false + }, "unitsOverrides": [ { "added": 1727701272906, @@ -543,9 +727,18 @@ "suffix": "", "unitCategory": "time" } - ] + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, + "20": { + "content": "**Merge Success Rate:** Shows the percentage of pull requests that have been successfully merged out of the total submitted, indicating the overall success rate of PR merges.", + "title": "", + "type": "markdown" + }, "3": { "davis": { "davisVisualization": { @@ -553,7 +746,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| dedup task.id\n| summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -593,6 +786,17 @@ "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "Count", + "displayedFields": [ + "Count", + "Median", + "Avg" + ], + "latitude": "Median", + "longitude": "Count", + "value": "Count" + }, "histogram": { "dataMappings": [ { @@ -622,6 +826,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "Count", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -646,7 +858,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "4": { @@ -656,7 +875,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\"\n | filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n | dedup task.id\n | summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -664,7 +883,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Open-to-merge duration (p50)", + "title": "Merge Time (p50)", "type": "data", "visualization": "singleValue", "visualizationSettings": { @@ -696,6 +915,17 @@ "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "Count", + "displayedFields": [ + "Count", + "Median", + "Avg" + ], + "latitude": "Median", + "longitude": "Count", + "value": "Count" + }, "histogram": { "dataMappings": [ { @@ -725,6 +955,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "Count", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -749,7 +987,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "5": { @@ -759,7 +1004,8 @@ }, "enabled": false }, - "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| dedup task.id\n| summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", + "description": "Shows the average time taken to merge pull requests, providing insights into the efficiency of the review and merge process.", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -767,7 +1013,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Open-to-merge duration (avg)", + "title": "Average Merge Time", "type": "data", "visualization": "singleValue", "visualizationSettings": { @@ -799,6 +1045,17 @@ "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "Count", + "displayedFields": [ + "Count", + "Median", + "Avg" + ], + "latitude": "Median", + "longitude": "Count", + "value": "Count" + }, "histogram": { "dataMappings": [ { @@ -828,6 +1085,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "Count", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -852,7 +1117,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "6": { @@ -862,7 +1134,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" | sort timestamp asc\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| dedup task.id\n| fields Duration = duration, Number = number, Title = task.name,Url= ext.pr.url,SourceRepository = ext.task.repository.source.full_name, SourceRef=ext.task.repository.source.ref, TargetRepository = ext.task.repository.target.full_name, TargetRef=ext.task.repository.target.ref, CreatedAt = start_time, MergetAt = end_time,GlobalId = vcs.repository.change.id | sort Duration desc\n", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\" \n| sort timestamp asc\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| fields \nMergetAt = end_time,\nDuration = duration, \nNumber = number, \nTitle = task.name,\nUrl= ext.pr.url,\nSourceRepository = ext.task.repository.source.full_name, \nSourceRef=ext.task.repository.source.ref, \nTargetRepository = ext.task.repository.target.full_name, \nTargetRef=ext.task.repository.target.ref, \nCreatedAt = start_time, \nGlobalId = vcs.repository.change.id \n| sort Duration desc\n", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -870,7 +1142,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Merged PRs details", + "title": "Merged PRs Details", "type": "data", "visualization": "table", "visualizationSettings": { @@ -901,27 +1173,54 @@ }, "curve": "linear", "fieldMapping": { - "leftAxisDimensions": [ - "Title" - ], "leftAxisValues": [ "Duration" ], - "timestamp": "CreatedAt" + "timestamp": "MergetAt" }, "gapPolicy": "connect", - "hiddenLegendFields": [], + "hiddenLegendFields": [ + "Duration", + "Number", + "GlobalId" + ], + "leftYAxisSettings": {}, "pointsDisplay": "auto", "truncationMode": "middle", "valueRepresentation": "absolute", + "xAxisIsLabelVisible": false, + "xAxisLabel": "MergetAt", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "MergetAt", + "displayedFields": [ + "Duration", + "Number", + "Title", + "Url", + "SourceRepository", + "SourceRef", + "TargetRepository", + "TargetRef", + "CreatedAt", + "MergetAt", + "GlobalId" + ], + "latitude": "Number", + "longitude": "Duration", + "value": "Number" + }, "histogram": { "dataMappings": [ { "rangeAxis": "", "valueAxis": "Duration" }, + { + "rangeAxis": "", + "valueAxis": "Number" + }, { "rangeAxis": "", "valueAxis": "GlobalId" @@ -957,6 +1256,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "Number", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -985,7 +1292,12 @@ "direction": "descending" } }, - "thresholds": [] + "thresholds": [], + "tooltip": {}, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "7": { @@ -995,7 +1307,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } | filter not in(statuses[0],array(\"merged\",\"closed\")) \n| summarize count(),by: {ext.task.repository.target.full_name}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\"\n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| summarize count(),by: {ext.task.repository.target.full_name}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1003,7 +1315,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": " Open PRs by target repository", + "title": " Open PRs by Repository", "type": "data", "visualization": "pieChart", "visualizationSettings": { @@ -1029,13 +1341,29 @@ "colorPalette": "swamps", "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, - "histogram": { - "dataMappings": [], + "dataMapping": { + "dimension": "ext.task.repository.target.full_name", "displayedFields": [], + "longitude": "count()", + "value": "count()" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "count()" + } + ], + "displayedFields": [ + "ext.task.repository.target.full_name" + ], "variant": "single" }, "honeycomb": { @@ -1055,6 +1383,14 @@ "min": null, "shape": "circle" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "count()", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1079,7 +1415,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "8": { @@ -1089,7 +1432,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" | sort timestamp asc\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| dedup task.id\n| summarize Count= count(),by:{vcs.repository.ref.name}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\" \n| sort timestamp asc\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| summarize Count= count(),by:{vcs.repository.ref.name}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1097,7 +1440,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Merged Pull Requests by Target Repository", + "title": "Merged PRs by Repository", "type": "data", "visualization": "pieChart", "visualizationSettings": { @@ -1122,10 +1465,22 @@ "colorPalette": "blue-steel", "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "dimension": "vcs.repository.ref.name", + "displayedFields": [ + "vcs.repository.ref.name", + "Count" + ], + "longitude": "Count", + "value": "Count" + }, "histogram": { "dataMappings": [ { @@ -1153,6 +1508,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "Count", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1177,7 +1540,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "9": { @@ -1187,7 +1557,7 @@ }, "enabled": false }, - "query": "fetch events | filter event.status == \"merged\" and event.category == \"task\" and event.type==\"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| dedup task.id\n| summarize SumCommits = sum(ext.task.merge.commits)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\"\n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| summarize SumCommits = sum(ext.task.merge.commits)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1195,7 +1565,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Merged commits via PRs", + "title": "Merged commits", "type": "data", "visualization": "singleValue", "visualizationSettings": { @@ -1219,10 +1589,18 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "displayedFields": [], + "longitude": "SumCommits", + "value": "SumCommits" + }, "histogram": { "dataMappings": [ { @@ -1244,6 +1622,14 @@ }, "shape": "hexagon" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "SumCommits", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -1268,26 +1654,30 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } } }, "variables": [ { - "defaultValue": [ - "{{ .extractedIDs.id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05 }}*" - ], - "input": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| summarize distinctTargetRepositories = collectDistinct(ext.task.repository.target.full_name)\n| expand distinctTargetRepositories\n| sort distinctTargetRepositories", + "input": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\" \n| summarize distinctTargetRepositories = collectDistinct(ext.task.repository.target.full_name)\n| expand distinctTargetRepositories\n| sort distinctTargetRepositories", "key": "TargetRepository", - "multiple": true, + "multiple": false, "type": "query", "visible": true }, { "defaultValue": [ - "{{ .extractedIDs.id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05 }}*" + "main" ], - "input": "fetch events | filter event.category == \"task\" and event.type == \"change\" and event.kind == \"SDLC_EVENT\" and event.provider==\"github.com\" \n| summarize distinctTargetRef = collectDistinct(ext.task.repository.target.ref)\n| expand distinctTargetRef\n| sort distinctTargetRef", + "input": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\"\n| summarize distinctTargetRef = collectDistinct(ext.task.repository.target.ref)\n| expand distinctTargetRef\n| sort distinctTargetRef", "key": "TargetRef", "multiple": true, "type": "query", From c4935758d6cc4d63ff4214c8292a15a2ebb042bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Tue, 21 Jan 2025 08:58:16 +0100 Subject: [PATCH 05/25] Clean up sample data MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../openpipeline/events.sdlc.json | 162 +++++++++--------- 1 file changed, 81 insertions(+), 81 deletions(-) diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json index c9752d7..e01d1ba 100644 --- a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json +++ b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json @@ -51,7 +51,7 @@ "enabled": true, "id": "github:sets_default_and_type_change_2135", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -62,7 +62,7 @@ "enabled": true, "id": "github:sets_default_and_type_commit_6181", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", "type": "dql" }, { @@ -117,7 +117,7 @@ "enabled": true, "id": "argocd:sets_application_properties_6951", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n }\n }\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n }\n }\n}", "type": "dql" }, { @@ -128,7 +128,7 @@ "enabled": true, "id": "argocd:sets_task_id_and_name_4198", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n }\n }\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n }\n }\n}", "type": "dql" } ], @@ -335,7 +335,7 @@ "enabled": true, "id": "github:workflow:duration_3758", "matcher": "isNotNull(workflow_run)", - "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\"\n }\n}", + "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\"\n }\n}", "type": "dql" }, { @@ -346,7 +346,7 @@ "enabled": true, "id": "github:workflow:start_time_8369", "matcher": "isNotNull(workflow_run) //and event.status == \"started\"", - "sampleData": "{\n \"event.status\": \"started\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/workflows/CI/badge.svg\"\n }\n }", + "sampleData": "{\n \"event.status\": \"started\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/github-org/actionspipeline/workflows/CI/badge.svg\"\n }\n }", "type": "dql" }, { @@ -357,7 +357,7 @@ "enabled": true, "id": "github:workflow:end_time_1541", "matcher": "isNotNull(workflow_run) and event.status == \"finished\"", - "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/workflows/CI/badge.svg\"\n }\n }", + "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/github-org/actionspipeline/workflows/CI/badge.svg\"\n }\n }", "type": "dql" }, { @@ -368,7 +368,7 @@ "enabled": true, "id": "github:workflow:timestamp_3154", "matcher": "isNotNull(workflow_run) ", - "sampleData": "{\n \"start_time\": \"2024-10-04T13:30:00.01Z\",\n \"end_time\": \"2024-10-04T13:40:00.00Z\",\n \"event.status\": \"other\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-10-04T13:35:00.00Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/workflows/CI/badge.svg\"\n }\n }", + "sampleData": "{\n \"start_time\": \"2024-10-04T13:30:00.01Z\",\n \"end_time\": \"2024-10-04T13:40:00.00Z\",\n \"event.status\": \"other\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-10-04T13:35:00.00Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/github-org/actionspipeline/workflows/CI/badge.svg\"\n }\n }", "type": "dql" }, { @@ -379,7 +379,7 @@ "enabled": true, "id": "github:workflow:pipeline.id_pipeline.name_pipeline.url_6138", "matcher": "isNotNull(workflow_run) and isNotNull(workflow)", - "sampleData": "{\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/workflows/CI/badge.svg\"\n }\n }", + "sampleData": "{\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/github-org/actionspipeline/workflows/CI/badge.svg\"\n }\n }", "type": "dql" }, { @@ -390,7 +390,7 @@ "enabled": true, "id": "github:workflow:pipeline.run.id_pipeline.run.url_5049", "matcher": "isNotNull(workflow_run)", - "sampleData": "{\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/workflows/CI/badge.svg\"\n }\n }", + "sampleData": "{\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/github-org/actionspipeline/workflows/CI/badge.svg\"\n }\n }", "type": "dql" }, { @@ -400,7 +400,7 @@ "editable": true, "enabled": true, "id": "github:workflow:pipeline.run.outcome_7507", - "matcher": "isNotNull(workflow_run) and action == \"completed\"", + "matcher": "isNotNull(workflow_run) and action == \"completed\" or action == \"requested\"", "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"created_at\": \"2024-07-03T04:58:10Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\", \n \"pull_requests\": []\n }\n}", "type": "dql" }, @@ -434,7 +434,7 @@ "enabled": true, "id": "github:workflow:ext.pipeline.run.attempt_6964", "matcher": "isNotNull(workflow_run) ", - "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", "type": "dql" }, { @@ -445,7 +445,7 @@ "enabled": true, "id": "github:workflow:ext.pipeline.run.trigger_9871", "matcher": "isNotNull(workflow_run) ", - "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", "type": "dql" }, { @@ -456,7 +456,7 @@ "enabled": true, "id": "github:workflow:ext.pipeline.head_branch_sha_2706", "matcher": "isNotNull(workflow_run) ", - "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", "type": "dql" }, { @@ -467,7 +467,7 @@ "enabled": true, "id": "github:workflow:remove_fields_3337", "matcher": "isNotNull(workflow_run)", - "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168\n },\n \"workflow\": {\n \"id\": 71372937\n },\n \"repository\": {\n \"default_branch\": \"main\"\n },\n \"organization\": {\n \"login\": \"mojaorganizacjatestowa\"\n },\n \"sender\": {\n \"login\": \"sasekmail\"\n },\n \"installation\": {\n \"id\": 45029986,\n \"node_id\": \"MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uNDUwMjk5ODY=\"\n }\n }", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168\n },\n \"workflow\": {\n \"id\": 71372937\n },\n \"repository\": {\n \"default_branch\": \"main\"\n },\n \"organization\": {\n \"login\": \"github-org\"\n },\n \"sender\": {\n \"login\": \"github-user\"\n },\n \"installation\": {\n \"id\": 45029986,\n \"node_id\": \"MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uNDUwMjk5ODY=\"\n }\n }", "type": "dql" } ] @@ -567,7 +567,7 @@ "enabled": true, "id": "github:job:event.status_4086", "matcher": "isNotNull(workflow_job)", - "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" }, { @@ -578,7 +578,7 @@ "enabled": true, "id": "github:job:duration_8891", "matcher": "isNotNull(workflow_job)", - "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" }, { @@ -589,7 +589,7 @@ "enabled": true, "id": "github:job:start_time_2810", "matcher": "isNotNull(workflow_job) and event.status == \"started\"", - "sampleData": "{\n \"event.status\": \"started\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "sampleData": "{\n \"event.status\": \"started\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" }, { @@ -600,7 +600,7 @@ "enabled": true, "id": "github:job:end_time_7477", "matcher": "isNotNull(workflow_job) and event.status == \"finished\"", - "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "sampleData": "{\n \"event.status\": \"finished\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" }, { @@ -611,7 +611,7 @@ "enabled": true, "id": "github:job:timestamp_2361", "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"event.status\": \"finished\",\n \"end_time\": \"2024-10-04T14:18:14.749000000Z\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "sampleData": "{\n \"event.status\": \"finished\",\n \"end_time\": \"2024-10-04T14:18:14.749000000Z\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" }, { @@ -622,7 +622,7 @@ "enabled": true, "id": "github:job:pipeline.run.id_task.id_4478", "matcher": "isNotNull(workflow_job)", - "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n }", + "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n }", "type": "dql" }, { @@ -633,7 +633,7 @@ "enabled": true, "id": "github:job:task.outcome_7820", "matcher": "isNotNull(workflow_job) and action == \"completed\"", - "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" }, { @@ -644,7 +644,7 @@ "enabled": true, "id": "github:job:vcs.repository.ref.name_8247", "matcher": "isNotNull(repository)", - "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"mojaorganizacjatestowa/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/mojaorganizacjatestowa\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa\",\n \"followers_url\": \"https://api.github.com/users/mojaorganizacjatestowa/followers\",\n \"following_url\": \"https://api.github.com/users/mojaorganizacjatestowa/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/mojaorganizacjatestowa/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/mojaorganizacjatestowa/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/mojaorganizacjatestowa/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/mojaorganizacjatestowa/orgs\",\n \"repos_url\": \"https://api.github.com/users/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/actionspipeline.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, { @@ -655,7 +655,7 @@ "enabled": true, "id": "github:job:vcs.repository.url.full_1476", "matcher": "isNotNull(repository)", - "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"mojaorganizacjatestowa/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/mojaorganizacjatestowa\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa\",\n \"followers_url\": \"https://api.github.com/users/mojaorganizacjatestowa/followers\",\n \"following_url\": \"https://api.github.com/users/mojaorganizacjatestowa/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/mojaorganizacjatestowa/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/mojaorganizacjatestowa/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/mojaorganizacjatestowa/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/mojaorganizacjatestowa/orgs\",\n \"repos_url\": \"https://api.github.com/users/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/actionspipeline.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, { @@ -666,7 +666,7 @@ "enabled": true, "id": "github:job:vcs.repository.topics_9776", "matcher": "isNotNull(repository)", - "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"mojaorganizacjatestowa/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/mojaorganizacjatestowa\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa\",\n \"followers_url\": \"https://api.github.com/users/mojaorganizacjatestowa/followers\",\n \"following_url\": \"https://api.github.com/users/mojaorganizacjatestowa/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/mojaorganizacjatestowa/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/mojaorganizacjatestowa/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/mojaorganizacjatestowa/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/mojaorganizacjatestowa/orgs\",\n \"repos_url\": \"https://api.github.com/users/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/actionspipeline.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, { @@ -677,7 +677,7 @@ "enabled": true, "id": "github:job:vcs.repository.properties_5603", "matcher": "isNotNull(repository)", - "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"mojaorganizacjatestowa/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/mojaorganizacjatestowa\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa\",\n \"followers_url\": \"https://api.github.com/users/mojaorganizacjatestowa/followers\",\n \"following_url\": \"https://api.github.com/users/mojaorganizacjatestowa/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/mojaorganizacjatestowa/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/mojaorganizacjatestowa/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/mojaorganizacjatestowa/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/mojaorganizacjatestowa/orgs\",\n \"repos_url\": \"https://api.github.com/users/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/mojaorganizacjatestowa/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/actionspipeline.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, { @@ -688,7 +688,7 @@ "enabled": true, "id": "github:job:ext.task.labels_3178", "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n}", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n}", "type": "dql" }, { @@ -699,7 +699,7 @@ "enabled": true, "id": "github:job:ext.task.run.attempt_7991", "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\"\n }\n}", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\"\n }\n}", "type": "dql" }, { @@ -710,7 +710,7 @@ "enabled": true, "id": "github:job:ext.task.runner.name_ext.task.runner.group.name_3013", "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", "type": "dql" }, { @@ -721,7 +721,7 @@ "enabled": true, "id": "github:job:ext.task.steps_6131", "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", "type": "dql" }, { @@ -832,7 +832,7 @@ "enabled": true, "id": "github:pull-request:event.status_8886", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -843,7 +843,7 @@ "enabled": true, "id": "github:pull-request:duration_3699", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"event.status\":\"merged\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"event.status\":\"merged\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -854,7 +854,7 @@ "enabled": true, "id": "github:pull-request:start_time_4242", "matcher": "isNotNull(pull_request) \n/*\nand event.status == \"open\"\n/*", - "sampleData": "{\n \"event.status\":\"open\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"event.status\":\"open\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -865,7 +865,7 @@ "enabled": true, "id": "github:pull-request:end_time_2015", "matcher": "isNotNull(pull_request) and (event.status == \"merged\" or event.status == \"closed\")", - "sampleData": "{\n \"event.status\": \"merged\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"event.status\": \"merged\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -876,7 +876,7 @@ "enabled": false, "id": "github:pull-request:timestamp_8455", "matcher": "isNotNull(pull_request) ", - "sampleData": "{\n \"event.status\": \"merged\",\n \"action\": \"opened\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-11-27T12:57:21Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"event.status\": \"merged\",\n \"action\": \"opened\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-11-27T12:57:21Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -887,7 +887,7 @@ "enabled": true, "id": "github:pull-request:task.id_8340", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -898,7 +898,7 @@ "enabled": true, "id": "github:pull-request:task.outcome_6376", "matcher": "isNotNull(pull_request) and action == \"closed\"", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -909,7 +909,7 @@ "enabled": true, "id": "github:pull-request:pull_request.id_pull_request.number_pull_request.name_4660", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -931,7 +931,7 @@ "enabled": true, "id": "github:pull-request:vcs.repository.ref.revision_9671", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -964,7 +964,7 @@ "enabled": true, "id": "github:pull-request:ext.task.labels_8497", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -975,7 +975,7 @@ "enabled": true, "id": "github:pull-request:ext.task.repository.source_8853", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"head\": {\n \"label\": \"mojaorganizacjatestowa:sasekmail-patch-7\",\n \"ref\": \"sasekmail-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", + "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"head\": {\n \"label\": \"github-org:github-user-patch-7\",\n \"ref\": \"github-user-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/github-org/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:github-org/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/github-org/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", "type": "dql" }, { @@ -986,7 +986,7 @@ "enabled": true, "id": "github:pull-request:ext.task.repository.target._full_name_name_ref_9238", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"base\": {\n \"label\": \"mojaorganizacjatestowa:sasekmail-patch-7\",\n \"ref\": \"sasekmail-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", + "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"base\": {\n \"label\": \"github-org:github-user-patch-7\",\n \"ref\": \"github-user-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/github-org/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:github-org/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/github-org/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", "type": "dql" }, { @@ -997,7 +997,7 @@ "enabled": true, "id": "github:pull-request:ext.task.merger.name_6302", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"author_association\": \"CONTRIBUTOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n },\n \"repository\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"private\": false,\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-17T11:17:59Z\",\n \"pushed_at\": \"2024-09-17T13:07:14Z\",\n \"homepage\": null,\n \"size\": 78,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n },\n \"organization\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"url\": \"https://api.github.com/orgs/mojaorganizacjatestowa\",\n \"repos_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/events\",\n \"hooks_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/hooks\",\n \"issues_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/issues\",\n \"members_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/members{/member}\",\n \"public_members_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/public_members{/member}\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"description\": null\n },\n \"sender\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n}", + "sampleData": "{\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"author_association\": \"CONTRIBUTOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n },\n \"repository\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-17T11:17:59Z\",\n \"pushed_at\": \"2024-09-17T13:07:14Z\",\n \"homepage\": null,\n \"size\": 78,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n },\n \"organization\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"url\": \"https://api.github.com/orgs/github-org\",\n \"repos_url\": \"https://api.github.com/orgs/github-org/repos\",\n \"events_url\": \"https://api.github.com/orgs/github-org/events\",\n \"hooks_url\": \"https://api.github.com/orgs/github-org/hooks\",\n \"issues_url\": \"https://api.github.com/orgs/github-org/issues\",\n \"members_url\": \"https://api.github.com/orgs/github-org/members{/member}\",\n \"public_members_url\": \"https://api.github.com/orgs/github-org/public_members{/member}\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"description\": null\n },\n \"sender\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n}", "type": "dql" }, { @@ -1008,7 +1008,7 @@ "enabled": true, "id": "github:pull-request:ext.task.sender.name_1786", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"author_association\": \"CONTRIBUTOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n },\n \"repository\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-1\",\n \"private\": false,\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-17T11:17:59Z\",\n \"pushed_at\": \"2024-09-17T13:07:14Z\",\n \"homepage\": null,\n \"size\": 78,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n },\n \"organization\": {\n \"login\": \"mojaorganizacjatestowa\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"url\": \"https://api.github.com/orgs/mojaorganizacjatestowa\",\n \"repos_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/repos\",\n \"events_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/events\",\n \"hooks_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/hooks\",\n \"issues_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/issues\",\n \"members_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/members{/member}\",\n \"public_members_url\": \"https://api.github.com/orgs/mojaorganizacjatestowa/public_members{/member}\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"description\": null\n },\n \"sender\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n}", + "sampleData": "{\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"author_association\": \"CONTRIBUTOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n },\n \"repository\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-17T11:17:59Z\",\n \"pushed_at\": \"2024-09-17T13:07:14Z\",\n \"homepage\": null,\n \"size\": 78,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n },\n \"organization\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"url\": \"https://api.github.com/orgs/github-org\",\n \"repos_url\": \"https://api.github.com/orgs/github-org/repos\",\n \"events_url\": \"https://api.github.com/orgs/github-org/events\",\n \"hooks_url\": \"https://api.github.com/orgs/github-org/hooks\",\n \"issues_url\": \"https://api.github.com/orgs/github-org/issues\",\n \"members_url\": \"https://api.github.com/orgs/github-org/members{/member}\",\n \"public_members_url\": \"https://api.github.com/orgs/github-org/public_members{/member}\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"description\": null\n },\n \"sender\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n}", "type": "dql" }, { @@ -1019,7 +1019,7 @@ "enabled": true, "id": "github:pull-request:ext.task.merge.commits_4167", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", "type": "dql" }, { @@ -1030,7 +1030,7 @@ "enabled": true, "id": "github:pull-request:ext.pr.url_1987", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", "type": "dql" }, { @@ -1041,7 +1041,7 @@ "enabled": true, "id": "github:pull-request:ext.task.merge_commit_sha_5884", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -1052,7 +1052,7 @@ "enabled": true, "id": "github:pull-request:ext.task.action_9401", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n }\n}", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n }\n}", "type": "dql" }, { @@ -1060,7 +1060,7 @@ "description": "Clean up", "dqlScript": "fieldsRemove action, number, pull_request", "editable": true, - "enabled": true, + "enabled": false, "id": "github:pull-request:remove_fields_3747", "matcher": "isNotNull(pull_request)", "sampleData": null, @@ -1088,7 +1088,7 @@ "displayName": "github-commit-status", "editable": true, "enabled": true, - "id": "github:commit-status_7380", + "id": "github:commit_status_7380", "metricExtraction": { "editable": true, "processors": [ @@ -1163,7 +1163,7 @@ "enabled": true, "id": "github:commit-status:event.status_8886", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", "type": "dql" }, { @@ -1174,7 +1174,7 @@ "enabled": false, "id": "github:commit-status:duration_3699", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", "type": "dql" }, { @@ -1185,7 +1185,7 @@ "enabled": false, "id": "github:commit-status:start_time_4242", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"\n/*\nand event.status == \"open\"\n/*", - "sampleData": "{\n \"event.status\":\"open\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"veranikabarel\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/veranikabarel\",\n \"html_url\": \"https://github.com/veranikabarel\",\n \"followers_url\": \"https://api.github.com/users/veranikabarel/followers\",\n \"following_url\": \"https://api.github.com/users/veranikabarel/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/veranikabarel/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/veranikabarel/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/veranikabarel/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/veranikabarel/orgs\",\n \"repos_url\": \"https://api.github.com/users/veranikabarel/repos\",\n \"events_url\": \"https://api.github.com/users/veranikabarel/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/veranikabarel/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"przemyslawjanpietrzak\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/przemyslawjanpietrzak\",\n \"html_url\": \"https://github.com/przemyslawjanpietrzak\",\n \"followers_url\": \"https://api.github.com/users/przemyslawjanpietrzak/followers\",\n \"following_url\": \"https://api.github.com/users/przemyslawjanpietrzak/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/przemyslawjanpietrzak/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/przemyslawjanpietrzak/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/przemyslawjanpietrzak/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/przemyslawjanpietrzak/orgs\",\n \"repos_url\": \"https://api.github.com/users/przemyslawjanpietrzak/repos\",\n \"events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/przemyslawjanpietrzak/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"event.status\":\"open\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -1196,7 +1196,7 @@ "enabled": true, "id": "github:commit-status:end_time_2015", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", "type": "dql" }, { @@ -1207,7 +1207,7 @@ "enabled": false, "id": "github:commit-status:timestamp_8455", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", "type": "dql" }, { @@ -1218,7 +1218,7 @@ "enabled": true, "id": "github:commit-status:task.id_8340", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", "type": "dql" }, { @@ -1229,7 +1229,7 @@ "enabled": true, "id": "github:commit-status:task.outcome_6376", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", "type": "dql" }, { @@ -1240,7 +1240,7 @@ "enabled": true, "id": "github:commit-status:vcs.repository.ref.name_9152", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", "type": "dql" }, { @@ -1251,7 +1251,7 @@ "enabled": true, "id": "github:commit-status:vcs.repository.ref.revision_9671", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", "type": "dql" }, { @@ -1262,7 +1262,7 @@ "enabled": true, "id": "github:commit-status:vcs.repository.url.full_5151", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"sasekmail\",\n \"email\": \"33230145+sasekmail@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"sasekmail\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/sasekmail\",\n \"html_url\": \"https://github.com/sasekmail\",\n \"followers_url\": \"https://api.github.com/users/sasekmail/followers\",\n \"following_url\": \"https://api.github.com/users/sasekmail/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/sasekmail/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/sasekmail/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/sasekmail/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/sasekmail/orgs\",\n \"repos_url\": \"https://api.github.com/users/sasekmail/repos\",\n \"events_url\": \"https://api.github.com/users/sasekmail/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/sasekmail/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"SourceCodeRepo-2\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"private\": false,\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2\"\n }\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"github-repo\",\n \"full_name\": \"github-org/github-repo\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/github-repo\"\n }\n }\n}", "type": "dql" }, { @@ -1273,7 +1273,7 @@ "enabled": true, "id": "github:commit-status:ext.task.repository.source_8853", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"SourceCodeRepo-2\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"private\": false,\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2\"\n }\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"github-repo\",\n \"full_name\": \"github-org/github-repo\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/github-repo\"\n }\n }\n}", "type": "dql" }, { @@ -1284,7 +1284,7 @@ "enabled": true, "id": "github:commit-status:ext.task.artifacts_2701", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"target_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/mojaorganizacjatestowa/SourceCodeRepo-2/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"SourceCodeRepo-2\",\n \"full_name\": \"mojaorganizacjatestowa/SourceCodeRepo-2\",\n \"private\": false,\n \"html_url\": \"https://github.com/mojaorganizacjatestowa/SourceCodeRepo-2\"\n }\n }\n}", + "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"github-repo\",\n \"full_name\": \"github-org/github-repo\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/github-repo\"\n }\n }\n}", "type": "dql" }, { @@ -1292,7 +1292,7 @@ "description": "Clean up", "dqlScript": "fieldsRemove id, sha, name, target_url, avatar_url, context, description, state, commit, branches, created_at, updated_at, repository, organization, sender", "editable": true, - "enabled": false, + "enabled": true, "id": "github:commit-status:remove_fields_2808", "matcher": "isNotNull(commit)", "sampleData": null, @@ -1396,7 +1396,7 @@ "enabled": true, "id": "argocd:application:event.status_7232", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1407,7 +1407,7 @@ "enabled": true, "id": "argocd:application:duration_3411", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1418,7 +1418,7 @@ "enabled": true, "id": "argocd:application:start_time_3797", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1429,7 +1429,7 @@ "enabled": true, "id": "argocd:application:end_time_5325", "matcher": "type == \"DeploySuccess\" and event.status == \"finished\"", - "sampleData": "{\n \"event.status\":\"finished\",\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"event.status\":\"finished\",\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1440,7 +1440,7 @@ "enabled": false, "id": "argocd:application:timestamp_3312", "matcher": "type == \"DeploySuccess\" and event.status == \"finished\"", - "sampleData": "{\n \"event.status\": \"finished\",\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"event.status\": \"finished\",\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1451,7 +1451,7 @@ "enabled": true, "id": "argocd:application:task.id_task.name_5968", "matcher": "type == \"DeploySuccess\" ", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1462,7 +1462,7 @@ "enabled": true, "id": "argocd:application:ext.application.sync.status_revision_2886", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1473,7 +1473,7 @@ "enabled": true, "id": "argocd:application:ext.application.source._path_repo.url_target_revision_project_4441", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1484,7 +1484,7 @@ "enabled": true, "id": "argocd:application:deployment.project_6167", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1495,7 +1495,7 @@ "enabled": true, "id": "argocd:application:application.target.namespace.server.url_1851", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1506,7 +1506,7 @@ "enabled": true, "id": "argocd:application:deployment.history_1390", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1517,7 +1517,7 @@ "enabled": true, "id": "argocd:application:deployment.images_3636", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1528,7 +1528,7 @@ "enabled": true, "id": "argocd:application:deployment.labels_6365", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\",\n \"host\": \"srv-1\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\",\n \"host\": \"srv-1\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1539,7 +1539,7 @@ "enabled": true, "id": "argocd:application:deployment.reconciliation.time_sync.status_health.status_8354", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1550,7 +1550,7 @@ "enabled": true, "id": "argocd:application:argocd.reconciliation.time_sync.status_health.status_9056", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1561,7 +1561,7 @@ "enabled": true, "id": "argocd:application:argocd.sync.state_revision_7665", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1572,7 +1572,7 @@ "enabled": true, "id": "argocd:application:argocd.sync.outcome_8631", "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"tst-app-1\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/mojaorganizacjatestowa/GitOpsRepo-1\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", + "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", "type": "dql" }, { @@ -1666,7 +1666,7 @@ "enabled": true, "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", "note": "Route matching events into commits pipeline", - "pipelineId": "github:commit-status_7380" + "pipelineId": "github:commit_status_7380" } ] } From 200aae9239176a8a6a31b5b99203776ecd34a46c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Thu, 23 Jan 2025 08:19:00 +0100 Subject: [PATCH 06/25] Update of artifacts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../0a635714-5545-4413-95e1-023333e8edac.json | 954 +++++++++++++++--- .../f9847607-0c63-4f8a-99bd-92e7cf7d86db.json | 307 ++---- .../openpipeline/events.sdlc.json | 204 ++-- 3 files changed, 1017 insertions(+), 448 deletions(-) diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/0a635714-5545-4413-95e1-023333e8edac.json b/github_pipeline_observability/pipeline_observability/document-dashboard/0a635714-5545-4413-95e1-023333e8edac.json index ee08589..fcc8141 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/0a635714-5545-4413-95e1-023333e8edac.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/0a635714-5545-4413-95e1-023333e8edac.json @@ -2,13 +2,13 @@ "importedWithCode": false, "layouts": { "0": { - "h": 5, + "h": 6, "w": 8, - "x": 0, - "y": 7 + "x": 8, + "y": 4 }, "1": { - "h": 3, + "h": 4, "w": 4, "x": 0, "y": 4 @@ -17,55 +17,55 @@ "h": 3, "w": 4, "x": 0, - "y": 15 + "y": 13 }, "11": { - "h": 5, - "w": 8, - "x": 8, - "y": 7 + "h": 6, + "w": 4, + "x": 20, + "y": 4 }, "12": { - "h": 3, + "h": 2, "w": 4, - "x": 16, - "y": 4 + "x": 0, + "y": 8 }, "14": { "h": 6, "w": 8, "x": 16, - "y": 42 + "y": 40 }, "15": { "h": 6, "w": 16, "x": 0, - "y": 42 + "y": 40 }, "17": { "h": 2, "w": 24, "x": 0, - "y": 40 + "y": 38 }, "18": { "h": 6, "w": 8, "x": 0, - "y": 29 + "y": 27 }, "19": { "h": 5, "w": 24, "x": 0, - "y": 35 + "y": 33 }, "2": { "h": 3, "w": 4, "x": 0, - "y": 12 + "y": 10 }, "20": { "h": 2, @@ -73,18 +73,6 @@ "x": 0, "y": 0 }, - "22": { - "h": 3, - "w": 4, - "x": 4, - "y": 4 - }, - "23": { - "h": 3, - "w": 4, - "x": 8, - "y": 4 - }, "24": { "h": 2, "w": 24, @@ -95,85 +83,97 @@ "h": 2, "w": 24, "x": 0, - "y": 24 - }, - "26": { - "h": 3, - "w": 4, - "x": 0, - "y": 26 + "y": 22 }, "27": { "h": 3, "w": 4, "x": 4, - "y": 26 + "y": 24 }, "28": { "h": 3, "w": 4, "x": 8, - "y": 26 + "y": 24 }, "3": { "h": 6, "w": 16, "x": 8, - "y": 29 + "y": 27 }, "30": { "h": 3, "w": 4, "x": 12, - "y": 26 - }, - "31": { - "h": 3, - "w": 4, - "x": 20, - "y": 4 + "y": 24 }, "32": { "h": 1, "w": 24, "x": 0, - "y": 48 + "y": 46 }, "33": { - "h": 5, + "h": 6, "w": 24, "x": 0, - "y": 49 + "y": 47 }, - "4": { + "34": { "h": 3, "w": 4, - "x": 12, + "x": 0, + "y": 24 + }, + "35": { + "h": 2, + "w": 4, + "x": 16, + "y": 4 + }, + "36": { + "h": 2, + "w": 4, + "x": 16, + "y": 6 + }, + "37": { + "h": 2, + "w": 4, + "x": 16, + "y": 8 + }, + "4": { + "h": 6, + "w": 4, + "x": 4, "y": 4 }, "5": { "h": 6, - "w": 20, + "w": 12, "x": 4, - "y": 12 + "y": 10 }, "6": { - "h": 5, + "h": 6, "w": 8, "x": 16, - "y": 7 + "y": 10 }, "7": { "h": 3, "w": 8, "x": 16, - "y": 26 + "y": 24 }, "8": { "h": 6, "w": 24, "x": 0, - "y": 18 + "y": 16 } }, "settings": {}, @@ -185,7 +185,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count(), by: { cicd.pipeline.run.outcome}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count(), by: {cicd.pipeline.run.outcome}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -219,7 +219,7 @@ "categoryOverrides": { "": { "added": 1726836121804, - "color": "#C4233B" + "color": "#805100" }, "failure": { "added": 1726836109108, @@ -331,7 +331,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -459,7 +459,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize median(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize median(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -585,7 +585,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count(), by: { ext.pipeline.run.trigger}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count(), by: {ext.pipeline.run.trigger}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -644,7 +644,8 @@ "curve": "linear", "gapPolicy": "connect", "legend": { - "hidden": true + "hidden": false, + "position": "auto" }, "pointsDisplay": "auto", "truncationMode": "middle", @@ -735,7 +736,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter ext.pipeline.run.attempt \u003e 1 \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name,$Repository) \n| filter in(cicd.pipeline.name,$Workflow) \n| filter in(ext.pipeline.run.trigger,$Trigger)\n| summarize count() ", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter ext.pipeline.run.attempt \u003e 1 \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count() ", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -911,7 +912,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"build\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fieldsAdd steps_array=toArray(ext.task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type==\"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name,$Workflow) \n | filter in(ext.pipeline.run.trigger,$Trigger) ], \n on:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.status = steps_data[status], \nstep.task.id = task.id,\nstep.task.name = task.name,\nstep.task.outcome = task.outcome,\nstep.task.cicd.pipeline.run.id = cicd.pipeline.run.id \n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(step.conclusion==\"failure\")) / toDouble(count())*100), by: {step.name, step.task.name} \n| filter failureRate \u003e 0 \n| sort failureRate desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type== \"build\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fieldsAdd steps_array = toArray(ext.task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.task.name = task.name\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(step.conclusion==\"failure\")) / toDouble(count())*100), by: {step.name, step.task.name} \n| filter failureRate \u003e 0 \n| sort failureRate desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1012,7 +1013,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"build\"\n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type==\"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| fieldsAdd steps_array=toArray(ext.task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.status = steps_data[status], \nstep.task.id = task.id,\nstep.task.name = task.name,\nstep.task.outcome = task.outcome,\nstep.task.cicd.pipeline.run.id = cicd.pipeline.run.id \n| summarize percentile(step.duration,50), alias:Median ,by:{step.name, alias: StepName,step.task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type== \"build\"\n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| fieldsAdd steps_array=toArray(ext.task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.task.name = task.name\n| summarize percentile(step.duration,50), alias:Median ,by:{step.name, alias: StepName, step.task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1149,7 +1150,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\"\n| filter event.type==\"build\"\n| filter event.status == \"finished\"\n| filter event.provider==\"github.com\"\n| join [\n fetch events \n | filter event.category == \"pipeline\" \n | filter event.status == \"finished\" \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.type==\"run\" \n | fields cicd.pipeline.run.id,cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize Count=count() , by:{ext.task.runner.name} \n| sort Count desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\"\n| filter event.type == \"build\"\n| filter event.status == \"finished\"\n| filter event.provider == \"github.com\"\n| join [\n fetch events \n | filter event.category == \"pipeline\" \n | filter event.status == \"finished\" \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.type==\"run\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize Count=count(), by:{ext.task.runner.name} \n| sort Count desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1287,7 +1288,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"started\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger) \n| fields start_time, cicd.pipeline.run.id, ext.pipeline.run.attempt\n| joinNested jobs=[\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"task\" \n | filter event.type==\"build\" \n | filter event.status == \"started\" \n | filter event.provider==\"github.com\" \n | fields cicd.pipeline.run.id,ext.task.run.attempt,start_time \n | sort start_time asc ],\n on: {cicd.pipeline.run.id,left[ext.pipeline.run.attempt]==right[ext.task.run.attempt]} \n| fieldsAdd timeToStart = jobs[0][start_time] - start_time ", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"started\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger) \n| fields start_time, cicd.pipeline.run.id, ext.pipeline.run.attempt\n| joinNested jobs=[\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"task\" \n | filter event.type ==\"build\" \n | filter event.status == \"started\" \n | filter event.provider==\"github.com\" \n | fields cicd.pipeline.run.id, ext.task.run.attempt, start_time \n | sort start_time asc ],\n on: {cicd.pipeline.run.id,left[ext.pipeline.run.attempt] == right[ext.task.run.attempt]} \n| fieldsAdd queueTime = jobs[0][start_time] - start_time ", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1295,7 +1296,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "First pipeline job time-to-start", + "title": "Job Queue Time", "type": "data", "visualization": "areaChart", "visualizationSettings": { @@ -1305,9 +1306,9 @@ "categoryAxis": [ "cicd.pipeline.run.id", "ext.pipeline.run.attempt", - "timeToStart" + "queueTime" ], - "categoryAxisLabel": "cicd.pipeline.run.id,ext.pipeline.run.attempt,timeToStart", + "categoryAxisLabel": "cicd.pipeline.run.id,ext.pipeline.run.attempt,queueTime", "categoryAxisTickLayout": "horizontal", "colorPaletteMode": "multi-color", "groupMode": "stacked", @@ -1317,9 +1318,9 @@ "valueAxis": [ "cicd.pipeline.run.id", "ext.pipeline.run.attempt", - "timeToStart" + "queueTime" ], - "valueAxisLabel": "cicd.pipeline.run.id,ext.pipeline.run.attempt,timeToStart" + "valueAxisLabel": "cicd.pipeline.run.id,ext.pipeline.run.attempt,queueTime" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1331,7 +1332,7 @@ "curve": "smooth", "fieldMapping": { "leftAxisValues": [ - "cicd.pipeline.run.id" + "queueTime" ], "timestamp": "start_time" }, @@ -1339,7 +1340,8 @@ "hiddenLegendFields": [ "cicd.pipeline.run.id", "ext.pipeline.run.attempt", - "timeToStart" + "timeToStart", + "queueTime" ], "leftYAxisSettings": { "isLabelVisible": true, @@ -1381,7 +1383,7 @@ }, { "rangeAxis": "", - "valueAxis": "timeToStart" + "valueAxis": "queueTime" } ], "displayedFields": [], @@ -1452,7 +1454,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1572,17 +1574,7 @@ } }, "20": { - "content": "### GitHub Workflow Pulse: Execution Stats\n\nThis dashboard offers a detailed overview of your GitHub workflow executions, providing valuable insights into the performance and efficiency of your CI/CD pipelines. [Data ingest](https://dt-rnd.atlassian.net/wiki/x/WwLNLg) ", - "title": "", - "type": "markdown" - }, - "22": { - "content": "Successful Executions", - "title": "", - "type": "markdown" - }, - "23": { - "content": "Failed Executions", + "content": "### GitHub Workflow Pulse\n\nThis dashboard offers a detailed overview of your GitHub workflow executions, providing valuable insights into the performance and efficiency of your CI/CD pipelines. [Data ingest](https://dt-rnd.atlassian.net/wiki/x/WwLNLg) ", "title": "", "type": "markdown" }, @@ -1596,11 +1588,6 @@ "title": "", "type": "markdown" }, - "26": { - "content": "Total Jobs Executed", - "title": "", - "type": "markdown" - }, "27": { "content": "Successful Jobs", "title": "", @@ -1618,7 +1605,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\" \n| filter event.type==\"build\"\n| filter event.status == \"finished\" \n| filter event.provider ==\"github.com\" \n| filter task.outcome != \"skipped\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type==\"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize percentile(duration,50), alias:Median ,by:{task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\" \n| filter event.type == \"build\"\n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter task.outcome != \"skipped\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize percentile(duration,50), alias:Median ,by:{task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1746,7 +1733,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| summarize avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| summarize avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1865,29 +1852,24 @@ } } }, - "31": { - "content": "Space for an additional KPI", - "title": "", - "type": "markdown" - }, "32": { "content": " ", "title": "", "type": "markdown" }, "33": { - "content": "#### Additional resources\n**Software Development Lifecycle Events**\n* [SDLC events](https://myaccount.dynatrace.com) (docs)\n**Optimize DQL usage**\n* [DQL Best practices](https://docs.dynatrace.com/docs/shortlink/dql-best-practices) (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.2.1", + "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.2.2", "title": "", "type": "markdown" }, - "4": { + "34": { "davis": { "davisVisualization": { "isAvailable": true }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name,$Repository) \n| filter in(cicd.pipeline.name,$Workflow)\n| filter in(ext.pipeline.run.trigger,$Trigger)\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name\n| filter in(vcs.repository.ref.name, $Repository) \n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1902,21 +1884,21 @@ }, "tileTimeframeEnabled": false }, - "title": "Error Rate", + "title": "Total Workflow Executions", "type": "data", "visualization": "singleValue", "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "failureRate" + "count()" ], - "categoryAxisLabel": "failureRate", + "categoryAxisLabel": "count()", "tooltipVariant": "single", "valueAxis": [ - "failureRate" + "count()" ], - "valueAxisLabel": "failureRate" + "valueAxisLabel": "count()" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1934,15 +1916,144 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { + "dimension": "count()", + "displayedFields": [ + "count()" + ], + "longitude": "count()", + "value": "count()" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "count()" + } + ], "displayedFields": [], - "longitude": "failureRate", + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "count()", + "showLabel": false + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "Count", + "prefixIcon": "", + "recordField": "count()", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } + } + }, + "35": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize successful = countIf(cicd.pipeline.run.outcome == \"success\")", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Successful Executions", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "successful" + ], + "categoryAxisLabel": "successful", + "tooltipVariant": "single", + "valueAxis": [ + "successful" + ], + "valueAxisLabel": "successful" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "legend": { + "hidden": true + }, + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "dataMapping": { + "dimension": "successful", + "displayedFields": [], + "longitude": "successful", "value": "failureRate" }, "histogram": { "dataMappings": [ { "rangeAxis": "", - "valueAxis": "failureRate" + "valueAxis": "successful" } ], "displayedFields": [], @@ -1971,10 +2082,10 @@ "alignment": "center", "autoscale": true, "colorThresholdTarget": "value", - "isIconVisible": false, + "isIconVisible": true, "label": "failureRate", - "prefixIcon": "", - "recordField": "failureRate", + "prefixIcon": "SuccessIcon", + "recordField": "successful", "showLabel": false, "sparklineSettings": { "isVisible": true @@ -2053,14 +2164,14 @@ } } }, - "5": { + "36": { "davis": { "davisVisualization": { "isAvailable": true }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter cicd.pipeline.run.outcome != \"canceled\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize percentile(duration,50), alias:Median ,by:{cicd.pipeline.name, alias: name} | sort Median desc | limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize failed = countIf(cicd.pipeline.run.outcome == \"failure\")", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -2068,22 +2179,28 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": "Workflow Duration (p50) | Top 5", + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Failed Executions", "type": "data", - "visualization": "categoricalBarChart", + "visualization": "singleValue", "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "name" + "failed" ], - "categoryAxisLabel": "name", - "colorPaletteMode": "multi-color", + "categoryAxisLabel": "failed", "tooltipVariant": "single", "valueAxis": [ - "Median" + "failed" ], - "valueAxisLabel": "Median" + "valueAxisLabel": "failed" }, "categoryOverrides": {}, "circleChartSettings": { @@ -2093,7 +2210,6 @@ }, "curve": "linear", "gapPolicy": "connect", - "hiddenLegendFields": [], "legend": { "hidden": true }, @@ -2102,30 +2218,546 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "name", - "displayedFields": [ - "name", - "Median" - ], - "longitude": "Median", - "value": "Median" + "dimension": "failed", + "displayedFields": [], + "longitude": "failed", + "value": "failureRate" }, "histogram": { "dataMappings": [ { "rangeAxis": "", - "valueAxis": "Median" + "valueAxis": "failed" } ], - "displayedFields": [ - "name" - ], + "displayedFields": [], "variant": "single" }, "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": { + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "failureRate", + "showLabel": false + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "isIconVisible": true, + "label": "failureRate", + "prefixIcon": "CriticalFailedIcon", + "recordField": "failed", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [ + { + "field": "failureRate", + "id": 1, + "isEnabled": true, + "rules": [ + { + "color": { + "Default": "var(--dt-colors-charts-status-ideal-default, #2f6863)" + }, + "comparator": "≤", + "id": 0, + "label": "", + "value": 0 + }, + { + "color": { + "Default": "var(--dt-colors-charts-status-warning-default, #eca440)" + }, + "comparator": "≥", + "id": 1, + "label": "" + }, + { + "color": { + "Default": "var(--dt-colors-charts-status-critical-default, #c4233b)" + }, + "comparator": "≥", + "id": 2, + "label": "", + "value": 0 + } + ], + "title": "" + } + ], + "tooltip": { + "showCustomFields": false + }, + "unitsOverrides": [ + { + "added": 1727678780356, + "baseUnit": "percent", + "decimals": 0, + "delimiter": true, + "displayUnit": null, + "identifier": "failureRate", + "suffix": "", + "unitCategory": "percentage" + } + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } + } + }, + "37": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize other = countIf(isNull(cicd.pipeline.run.outcome) or (cicd.pipeline.run.outcome != \"failure\" and cicd.pipeline.run.outcome != \"success\"))", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Other Execution States", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "other" + ], + "categoryAxisLabel": "other", + "tooltipVariant": "single", + "valueAxis": [ + "other" + ], + "valueAxisLabel": "other" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "legend": { + "hidden": true + }, + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "dataMapping": { + "dimension": "other", + "displayedFields": [], + "longitude": "other", + "value": "failureRate" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "other" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "failureRate", + "showLabel": false + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "isIconVisible": true, + "label": "failureRate", + "prefixIcon": "WarningIcon", + "recordField": "other", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [ + { + "field": "failureRate", + "id": 1, + "isEnabled": true, + "rules": [ + { + "color": { + "Default": "var(--dt-colors-charts-status-ideal-default, #2f6863)" + }, + "comparator": "≤", + "id": 0, + "label": "", + "value": 0 + }, + { + "color": { + "Default": "var(--dt-colors-charts-status-warning-default, #eca440)" + }, + "comparator": "≥", + "id": 1, + "label": "" + }, + { + "color": { + "Default": "var(--dt-colors-charts-status-critical-default, #c4233b)" + }, + "comparator": "≥", + "id": 2, + "label": "", + "value": 0 + } + ], + "title": "" + } + ], + "tooltip": { + "showCustomFields": false + }, + "unitsOverrides": [ + { + "added": 1727678780356, + "baseUnit": "percent", + "decimals": 0, + "delimiter": true, + "displayUnit": null, + "identifier": "failureRate", + "suffix": "", + "unitCategory": "percentage" + } + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } + } + }, + "4": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize failureRate = if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100)", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "now()-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Error Rate", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "failureRate" + ], + "categoryAxisLabel": "failureRate", + "tooltipVariant": "single", + "valueAxis": [ + "failureRate" + ], + "valueAxisLabel": "failureRate" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "legend": { + "hidden": true + }, + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "dataMapping": { + "displayedFields": [], + "longitude": "failureRate", + "value": "failureRate" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "failureRate" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "failureRate", + "showLabel": false + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "isIconVisible": false, + "label": "failureRate", + "prefixIcon": "", + "recordField": "failureRate", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [ + { + "field": "failureRate", + "id": 1, + "isEnabled": true, + "rules": [ + { + "color": { + "Default": "var(--dt-colors-charts-status-ideal-default, #2f6863)" + }, + "comparator": "≤", + "id": 0, + "label": "", + "value": 0 + }, + { + "color": { + "Default": "var(--dt-colors-charts-status-warning-default, #eca440)" + }, + "comparator": "≥", + "id": 1, + "label": "" + }, + { + "color": { + "Default": "var(--dt-colors-charts-status-critical-default, #c4233b)" + }, + "comparator": "≥", + "id": 2, + "label": "", + "value": 0 + } + ], + "title": "" + } + ], + "tooltip": { + "showCustomFields": false + }, + "unitsOverrides": [ + { + "added": 1727678780356, + "baseUnit": "percent", + "decimals": 0, + "delimiter": true, + "displayUnit": null, + "identifier": "failureRate", + "suffix": "", + "unitCategory": "percentage" + } + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } + } + }, + "5": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter cicd.pipeline.run.outcome != \"canceled\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize percentile(duration,50), alias:Median ,by:{cicd.pipeline.name, alias: name} \n| sort Median desc \n| limit 5", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Workflow Duration (p50) | Top 5", + "type": "data", + "visualization": "categoricalBarChart", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "name" + ], + "categoryAxisLabel": "name", + "colorPaletteMode": "multi-color", + "tooltipVariant": "single", + "valueAxis": [ + "Median" + ], + "valueAxisLabel": "Median" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "hiddenLegendFields": [], + "legend": { + "hidden": true + }, + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "dataMapping": { + "dimension": "name", + "displayedFields": [ + "name", + "Median" + ], + "longitude": "Median", + "value": "Median" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "Median" + } + ], + "displayedFields": [ + "name" + ], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": { "value": "Median" }, "displayedFields": [ @@ -2186,7 +2818,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize failureRate = if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100), by: {vcs.repository.ref.name,cicd.pipeline.name }\n| filter failureRate\u003e0 | sort failureRate desc | limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize failureRate = if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100), by: {vcs.repository.ref.name,cicd.pipeline.name }\n| filter failureRate\u003e0 \n| sort failureRate desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -2200,9 +2832,16 @@ "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { + "categoryAxis": [ + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], "categoryAxisLabel": "vcs.repository.ref.name,cicd.pipeline.name", "colorPaletteMode": "multi-color", "tooltipVariant": "single", + "valueAxis": [ + "failureRate" + ], "valueAxisLabel": "failureRate" }, "categoryOverrides": {}, @@ -2214,23 +2853,43 @@ "curve": "linear", "gapPolicy": "connect", "hiddenLegendFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "displayedFields": [] + "dimension": "vcs.repository.ref.name", + "displayedFields": [], + "longitude": "failureRate", + "value": "failureRate" }, "histogram": { - "dataMappings": [], - "displayedFields": [], + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "failureRate" + } + ], + "displayedFields": [ + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], "variant": "single" }, "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": {}, - "displayedFields": [], + "dataMappings": { + "value": "failureRate" + }, + "displayedFields": [ + "vcs.repository.ref.name", + "cicd.pipeline.name" + ], "legend": { "hidden": false, "position": "auto" @@ -2242,6 +2901,7 @@ "showIcon": false }, "label": { + "label": "failureRate", "showLabel": false }, "singleValue": { @@ -2297,7 +2957,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type ==\"build\"\n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type==\"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id,cicd.pipeline.name,vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}, prefix: \"workflow.\" \n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(task.outcome==\"failure\")) / toDouble(count())*100), by: task.name \n| filter failureRate\u003e0 \n| sort failureRate desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(task.outcome==\"failure\")) / toDouble(count())*100), by: task.name \n| filter failureRate\u003e0 \n| sort failureRate desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -2408,7 +3068,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type==\"run\" \n| filter event.status == \"finished\" \n| filter event.provider==\"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| fields \nDuration = duration,\nName = cicd.pipeline.name,\nStatus = cicd.pipeline.run.outcome,\nRun = cicd.pipeline.run.url.full,\nAttempts = ext.pipeline.run.attempt,\nTrigger = ext.pipeline.run.trigger,\nStart = start_time,\nEnd = end_time,\nRepository = vcs.repository.ref.name \n| sort Duration desc \n", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| fields \nDuration = duration,\nName = cicd.pipeline.name,\nStatus = cicd.pipeline.run.outcome,\nRun = cicd.pipeline.run.url.full,\nAttempts = ext.pipeline.run.attempt,\nTrigger = ext.pipeline.run.trigger,\nStart = start_time,\nEnd = end_time,\nRepository = vcs.repository.ref.name \n| sort Duration desc \n", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -2496,6 +3156,8 @@ "displayedFields": [ "Name", "Status", + "Run", + "Trigger", "Repository" ], "variant": "single" @@ -2559,7 +3221,9 @@ "rowDensity": "comfortable" }, "thresholds": [], - "tooltip": {}, + "tooltip": { + "showCustomFields": false + }, "valueBoundaries": { "max": "auto", "min": "auto" diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/f9847607-0c63-4f8a-99bd-92e7cf7d86db.json b/github_pipeline_observability/pipeline_observability/document-dashboard/f9847607-0c63-4f8a-99bd-92e7cf7d86db.json index e05401c..c5c2469 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/f9847607-0c63-4f8a-99bd-92e7cf7d86db.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/f9847607-0c63-4f8a-99bd-92e7cf7d86db.json @@ -38,7 +38,7 @@ "y": 5 }, "15": { - "h": 5, + "h": 6, "w": 24, "x": 0, "y": 32 @@ -131,7 +131,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter in(ext.task.repository.target.full_name,$TargetRepository) \n| filter in(ext.task.repository.target.ref,$TargetRef)\n| fieldsAdd OpenedPrDuration = toTimestamp(now())-toTimestamp(start_time) \n| summarize max(OpenedPrDuration), count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time, number, ext.task.repository.target.full_name, ext.task.repository.target.ref, ext.task.repository.source.full_name, ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -147,16 +147,14 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "max(OpenedPrDuration)", "count()" ], - "categoryAxisLabel": "max(OpenedPrDuration),count()", + "categoryAxisLabel": "count()", "tooltipVariant": "single", "valueAxis": [ - "max(OpenedPrDuration)", "count()" ], - "valueAxisLabel": "max(OpenedPrDuration),count()" + "valueAxisLabel": "count()" }, "categoryOverrides": {}, "circleChartSettings": { @@ -166,23 +164,21 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "max(OpenedPrDuration)", + "dimension": "count()", "displayedFields": [], - "latitude": "count()", - "longitude": "max(OpenedPrDuration)", + "longitude": "count()", "value": "count()" }, "histogram": { "dataMappings": [ - { - "rangeAxis": "", - "valueAxis": "max(OpenedPrDuration)" - }, { "rangeAxis": "", "valueAxis": "count()" @@ -251,7 +247,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now()) - toTimestamp(start_time) \n| summarize max(OpenedPrDuration), count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name, ext.task.repository.target.ref, ext.task.repository.source.full_name, ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now()) - toTimestamp(start_time) \n| summarize max(OpenedPrDuration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -266,16 +262,14 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "max(OpenedPrDuration)", - "count()" + "max(OpenedPrDuration)" ], - "categoryAxisLabel": "max(OpenedPrDuration),count()", + "categoryAxisLabel": "max(OpenedPrDuration)", "tooltipVariant": "single", "valueAxis": [ - "max(OpenedPrDuration)", - "count()" + "max(OpenedPrDuration)" ], - "valueAxisLabel": "max(OpenedPrDuration),count()" + "valueAxisLabel": "max(OpenedPrDuration)" }, "categoryOverrides": {}, "circleChartSettings": { @@ -285,16 +279,17 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "max(OpenedPrDuration)", "displayedFields": [ "count()" ], - "latitude": "count()", "longitude": "max(OpenedPrDuration)", "value": "count()" }, @@ -303,10 +298,6 @@ { "rangeAxis": "", "valueAxis": "max(OpenedPrDuration)" - }, - { - "rangeAxis": "", - "valueAxis": "count()" } ], "displayedFields": [], @@ -388,7 +379,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status), actions = collectArray(ext.task.action) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter contains(toString(actions),\"reopened\")\n| filter in(ext.task.repository.target.full_name, $TargetRepository) and in(ext.task.repository.target.ref, $TargetRef)\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status), actions = collectArray(ext.task.action) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name, ext.task.repository.target.ref, ext.task.repository.source.full_name, ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\", \"closed\")) \n| filter contains(toString(actions),\"reopened\")\n| filter in(ext.task.repository.target.full_name, $Repository) and in(ext.task.repository.target.ref, $Branch)\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -519,7 +510,7 @@ "type": "markdown" }, "15": { - "content": "#### Additional resources\n**Software Development Lifecycle Events**\n* [SDLC events](https://myaccount.dynatrace.com) (docs)\n**Optimize DQL usage**\n* [DQL Best practices](https://docs.dynatrace.com/docs/shortlink/dql-best-practices) (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.2.1", + "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.2.2", "title": "", "type": "markdown" }, @@ -550,7 +541,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.provider==\"github.com\" \n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name,$TargetRepository) and in(ext.task.repository.target.ref,$TargetRef)\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url , vcs.repository.change.id } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fields \nIn_open_status = toTimestamp(now())-toTimestamp(start_time),\nPR_number = number, \nPR_title = task.name,\nPR_url= ext.pr.url,\nSource_repo = ext.task.repository.source.full_name, \nSource_ref=ext.task.repository.source.ref, \nTarget_repo = ext.task.repository.target.full_name, \nTarget_ref=ext.task.repository.target.ref,\nCreated_at = start_time, GlobalId = vcs.repository.change.id \n| sort In_open_status desc\n\n", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name, ext.task.repository.target.ref, ext.task.repository.source.full_name, ext.task.repository.source.ref, ext.pr.url, vcs.repository.change.id } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fields \nIn_open_status = toTimestamp(now()) - toTimestamp(start_time),\nPR_number = number, \nPR_title = task.name,\nPR_url= ext.pr.url,\nSource_repo = ext.task.repository.source.full_name, \nSource_ref=ext.task.repository.source.ref, \nTarget_repo = ext.task.repository.target.full_name, \nTarget_ref=ext.task.repository.target.ref,\nCreated_at = start_time, GlobalId = vcs.repository.change.id \n| sort In_open_status desc", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -564,21 +555,8 @@ "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { - "categoryAxis": [ - "PR_title", - "PR_url", - "Source_repo", - "Source_ref", - "Target_repo", - "Target_ref" - ], "categoryAxisLabel": "PR_title,PR_url,Source_repo,Source_ref,Target_repo,Target_ref", "tooltipVariant": "single", - "valueAxis": [ - "In_open_status", - "PR_number", - "GlobalId" - ], "valueAxisLabel": "In_open_status,PR_number,GlobalId" }, "categoryOverrides": {}, @@ -588,12 +566,6 @@ "valueType": "relative" }, "curve": "linear", - "fieldMapping": { - "leftAxisValues": [ - "In_open_status" - ], - "timestamp": "Created_at" - }, "gapPolicy": "connect", "hiddenLegendFields": [ "In_open_status", @@ -609,51 +581,19 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "In_open_status", "displayedFields": [], - "latitude": "PR_number", - "longitude": "In_open_status", "value": "PR_number" }, "histogram": { - "dataMappings": [ - { - "rangeAxis": "", - "valueAxis": "In_open_status" - }, - { - "rangeAxis": "", - "valueAxis": "PR_number" - }, - { - "rangeAxis": "", - "valueAxis": "GlobalId" - } - ], - "displayedFields": [ - "PR_title", - "PR_url", - "Source_repo", - "Source_ref", - "Target_repo", - "Target_ref" - ], + "dataMappings": [], + "displayedFields": [], "variant": "single" }, "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": { - "value": "In_open_status" - }, - "displayedFields": [ - "PR_title", - "PR_url", - "Source_repo", - "Source_ref", - "Target_repo", - "Target_ref" - ], + "dataMappings": {}, + "displayedFields": [], "legend": { "hidden": false, "position": "auto" @@ -746,7 +686,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -761,18 +701,14 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "Count", - "Median", - "Avg" + "count()" ], - "categoryAxisLabel": "Count,Median,Avg", + "categoryAxisLabel": "count()", "tooltipVariant": "single", "valueAxis": [ - "Count", - "Median", - "Avg" + "count()" ], - "valueAxisLabel": "Count,Median,Avg" + "valueAxisLabel": "count()" }, "categoryOverrides": {}, "circleChartSettings": { @@ -782,34 +718,28 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "Count", + "dimension": "count()", "displayedFields": [ "Count", "Median", "Avg" ], - "latitude": "Median", - "longitude": "Count", + "longitude": "count()", "value": "Count" }, "histogram": { "dataMappings": [ { "rangeAxis": "", - "valueAxis": "Count" - }, - { - "rangeAxis": "", - "valueAxis": "Median" - }, - { - "rangeAxis": "", - "valueAxis": "Avg" + "valueAxis": "count()" } ], "displayedFields": [], @@ -840,8 +770,9 @@ "colorThresholdTarget": "value", "label": "Merged PRs", "prefixIcon": "", - "recordField": "Count", + "recordField": "count()", "showLabel": false, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -875,7 +806,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| summarize percentile(duration, 50)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -890,18 +821,14 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "Count", - "Median", - "Avg" + "percentile(duration, 50)" ], - "categoryAxisLabel": "Count,Median,Avg", + "categoryAxisLabel": "percentile(duration, 50)", "tooltipVariant": "single", "valueAxis": [ - "Count", - "Median", - "Avg" + "percentile(duration, 50)" ], - "valueAxisLabel": "Count,Median,Avg" + "valueAxisLabel": "percentile(duration, 50)" }, "categoryOverrides": {}, "circleChartSettings": { @@ -911,34 +838,28 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "Count", + "dimension": "percentile(duration, 50)", "displayedFields": [ "Count", "Median", "Avg" ], - "latitude": "Median", - "longitude": "Count", + "longitude": "percentile(duration, 50)", "value": "Count" }, "histogram": { "dataMappings": [ { "rangeAxis": "", - "valueAxis": "Count" - }, - { - "rangeAxis": "", - "valueAxis": "Median" - }, - { - "rangeAxis": "", - "valueAxis": "Avg" + "valueAxis": "percentile(duration, 50)" } ], "displayedFields": [], @@ -969,8 +890,9 @@ "colorThresholdTarget": "value", "label": "Median", "prefixIcon": "", - "recordField": "Median", + "recordField": "percentile(duration, 50)", "showLabel": false, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -1005,7 +927,7 @@ "enabled": false }, "description": "Shows the average time taken to merge pull requests, providing insights into the efficiency of the review and merge process.", - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| summarize Count= count(), Median = percentile(duration,50), Avg = avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| summarize avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1020,18 +942,14 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "Count", - "Median", - "Avg" + "avg(duration)" ], - "categoryAxisLabel": "Count,Median,Avg", + "categoryAxisLabel": "avg(duration)", "tooltipVariant": "single", "valueAxis": [ - "Count", - "Median", - "Avg" + "avg(duration)" ], - "valueAxisLabel": "Count,Median,Avg" + "valueAxisLabel": "avg(duration)" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1041,34 +959,28 @@ }, "curve": "linear", "gapPolicy": "connect", + "legend": { + "hidden": true + }, "pointsDisplay": "auto", "truncationMode": "middle", "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "Count", + "dimension": "avg(duration)", "displayedFields": [ "Count", "Median", "Avg" ], - "latitude": "Median", - "longitude": "Count", + "longitude": "avg(duration)", "value": "Count" }, "histogram": { "dataMappings": [ { "rangeAxis": "", - "valueAxis": "Count" - }, - { - "rangeAxis": "", - "valueAxis": "Median" - }, - { - "rangeAxis": "", - "valueAxis": "Avg" + "valueAxis": "avg(duration)" } ], "displayedFields": [], @@ -1099,8 +1011,9 @@ "colorThresholdTarget": "value", "label": "Avg", "prefixIcon": "", - "recordField": "Avg", + "recordField": "avg(duration)", "showLabel": false, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -1134,7 +1047,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\" \n| sort timestamp asc\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| fields \nMergetAt = end_time,\nDuration = duration, \nNumber = number, \nTitle = task.name,\nUrl= ext.pr.url,\nSourceRepository = ext.task.repository.source.full_name, \nSourceRef=ext.task.repository.source.ref, \nTargetRepository = ext.task.repository.target.full_name, \nTargetRef=ext.task.repository.target.ref, \nCreatedAt = start_time, \nGlobalId = vcs.repository.change.id \n| sort Duration desc\n", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider ==\"github.com\" \n| sort timestamp asc\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| fields \nMergetAt = end_time,\nDuration = duration, \nNumber = number, \nTitle = task.name,\nUrl= ext.pr.url,\nSourceRepository = ext.task.repository.source.full_name, \nSourceBranch=ext.task.repository.source.ref, \nTargetRepository = ext.task.repository.target.full_name, \nTargetBranch=ext.task.repository.target.ref, \nCreatedAt = start_time, \nGlobalId = vcs.repository.change.id \n| sort Duration desc", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1152,11 +1065,11 @@ "Title", "Url", "SourceRepository", - "SourceRef", + "SourceBranch", "TargetRepository", - "TargetRef" + "TargetBranch" ], - "categoryAxisLabel": "Title,Url,SourceRepository,SourceRef,TargetRepository,TargetRef", + "categoryAxisLabel": "Title,Url,SourceRepository,SourceBranch,TargetRepository,TargetBranch", "tooltipVariant": "single", "valueAxis": [ "Duration", @@ -1230,9 +1143,7 @@ "Title", "Url", "SourceRepository", - "SourceRef", - "TargetRepository", - "TargetRef" + "TargetRepository" ], "variant": "single" }, @@ -1246,9 +1157,9 @@ "Title", "Url", "SourceRepository", - "SourceRef", + "SourceBranch", "TargetRepository", - "TargetRef" + "TargetBranch" ], "legend": { "hidden": false, @@ -1307,7 +1218,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\"\n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name,ext.task.repository.target.ref, ext.task.repository.source.full_name,ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| summarize count(),by: {ext.task.repository.target.full_name}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| summarize { statuses = collectArray(event.status) }, by:{ task.id, task.name, start_time, number, ext.task.repository.target.full_name, ext.task.repository.target.ref, ext.task.repository.source.full_name, ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\", \"closed\")) \n| summarize count(), by:{ext.task.repository.target.full_name}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1322,14 +1233,8 @@ "autoSelectVisualization": false, "chartSettings": { "categoricalBarChartSettings": { - "categoryAxis": [ - "ext.task.repository.target.full_name" - ], "categoryAxisLabel": "ext.task.repository.target.full_name", "tooltipVariant": "single", - "valueAxis": [ - "count()" - ], "valueAxisLabel": "count()" }, "categoryOverrides": {}, @@ -1349,32 +1254,19 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "ext.task.repository.target.full_name", "displayedFields": [], - "longitude": "count()", "value": "count()" }, "histogram": { - "dataMappings": [ - { - "rangeAxis": "", - "valueAxis": "count()" - } - ], - "displayedFields": [ - "ext.task.repository.target.full_name" - ], + "dataMappings": [], + "displayedFields": [], "variant": "single" }, "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue-moss", - "dataMappings": { - "value": "count()" - }, - "displayedFields": [ - "ext.task.repository.target.full_name" - ], + "dataMappings": {}, + "displayedFields": [], "legend": { "hidden": false, "position": "auto" @@ -1432,7 +1324,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\" \n| sort timestamp asc\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| summarize Count= count(),by:{vcs.repository.ref.name}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider ==\"github.com\" \n| sort timestamp asc\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| summarize count = count(), by:{vcs.repository.ref.name}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1452,9 +1344,9 @@ "categoryAxisLabel": "vcs.repository.ref.name", "tooltipVariant": "single", "valueAxis": [ - "Count" + "count" ], - "valueAxisLabel": "Count" + "valueAxisLabel": "count" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1478,14 +1370,14 @@ "vcs.repository.ref.name", "Count" ], - "longitude": "Count", + "longitude": "count", "value": "Count" }, "histogram": { "dataMappings": [ { "rangeAxis": "", - "valueAxis": "Count" + "valueAxis": "count" } ], "displayedFields": [ @@ -1497,7 +1389,7 @@ "colorMode": "color-palette", "colorPalette": "blue", "dataMappings": { - "value": "Count" + "value": "count" }, "displayedFields": [ "vcs.repository.ref.name" @@ -1557,7 +1449,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\"\n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $TargetRepository) \n| filter in(ext.task.repository.target.ref, $TargetRef)\n| dedup task.id\n| summarize SumCommits = sum(ext.task.merge.commits)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\"\n| filter event.provider == \"github.com\"\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| summarize sum(ext.task.merge.commits)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1572,14 +1464,14 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "SumCommits" + "sum(ext.task.merge.commits)" ], - "categoryAxisLabel": "SumCommits", + "categoryAxisLabel": "sum(ext.task.merge.commits)", "tooltipVariant": "single", "valueAxis": [ - "SumCommits" + "sum(ext.task.merge.commits)" ], - "valueAxisLabel": "SumCommits" + "valueAxisLabel": "sum(ext.task.merge.commits)" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1598,14 +1490,14 @@ }, "dataMapping": { "displayedFields": [], - "longitude": "SumCommits", + "longitude": "sum(ext.task.merge.commits)", "value": "SumCommits" }, "histogram": { "dataMappings": [ { "rangeAxis": "", - "valueAxis": "SumCommits" + "valueAxis": "sum(ext.task.merge.commits)" } ], "displayedFields": [], @@ -1636,8 +1528,9 @@ "colorThresholdTarget": "value", "label": "SumCommits", "prefixIcon": "", - "recordField": "SumCommits", + "recordField": "sum(ext.task.merge.commits)", "showLabel": false, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -1658,6 +1551,18 @@ "tooltip": { "showCustomFields": false }, + "unitsOverrides": [ + { + "added": 1737375708272, + "baseUnit": "none", + "decimals": 0, + "delimiter": false, + "displayUnit": null, + "identifier": "sum(ext.task.merge.commits)", + "suffix": "", + "unitCategory": "unspecified" + } + ], "valueBoundaries": { "max": "auto", "min": "auto" @@ -1667,8 +1572,8 @@ }, "variables": [ { - "input": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\" \n| summarize distinctTargetRepositories = collectDistinct(ext.task.repository.target.full_name)\n| expand distinctTargetRepositories\n| sort distinctTargetRepositories", - "key": "TargetRepository", + "input": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\" \n| summarize distinctTargetRepositories = collectDistinct(ext.task.repository.target.full_name)\n| expand distinctTargetRepositories\n| sort distinctTargetRepositories", + "key": "Repository", "multiple": false, "type": "query", "visible": true @@ -1677,8 +1582,8 @@ "defaultValue": [ "main" ], - "input": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider==\"github.com\"\n| summarize distinctTargetRef = collectDistinct(ext.task.repository.target.ref)\n| expand distinctTargetRef\n| sort distinctTargetRef", - "key": "TargetRef", + "input": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| summarize distinctTargetRef = collectDistinct(ext.task.repository.target.ref)\n| expand distinctTargetRef\n| sort distinctTargetRef", + "key": "Branch", "multiple": true, "type": "query", "visible": true diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json index e01d1ba..eb95d01 100644 --- a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json +++ b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json @@ -12,7 +12,7 @@ "processors": [ { "builtin": false, - "description": "Sets event.id to a unique identifier", + "description": "Set event.id to a unique identifier", "dqlScript": "fieldsAdd event.id = hashSha1(concat(toString(toLong(now())), toString(RANDOM())))", "editable": true, "enabled": true, @@ -23,8 +23,8 @@ }, { "builtin": false, - "description": "Sets default SDLC and pipeline properties", - "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\",\nevent.provider = \"github.com\",\nevent.category = \"pipeline\",\nevent.type = \"run\"\n/*\n\"event.category\": \"application\",\n\"event.type\": \"deployment\"\n*/", + "description": "Set default SDLC and pipeline properties", + "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\", // todo: needs to be changed to current version\nevent.provider = \"github.com\",\nevent.category = \"pipeline\",\nevent.type = \"run\"", "editable": true, "enabled": true, "id": "github:sets_sdlc_pipeline_properties_9061", @@ -34,8 +34,8 @@ }, { "builtin": false, - "description": "Sets default SDLC and task properties", - "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"build\"\n/*\n\"event.category\": \"application\",\n\"event.type\": \"deployment\"\n*/", + "description": "Set default SDLC and task properties", + "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\", // todo: needs to be changed to current version\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"build\"", "editable": true, "enabled": true, "id": "github:sets_sdlc_task_properties_1775", @@ -45,8 +45,8 @@ }, { "builtin": false, - "description": "Sets default SDLC properties and type to change", - "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"change\"", + "description": "Set default SDLC properties and type to change", + "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\", // todo: needs to be changed to current version\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"change\"", "editable": true, "enabled": true, "id": "github:sets_default_and_type_change_2135", @@ -56,7 +56,7 @@ }, { "builtin": false, - "description": "Sets default SDLC properties and type to commit", + "description": "Set default SDLC properties and type to commit", "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"commit\"", "editable": true, "enabled": true, @@ -100,7 +100,7 @@ "processors": [ { "builtin": false, - "description": "Sets event.id to a unique identifier", + "description": "Set event.id to a unique identifier", "dqlScript": "fieldsAdd event.id = hashSha1(concat(toString(toLong(now())), toString(RANDOM())))", "editable": true, "enabled": true, @@ -111,8 +111,8 @@ }, { "builtin": false, - "description": "Sets default SDLC properites and type deployment", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{apiVersion, kind} \n| fieldsAdd \nif(isNull(apiVersion), \"1.0.0\", else: apiVersion), \nalias: event.version, \nevent.kind = \"SDLC_EVENT\", \nevent.provider = \"argocd\",\nif(isNull(kind), \"task\", else: lower(kind)), \nalias: event.category, \nevent.type = \"deployment\" \n| fieldsRemove record_json, apiVersion, kind", + "description": "Set default SDLC properties and type deployment", + "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{apiVersion, kind} \n| fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nif(isNull(apiVersion), \"1.0.0\", else: apiVersion), alias: event.version, // todo: needs to be changed to current version\nif(isNull(kind), \"task\", else: lower(kind)), alias: event.category, \nevent.type = \"deployment\", \nevent.provider = \"argocd\"\n| fieldsRemove record_json, apiVersion, kind", "editable": true, "enabled": true, "id": "argocd:sets_application_properties_6951", @@ -122,7 +122,7 @@ }, { "builtin": false, - "description": "Sets task.(id|name)", + "description": "Set task.(id|name)", "dqlScript": "fieldsAdd \ntask.id = hashSha1(concat(toString(toLong(now())), toString(RANDOM()))),\ntask.name = \"ArgoCD Deployment\"", "editable": true, "enabled": true, @@ -385,7 +385,7 @@ { "builtin": false, "description": "cicd.pipeline.run.id, cicd.pipeline.run.url.full", - "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, html_url} \n| fieldsRename cicd.pipeline.run.id = id, cicd.pipeline.run.url.full = html_url\n| fieldsRemove record_json\n", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, html_url} \n| fieldsRename cicd.pipeline.run.id = id, cicd.pipeline.run.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:workflow:pipeline.run.id_pipeline.run.url_5049", @@ -393,6 +393,17 @@ "sampleData": "{\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/github-org/actionspipeline/workflows/CI/badge.svg\"\n }\n }", "type": "dql" }, + { + "builtin": false, + "description": "ext.pipeline.run.trigger", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{event} \n| fieldsRename ext.pipeline.run.trigger = event //todo: change to cicd.pipeline.run.trigger\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:workflow:ext.pipeline.run.trigger_9871", + "matcher": "isNotNull(workflow_run) ", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", + "type": "dql" + }, { "builtin": false, "description": "cicd.pipeline.run.outcome", @@ -404,10 +415,21 @@ "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"created_at\": \"2024-07-03T04:58:10Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\", \n \"pull_requests\": []\n }\n}", "type": "dql" }, + { + "builtin": false, + "description": "ext.pipeline.run.attempt", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_attempt} \n| fieldsRename ext.pipeline.run.attempt = run_attempt //todo: change to cicd.pipeline.run.attempt\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:workflow:ext.pipeline.run.attempt_6964", + "matcher": "isNotNull(workflow_run) ", + "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", + "type": "dql" + }, { "builtin": false, "description": "vcs.repository.ref.name", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name\n| fieldsRemove record_json", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name //TODO: should be vcs.repository.full.name\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:workflow:vcs.repository.ref.name_4133", @@ -428,32 +450,10 @@ }, { "builtin": false, - "description": "ext.pipeline.run.attempt", - "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_attempt} \n| fieldsRename ext.pipeline.run.attempt = run_attempt\n| fieldsRemove record_json", - "editable": true, - "enabled": true, - "id": "github:workflow:ext.pipeline.run.attempt_6964", - "matcher": "isNotNull(workflow_run) ", - "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.pipeline.run.trigger", - "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{event} \n| fieldsRename ext.pipeline.run.trigger = event\n| fieldsRemove record_json", - "editable": true, - "enabled": true, - "id": "github:workflow:ext.pipeline.run.trigger_9871", - "matcher": "isNotNull(workflow_run) ", - "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.pipeline.(branch|head_sha)", - "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head_branch, head_sha} \n| fieldsRename ext.pipeline.head_branch = head_branch\n| fieldsRename ext.pipeline.head_sha = head_sha\n| fieldsRemove record_json", + "description": "vcs.repository.ref.name | revision", + "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nparse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head_branch, head_sha} \n| fieldsRename ext.pipeline.head_branch = head_branch // vcs.ref.head.name.full\n| fieldsRename ext.pipeline.head_sha = head_sha // vcs.ref.head.revision\n| fieldsRemove record_json", "editable": true, - "enabled": true, + "enabled": false, "id": "github:workflow:ext.pipeline.head_branch_sha_2706", "matcher": "isNotNull(workflow_run) ", "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", @@ -625,6 +625,17 @@ "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n }", "type": "dql" }, + { + "builtin": false, + "description": "ext.task.run.attempt", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_attempt} \n| fieldsRename ext.task.run.attempt = run_attempt //todo: change to task.run.attempt\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:ext.task.run.attempt_7991", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\"\n }\n}", + "type": "dql" + }, { "builtin": false, "description": "task.outcome", @@ -639,7 +650,7 @@ { "builtin": false, "description": "vcs.repository.ref.name", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name\n| fieldsRemove record_json", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name //TODO: should be vcs.repository.full.name\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:job:vcs.repository.ref.name_8247", @@ -660,24 +671,24 @@ }, { "builtin": false, - "description": "vcs.repository.topics", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{topics} \n| fieldsRename vcs.repository.topics = topics\n| fieldsRemove record_json", + "description": "ext.task.steps", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{steps} \n| fieldsRename ext.task.steps = steps //TODO: change to task.steps\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:job:vcs.repository.topics_9776", - "matcher": "isNotNull(repository)", - "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "id": "github:job:ext.task.steps_6131", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", "type": "dql" }, { "builtin": false, - "description": "vcs.repository.properties", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{custom_properties} \n| fieldsRename vcs.repository.properties = custom_properties\n| fieldsRemove record_json", + "description": "ext.task.runner.name, ext.task.runner.group.name", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{runner_name, runner_group_name} \n| fieldsRename ext.task.runner.name = runner_name\n| fieldsRename ext.task.runner.group.name = runner_group_name\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:job:vcs.repository.properties_5603", - "matcher": "isNotNull(repository)", - "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "id": "github:job:ext.task.runner.name_ext.task.runner.group.name_3013", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", "type": "dql" }, { @@ -685,7 +696,7 @@ "description": "ext.task.labels", "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{labels}\n| fieldsRename ext.task.labels = labels\n| fieldsRemove record_json ", "editable": true, - "enabled": true, + "enabled": false, "id": "github:job:ext.task.labels_3178", "matcher": "isNotNull(workflow_job) ", "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n}", @@ -693,35 +704,24 @@ }, { "builtin": false, - "description": "ext.task.run.attempt", - "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_attempt} \n| fieldsRename ext.task.run.attempt = run_attempt\n| fieldsRemove record_json", - "editable": true, - "enabled": true, - "id": "github:job:ext.task.run.attempt_7991", - "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\"\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.task.runner.name, ext.task.runner.group.name", - "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{runner_name, runner_group_name} \n| fieldsRename ext.task.runner.name = runner_name\n| fieldsRename ext.task.runner.group.name = runner_group_name\n| fieldsRemove record_json", + "description": "vcs.repository.properties", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{custom_properties} \n| fieldsRename vcs.repository.properties = custom_properties\n| fieldsRemove record_json", "editable": true, - "enabled": true, - "id": "github:job:ext.task.runner.name_ext.task.runner.group.name_3013", - "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", + "enabled": false, + "id": "github:job:vcs.repository.properties_5603", + "matcher": "isNotNull(repository)", + "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, { "builtin": false, - "description": "ext.task.steps", - "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{steps} \n| fieldsRename ext.task.steps = steps\n| fieldsRemove record_json", + "description": "vcs.repository.topics", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{topics} \n| fieldsRename vcs.repository.topics = topics\n| fieldsRemove record_json", "editable": true, - "enabled": true, - "id": "github:job:ext.task.steps_6131", - "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", + "enabled": false, + "id": "github:job:vcs.repository.topics_9776", + "matcher": "isNotNull(repository)", + "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, { @@ -827,7 +827,7 @@ { "builtin": false, "description": "event.status", - "dqlScript": "/* there was a lack of \"closed\" status for PRs closed w/o merging */\nparse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged, state} \n| fieldsAdd if(merged == true, \"merged\", else: if(state == \"closed\", \"closed\", else: \"open\")), alias: event.status\n| fieldsRemove record_json, merged, state", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged, state} \n| fieldsAdd if(merged == true, \"merged\", else: if(state == \"closed\", \"closed\", else: \"open\")), alias: event.status\n| fieldsRemove record_json, merged, state", "editable": true, "enabled": true, "id": "github:pull-request:event.status_8886", @@ -915,7 +915,7 @@ { "builtin": false, "description": "vcs.repository.ref.name", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name\n| fieldsRemove record_json", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name //TODO: should be vcs.repository.full.name\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:pull-request:vcs.repository.ref.name_9152", @@ -925,33 +925,33 @@ }, { "builtin": false, - "description": "vcs.repository.ref.revision", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merge_commit_sha} \n| fieldsRename vcs.repository.ref.revision = merge_commit_sha\n| fieldsRemove record_json", + "description": "vcs.repository.url.full", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url} \n| fieldsRename vcs.repository.url.full = html_url", "editable": true, "enabled": true, - "id": "github:pull-request:vcs.repository.ref.revision_9671", - "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "id": "github:pull-request:vcs.repository.url.full_5151", + "matcher": "isNotNull(repository)", + "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, { "builtin": false, - "description": "vcs.repository.ref.type", - "dqlScript": "fieldsAdd \"tbd:branch vs tag\", alias: vcs.repository.ref.type", + "description": "vcs.repository.ref.revision", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merge_commit_sha} \n| fieldsRename vcs.repository.ref.revision = merge_commit_sha //TODO: to be double checked after VCS alignment. \n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:pull-request:vcs.repository.ref.type_3064", - "matcher": "isNotNull(repository)", - "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "id": "github:pull-request:vcs.repository.ref.revision_9671", + "matcher": "isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { "builtin": false, - "description": "vcs.repository.url.full", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url} \n| fieldsRename vcs.repository.url.full = html_url", + "description": "vcs.repository.ref.type", + "dqlScript": "fieldsAdd \"tbd:branch vs tag\", alias: vcs.repository.ref.type //TODO: to be double checked after VCS alignment. ", "editable": true, "enabled": true, - "id": "github:pull-request:vcs.repository.url.full_5151", + "id": "github:pull-request:vcs.repository.ref.type_3064", "matcher": "isNotNull(repository)", "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" @@ -961,7 +961,7 @@ "description": "ext.task.labels", "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{labels}\n| fieldsAdd ext.task.labels=toArray(labels)\n//| expand ext.task.labels\n| fieldsRemove record_json, labels", "editable": true, - "enabled": true, + "enabled": false, "id": "github:pull-request:ext.task.labels_8497", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", @@ -970,7 +970,7 @@ { "builtin": false, "description": "ext.task.repository.source.(full_name|name|ref)", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head}\n| fieldsAdd head[repo][full_name], alias: ext.task.repository.source.full_name\n| fieldsAdd head[repo][name], alias: ext.task.repository.source.name\n| fieldsAdd head[ref], alias: ext.task.repository.source.ref\n| fieldsRemove record_json, head", + "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nparse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head}\n| fieldsAdd head[repo][full_name], alias: ext.task.repository.source.full_name\n| fieldsAdd head[repo][name], alias: ext.task.repository.source.name\n| fieldsAdd head[ref], alias: ext.task.repository.source.ref\n| fieldsRemove record_json, head", "editable": true, "enabled": true, "id": "github:pull-request:ext.task.repository.source_8853", @@ -981,7 +981,7 @@ { "builtin": false, "description": "ext.task.repository.target.(full_name|name|ref)", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{base}\n| fieldsAdd base[repo][full_name], alias: ext.task.repository.target.full_name\n| fieldsAdd base[repo][name], alias: ext.task.repository.target.name\n| fieldsAdd base[ref], alias: ext.task.repository.target.ref\n| fieldsRemove record_json, base", + "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nparse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{base}\n| fieldsAdd base[repo][full_name], alias: ext.task.repository.target.full_name\n| fieldsAdd base[repo][name], alias: ext.task.repository.target.name\n| fieldsAdd base[ref], alias: ext.task.repository.target.ref\n| fieldsRemove record_json, base", "editable": true, "enabled": true, "id": "github:pull-request:ext.task.repository.target._full_name_name_ref_9238", @@ -994,7 +994,7 @@ "description": "ext.task.merger.name", "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged_by}\n| fieldsAdd merged_by[login], alias: ext.task.merger.name\n| fieldsRemove record_json, merged_by", "editable": true, - "enabled": true, + "enabled": false, "id": "github:pull-request:ext.task.merger.name_6302", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"author_association\": \"CONTRIBUTOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n },\n \"repository\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-17T11:17:59Z\",\n \"pushed_at\": \"2024-09-17T13:07:14Z\",\n \"homepage\": null,\n \"size\": 78,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n },\n \"organization\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"url\": \"https://api.github.com/orgs/github-org\",\n \"repos_url\": \"https://api.github.com/orgs/github-org/repos\",\n \"events_url\": \"https://api.github.com/orgs/github-org/events\",\n \"hooks_url\": \"https://api.github.com/orgs/github-org/hooks\",\n \"issues_url\": \"https://api.github.com/orgs/github-org/issues\",\n \"members_url\": \"https://api.github.com/orgs/github-org/members{/member}\",\n \"public_members_url\": \"https://api.github.com/orgs/github-org/public_members{/member}\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"description\": null\n },\n \"sender\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n}", @@ -1005,7 +1005,7 @@ "description": "ext.task.sender.name", "dqlScript": "parse sender, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{login}\n| fieldsAdd login, alias: ext.task.sender.name\n| fieldsRemove record_json, login", "editable": true, - "enabled": true, + "enabled": false, "id": "github:pull-request:ext.task.sender.name_1786", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"author_association\": \"CONTRIBUTOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n },\n \"repository\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-17T11:17:59Z\",\n \"pushed_at\": \"2024-09-17T13:07:14Z\",\n \"homepage\": null,\n \"size\": 78,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n },\n \"organization\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"url\": \"https://api.github.com/orgs/github-org\",\n \"repos_url\": \"https://api.github.com/orgs/github-org/repos\",\n \"events_url\": \"https://api.github.com/orgs/github-org/events\",\n \"hooks_url\": \"https://api.github.com/orgs/github-org/hooks\",\n \"issues_url\": \"https://api.github.com/orgs/github-org/issues\",\n \"members_url\": \"https://api.github.com/orgs/github-org/members{/member}\",\n \"public_members_url\": \"https://api.github.com/orgs/github-org/public_members{/member}\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"description\": null\n },\n \"sender\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n}", @@ -1025,7 +1025,7 @@ { "builtin": false, "description": "ext.pr.url", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url}\n| fieldsAdd html_url, alias: ext.pr.url\n| fieldsRemove record_json, html_url", + "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nparse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url}\n| fieldsAdd html_url, alias: ext.pr.url\n| fieldsRemove record_json, html_url", "editable": true, "enabled": true, "id": "github:pull-request:ext.pr.url_1987", @@ -1038,7 +1038,7 @@ "description": "ext.task.merge_commit_sha", "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merge_commit_sha} \n| fieldsRename ext.task.merge_commit_sha = merge_commit_sha\n| fieldsRemove record_json", "editable": true, - "enabled": true, + "enabled": false, "id": "github:pull-request:ext.task.merge_commit_sha_5884", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", @@ -1046,8 +1046,8 @@ }, { "builtin": false, - "description": "ext.task.(action|number)", - "dqlScript": "fieldsAdd action, alias: ext.task.action, number, alias: ext.task.number", + "description": "ext.task.action | vcs.change.id", + "dqlScript": "fieldsAdd action, alias: ext.task.action, number, alias: vcs.change.id", "editable": true, "enabled": true, "id": "github:pull-request:ext.task.action_9401", @@ -1235,7 +1235,7 @@ { "builtin": false, "description": "vcs.repository.ref.name", - "dqlScript": "fieldsAdd name, alias: vcs.repository.ref.name", + "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nfieldsAdd name, alias: vcs.repository.ref.name ", "editable": true, "enabled": true, "id": "github:commit-status:vcs.repository.ref.name_9152", @@ -1246,7 +1246,7 @@ { "builtin": false, "description": "vcs.repository.ref.revision", - "dqlScript": "fieldsAdd sha, alias: vcs.repository.ref.revision", + "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nfieldsAdd sha, alias: vcs.repository.ref.revision", "editable": true, "enabled": true, "id": "github:commit-status:vcs.repository.ref.revision_9671", @@ -1268,7 +1268,7 @@ { "builtin": false, "description": "ext.task.repository.branch.(name)", - "dqlScript": "parse branches[0], \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{name}\n| fieldsAdd name, alias:ext.task.repository.branch.name\n| fieldsRemove record_json", + "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nparse branches[0], \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{name}\n| fieldsAdd name, alias:ext.task.repository.branch.name\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:commit-status:ext.task.repository.source_8853", @@ -1281,7 +1281,7 @@ "description": "ext.task.artifacts", "dqlScript": "fieldsAdd description, alias:ext.task.artifacts", "editable": true, - "enabled": true, + "enabled": false, "id": "github:commit-status:ext.task.artifacts_2701", "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"github-repo\",\n \"full_name\": \"github-org/github-repo\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/github-repo\"\n }\n }\n}", From a7ee59731fad277217557113bac49642165da5a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Thu, 23 Jan 2025 15:03:29 +0100 Subject: [PATCH 07/25] Changed file name MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../pipeline_observability/document-dashboard/config.yaml | 8 ++++---- ...0c63-4f8a-99bd-92e7cf7d86db.json => pull_request.json} | 0 ...714-5545-4413-95e1-023333e8edac.json => workflow.json} | 0 .../pipeline_observability/openpipeline/config.yaml | 2 +- .../{events.sdlc.json => events.sdlc.github.json} | 0 5 files changed, 5 insertions(+), 5 deletions(-) rename github_pipeline_observability/pipeline_observability/document-dashboard/{f9847607-0c63-4f8a-99bd-92e7cf7d86db.json => pull_request.json} (100%) rename github_pipeline_observability/pipeline_observability/document-dashboard/{0a635714-5545-4413-95e1-023333e8edac.json => workflow.json} (100%) rename github_pipeline_observability/pipeline_observability/openpipeline/{events.sdlc.json => events.sdlc.github.json} (100%) diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml index 30d71bb..9e90cee 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml @@ -1,13 +1,13 @@ configs: - id: 0a635714-5545-4413-95e1-023333e8edac config: - name: GitHub Workflow v.0.2.1 + name: GitHub Workflow v.0.2.2 parameters: extractedIDs: type: value value: id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05: 3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05 - template: 0a635714-5545-4413-95e1-023333e8edac.json + template: workflow.json skip: false originObjectId: 0a635714-5545-4413-95e1-023333e8edac type: @@ -16,8 +16,8 @@ configs: private: true - id: f9847607-0c63-4f8a-99bd-92e7cf7d86db config: - name: GitHub Pull Request v.0.2.1 - template: f9847607-0c63-4f8a-99bd-92e7cf7d86db.json + name: GitHub Pull Request v.0.2.2 + template: pull_request.json skip: false originObjectId: f9847607-0c63-4f8a-99bd-92e7cf7d86db type: diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/f9847607-0c63-4f8a-99bd-92e7cf7d86db.json b/github_pipeline_observability/pipeline_observability/document-dashboard/pull_request.json similarity index 100% rename from github_pipeline_observability/pipeline_observability/document-dashboard/f9847607-0c63-4f8a-99bd-92e7cf7d86db.json rename to github_pipeline_observability/pipeline_observability/document-dashboard/pull_request.json diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/0a635714-5545-4413-95e1-023333e8edac.json b/github_pipeline_observability/pipeline_observability/document-dashboard/workflow.json similarity index 100% rename from github_pipeline_observability/pipeline_observability/document-dashboard/0a635714-5545-4413-95e1-023333e8edac.json rename to github_pipeline_observability/pipeline_observability/document-dashboard/workflow.json diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/config.yaml b/github_pipeline_observability/pipeline_observability/openpipeline/config.yaml index 32e8cf5..fc57296 100644 --- a/github_pipeline_observability/pipeline_observability/openpipeline/config.yaml +++ b/github_pipeline_observability/pipeline_observability/openpipeline/config.yaml @@ -6,7 +6,7 @@ configs: type: value value: id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435: 9ecd9ce4-ad89-4aa8-af7b-ebb7daf55435 - template: events.sdlc.json + template: events.sdlc.github.json skip: false type: openpipeline: diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json similarity index 100% rename from github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.json rename to github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json From bed3e3c639730a64edcaced24b756b4359eeb914 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Thu, 23 Jan 2025 15:20:42 +0100 Subject: [PATCH 08/25] Renamed files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../pipeline_observability/document-dashboard/config.yaml | 4 ++-- .../{pull_request.json => github.pull_request.json} | 0 .../{workflow.json => github.workflow.json} | 0 3 files changed, 2 insertions(+), 2 deletions(-) rename github_pipeline_observability/pipeline_observability/document-dashboard/{pull_request.json => github.pull_request.json} (100%) rename github_pipeline_observability/pipeline_observability/document-dashboard/{workflow.json => github.workflow.json} (100%) diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml index 9e90cee..022c31f 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml @@ -7,7 +7,7 @@ configs: type: value value: id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05: 3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05 - template: workflow.json + template: github.workflow.json skip: false originObjectId: 0a635714-5545-4413-95e1-023333e8edac type: @@ -17,7 +17,7 @@ configs: - id: f9847607-0c63-4f8a-99bd-92e7cf7d86db config: name: GitHub Pull Request v.0.2.2 - template: pull_request.json + template: github.pull_request.json skip: false originObjectId: f9847607-0c63-4f8a-99bd-92e7cf7d86db type: diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/pull_request.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json similarity index 100% rename from github_pipeline_observability/pipeline_observability/document-dashboard/pull_request.json rename to github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/workflow.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json similarity index 100% rename from github_pipeline_observability/pipeline_observability/document-dashboard/workflow.json rename to github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json From 959496a8090312c93a5fe460933c38620b44c09b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Fri, 24 Jan 2025 07:50:25 +0100 Subject: [PATCH 09/25] Removed images MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/README.md | 27 ------------------ .../GitHub Pull Request monitoring v.2.png | Bin 459988 -> 0 bytes ...Hub Workflows monitoring v.2_pipelines.png | Bin 340880 -> 0 bytes .../GitHub Workflows monitoring v.2_tasks.png | Bin 110109 -> 0 bytes 4 files changed, 27 deletions(-) delete mode 100644 github_pipeline_observability/images/GitHub Pull Request monitoring v.2.png delete mode 100644 github_pipeline_observability/images/GitHub Workflows monitoring v.2_pipelines.png delete mode 100644 github_pipeline_observability/images/GitHub Workflows monitoring v.2_tasks.png diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index 0d13f4f..ba1b2b2 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -110,30 +110,3 @@ You can configure webhooks at either the organization level (affecting all repos - (disable "Pushes") 5. Select **Active** to receive event details when the hook is triggered. 6. Click **Add webhook** to save the webhook. - -## Observe your GitHub workfow and pull request activities - -#### GitHub Workflow monitoring -* Overall Pipeline analysis - * Total number of pipeline runs (+details) - * Pipeline duration: p50, avg - * Failure rate / Pipeline completion status - * Re-runs - * Pipeline triggers - * Error-prune pipelines | Top 5 -![](./images/GitHub%20Workflows%20monitoring%20v.2_pipelines.png) -* Pipeline tasks / steps - * Task duration (p50) - * Error-prune tasks | Top 5 - * Distribution of Runners - * Steps by duration (p50) | Top 5 -![](./images/GitHub%20Workflows%20monitoring%20v.2_tasks.png) - -#### GitHub Pull Request monitoring -* Open PRs (+details) -* Open PRs by repository -* In Open status -* Merged PRs (+details) -* Merged PRs by taget repository -* Time to merge (Open-to-merge duration): p50, avg -![](./images/GitHub%20Pull%20Request%20monitoring%20v.2.png) \ No newline at end of file diff --git a/github_pipeline_observability/images/GitHub Pull Request monitoring v.2.png b/github_pipeline_observability/images/GitHub Pull Request monitoring v.2.png deleted file mode 100644 index a4b83f4f1a83519533a412eb77d452ab552bf37a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 459988 zcmbTd1yodB_XkWP3Q`IJ(g-5mk^@K$EeJ?=Nq3j1h;%oDbaxLWAlxA@&pelAEKe55dalrG|hwr}331K+%%Q+IW;vbDEFLsJM((!qVNsY4~kB&hW?Cu769lj7xhh ziS`Fff{A8dx)eTadg;>o(3s*pJZ4M!77MLb1jIFrC7DNfT8<&bJoUZDJ|scrWwPV} zZjGAJ3O;>r1YKi@gtKa^1}N)3Np*Xbe^Q?R`gVl4e8}?G0J>QVe+mGKWba2dwi)yt zKcA^Cu^yB*OA_vB6(39^F6`YS>P*U)my;?dK>HT)IrLs}WJKc=Q}OLvs*ub_b~vd- zYVpvYCtt4K(*x-6&E9KEtcQ>5V(hY_6sU zO?9(7ZdS)A6PJzjVVI>UkQ`J^^bhe_NY%W#2cK>Bw3rvw_O=bs`wIZrBxJPM4#I;0 z&j2IX`=r3vcs(Kv*PF-d2A^_+CAE%T>oNhqYMwM_^REK51<0Bbw&e(~H|}$nOkOzQ zxU{v=IeObmNf>0l3TS(uPD@?&jkIcHJ4~+Z_YZiea~C#xF!qz`f=~)Ns;`TFRDSD8 zr7RDQL+~vyh@GFAeUWD(xKvo94V8N56a0>po@GD z{G}c+(OF68h%I2~60}5B`o=OdoC*zh345&PN5J|>W$f1DzKZgPc8Qm(yjOdV39jE} zzI&yPvZ?!YVv+_^vZWP*E7{&9T&_JyKda>B1rI;KxwxQPOKv1()vh^;?GUD1Uoye5fYVzgCYW{`R^AZCH5@vU6;Rh)wY zhbx-!w@f)s2I>LoP5Oz@+weAdo_EyKQc>z`?qWl7!Zyz+V^n4N#?x%*Tb~$)Yv)Yw z(A1-gM;S>wFEF^5r(#nxY1<6BO#0=0Y3G856> z6aE_0di}98cGwzTGa4wIt4n7s$(vv$7}Qs_PIw}5%NHWY%``_Uh9}l-A(GidF(|cog?!RV>W{)5iKbK$P_Ozn7yg;jo}1% zoo_ZFH$gK2oY2xB-{sJavX}N`#*Nb)AaNyb$!yE;|LC7|8+jX&3#`fa*2sM+J@kC& z)zD)_zAfH@h|`c#*@i-2&5e@zslKU)AH*-7U(j46rKhK-rHAQ7roVTH)BC&-*zo8B z;q*$0UD;xZ+qCBN(>=CnuM&_(XWsocxjfzRTN~DT{{=-ojzj!I^ur3AH$87di|D7` z7r!kS&vDV(z|N9x%6HqD-1&U&dP9F>>08AtJE@pZHaKgLqg&wf?kw4=lkAP%N9{!I z?3srZ%X;Jutqs5h?S+s9>BEAB#RiBCz{&*Q4JU=(gx&POB-7k|m&l{s!&_utq(H>a zW5MIby}`rKoz%m6UwfBk_RzvinTAMn!#-#XG}c0 zrk1ah+oT5jvf>wz9GDXreNTBOcZa}f4#|>={J|c|fdj?&?ca;Mpk#Zd&wIHxXN>>$ zjcCvNo|Z3*1dI5HsK}^~QTcLIQDe_8DEXr9BI}}tBh{Y4Q@NG>m3x^jnORf<&39{G zmm6qf@3WUdrhf7FzB6qdtzSM5O>5Bos2evgQHR)m=ho=+#V5_D%m?&2T=r9+ScFJ~ zF*|Fr{V@A5K{AwM^}VkC3tf)75A}PEGj-d#tfP6<$CK#!}LW$1~_A+Vx^*gxm$cRAOXSA_*gW({bRt7(6x0~&9A(^jjW;! z>kg5Ce8Sv`ဆvem^R!fJ#C9*mSJN#EatjY&&2TFHl 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

&-`{om;zs;RcAU&-gceY|l9foV+#a9E3H!yXfT zKu;tTSRtRU&@U+2Nli#wN6K$#b047rD*ZfG2D|1Xyenk9NhEqI_Vkctrr3OIGf>U2 z*CgY8B5PB&tD=)L*0TysC+AMp(UOvZr5{ zIlr3tl=Q|YQaRWTeXpwM|;0459;<5+A&ezMb%600>`KK zOq;98(%CDR?#21(ch0pO&RiErM)FMrjgYB>b<(u@J8IcNm-HpiswZo;P zSY5khj9$_s=Dr$Y3~JAki_@^ca9nH;dU@?TJbgPij8$AkM}hb#Nnt@5>5sh^p%^$^wY&fP^h`W3@|u%)!4Q%PTcPUD$&7`GpVy@ zMh1vhr^Q?)SAAR#t^?LreY5rp8nJ;_(+!cr^4x;4G#9#MkJG^9B_~2|H<3KH{O;xo zI{EQm8&DG8<^EwR1u10$JC>q1w=k8mU=ns3T#@CzZ zu~Po!1S6(-W%3t*@yhssr<%mEu3QVZ?F4 zz^hW4;yz-$TLzT^F=}ikH%<4N@I3WkZOZ+xZxkhIN4$H!cW?=aX0R^$r97@|LGRyV zC_%sEH2M&d#46=JcOorqX2%rdT0aHp_@-Yo^C=f3U-Rrh0#6+zn(XEJ6ae2r)~jPR zDj|OFm1{9?T{5Ra)4(slUcq}t0gT)es7i?H0y&{%VMEADVEoD}vy1WHfe4TGS zvJ7_cOGl}-^(qALNW(i|^ojd8 zMhscnBol_fkEZv-z_$`bJb_cVx}N2xJ5`x^KBU7-49hI_XX!ix}Erbp%@>ey(Mzf)qL^| zaL{8)fS>K*%x7`AAr{5m)-AUQ>DmMXI*`rNK#GcLZ^<5lU#Y?yD%jc!(QV-s_I1hObBPBjziSTkh{qST=g4Js;#qTjfHJ(9po20CW zOH3&~=t0S_bm&B%j#^Ol6q5@_SvBq18o7n@z~cD)l-RA3jOnD<4}nYDCDQwCLGIiH z_FK_e(zFrIY3@U>5NIItWO5kUZV~A0I+}$MmhXFE-jO;EmcdUCJ=Pn8*y7UAANg^# zvbvTNNzV%^W`IrHH8kvaq-+~dMD+z2h|jCaEHDY|-L%`^wM&~z61Bi<)0tT)A0F(b zAl&p5Qcxz8p$`N{^OMQs~d5y)@zUwcwf$zm=URx}Tu38YxW14hZMw~P_t zAoL;8&izr!Nv_oS-aMpBEXty2L!jkx8&ive3=-TzUP)>8-S$OpVJ3In+jUcKAtd2V zGqN)Bi&~QMcv5Z(f@3Mw)!)=^AJ?=#A0}2byG(PQGeH)VG~={}15BFt(U~jtv`X{?4WN62#0m{@=|_p8qeTX$AwZm)U) z%$AYy8Yr2Eq+R2wX{D;TE;$omhMkMxI4O%^QSevoBu-Xga9Z98HXe|o68#j+#MWsO ztYfVAsDtCeOuXMCZO?RIMUq*RLsVi>T7i2j2y(9OEgL~|ogQlJ_V^rchJRNQ6m{WX z+Y?y_N8d@+>`O*1WoVZyUm~<&Bgvzi4Ol|QxF(>|usq@($5rW6+y3#YQTQ661&W_{_1nY+M`R6_^nm%do|>+>;07am=^( zk?_-Xse-bo?LTfiGimY%5?--=-x-@$+6dAv=4IU2& zlX+UA3q$#**_H&DsAbtKwc1R#G+{{rgb4SWs$q#N&&Xb;M?l+j!W_rAa=^ZxKEK^q zwS9N5CXdKoR50iiR>Z7tH2m^wonaz8E4AeenKVFpRfPcmFyPi^RI?wGWf5c%TI~SR zw;cQ_yHo`$nyNwvtyQfIv1jSXtsP1Ei*AkPp=49K-juPH8g;_iqR1igNZ{yLag9^} zucm@x3)T*VL%eE^fHVn?xu=qn0wJRq&xoVHqDeSA2wx4)Bv~uNYME??lf;(4C4t<# zyXyMkGroAM7Lw&pOa)o&!rag1rMp>0EU8S9xE#hXo>D_H29Heu2Vt9W2!Doe(?NSf znyKu$XYiU1&J-?uUG8KlipR910!nUYH!Y^!ek%48N3m9?Zj!#5)-b`%IwqYol&-{z?*9nPRBVHHL8O&cO zBj-`Z2>mR?CHjQ0L&t5-Rj zt4zypR7_jfH0jdU=jwDr8+uC;c62QlxV)^C_8N{q8;ZDp+GfwyOinF`qt+I zot@i{9+OJRjpmg4gF+9i*!@xi3r)~Y)(7Ku2Pd-Bdsa5-6r$KZFz#9+ih&fgSkzwT zg?H7kCP;u!CnnF(L(C<0@}&x8&lCuI@7!=(7E&y&f2$O2ma=^?+ibVJDn7%4ymZHk znKnW;Z`>K~;k}S*0VTGvAU@1_O4lQ?}MI^zF>Pv?nU4AYLn{a zwO&cL?89Im((EH#eij9-R%CT^0B+dt$$-S?6RaN^3{%GfVYE*Amj-4DNQ6wTBlE}4 zs{Ayb$p=>kg8VYcri&@=F!vzfhZ~1JvgxL2D^%XzzkGr<4De3Hs+~f#8uT+1oh*mE za{W{W!lR?%D#LF|DyHvW$)M>boe-4tTs;GCBzOg0T{}XuacS_0zSso07U$(`;$ACx zsGVWrlqtFLd$FHyBb`ddj{h=pz(|a2t52U+Cxu_LdJu~{h$8A#(dJbHW3N^w@Dk^y-;^Ybp zS?#~`g+Yj_?-1W#XQSc?s=-s=d! zS2{^{Mid>V$?85|?Y}N)>PQ?@&^lNx$naP7B3BPz#8by)I(VhG;(D~F3$YDeOO|WPuYlL-f(98A)i=QpwNtyU#UHpUj~E+gnU2l1~RF^?aaA-0^Z-JA32P05VQJ1e`!^U$#I9aua14g*uJWxcq zOh#WD;GQ8RAw-7b1t#6#atlm$idJ3T6AOUv>Gv?j6=KMZpD4tU;(hiTOf}o{#YaTh zC#Z~eMn^+Jf60C*VzUIO&J)tA6znqHE)^I!Cxde3GOBzm^g9H72X$=iJ_TG%GVksH z&fAZNhv z6QL~v*O3h6Oxcz5Lri-VY^ILKwYhd3gMssyA7l+(N$>r&Xl(TPAy9^7UACm^bI;C9 zHl6Bi`6-$zXAV2Akkw$30I6I$y(zq)=}xeFDyvqOe3CUt_D#1cA{!M7(QeLss zUS&d>rxPWtwPts@=^;)7>#WLF4Wj_y#$!C8*OYnd(N>0nKb={IIf(6Gd6N4x**&Eo zqey+YJHOSlK5&wgbqfcVpW(3IC^|he9CC9{*Khh;fXm>%pk0QzfCq?BF2gQ3!0p=H ziUi#J_9%U+lN?-Q!ygU(oq`LxV$<=Hx&#QDj}8X9@_nN6G$N`~rh#k6(Ta{lZ_HKg zq|nWor{F)(a%oal?*sL1FHm!xh1)sT-+sP$pS!9#GckQj_QCX>Y$eLcWh1t@yB`aH zP(g%_!rdOFEDHN+Vye$3IvG49@^;C13Z2os-79e;RhHn46zdamYKrmVnS<)tu$8W| zHBMp5+5k^s4@WW>!TEXJhm`gk*hzVp93(TbUVV)Bh8@oW{6?Qq*E}H&g5m?z3lqmX z0BbAuefYLBbih1*aG`>ZMdbwRSbOJ$rPNf)(psC@BtA{N0ttMr@}_l<#>CjTdHN`4 zcU4v$r!L@O>1%0s7j&THn`ZV_FecpZF{tMV&@{IssuB1~RgRk`d?30ABup$!m01}@ ztQ(v7#Z)hBPX-+Die!M zwJAHGggNunss!#$OJ_{SP#Xv$m=9~=1RTXZyYb2$MNRm6Sy^=e5<8+TwspSGWO!P< zn>J`nuc>#LES;fdao9+c<#6VBzm9r{WSmVeZUYTT$74!qy+%kOUR#+&z7%Zo(!|AX ziR=+yTkq*i(83y0)zURho~KCYY@>@JX>Ae?$wSZZm#p=W>}OQifErMOLNICy|69so$p=jl)ZFG? z4la6uI1s~reAiE$<&6A+vybWeTn`S!j$IuoJ85!f&$&ckkHGH4p$>}Ri6y)54@*aVuzaqL z;mcyUrkvr1y2op;T}TaEWZEU+!iRS170Q9oot;{N5mI-R%RtxbX@3-OOxd-`YG?0u z3&=N!i2cAi^rRK%b@fP6yUapy(+SUeE+VbCY{< z8`?2IsBoOnc9x9q=UMSboT?zd)o=Efb{N|@m2X(|dVhBT_ry2!*;3P7h-S83Ny>iw zo2@o$+r`gkWJtCS0orF+Zp|7Z!3Otl+KDxNt%(GfA+N*yD)Yd;kLmmm+qmF@?0&tM zUNrGP<$`51-)g$oz1W3MBNsj_2w|U`y(L}hD^6@POHd%MnT}W3MXuFY*d*cCZb|RX zt~M_K3@Cx2rDPC%yY%UJxm&MrX!qduwr{OLypY8uU-Mzz&~pizHQ06ko(nrlBIaCL zpA06DVtUOatX(K7X!Rkg^U7*>Zn)_p0y!$RW78ccfk1$UDjif5W$;Rx#VySxqS(dQ z$hTa5^0T|DYTYgsaB%a1vDS-%I`6nBNH0bO z1BI@PG`+kc%pea%lf=GDJNS|B4mA+^no*n(pLn_LkplfILY*?z>J<4%MEF?GU zbz;toRI|^TFbb4&9AO%f!l7k zuZBmXFZtxJk1l(U0FFy;4lv8|zK<8yReEQvEp=`ibNDu10Nb6$*L!%9!z1V{yGLj$ zwEmEoSs`S$3)@;3y&s`apDrgEXq_ld71_LBj)fzga0(nb&Xe&_(ZqWa9bI7Smt255 z){N6_zH{nS}8XMl633AEF5FyHVvr(hAs!ozs0Ue z+6XSdWzgV0%_0j=Wk9dX@`8MzWnF$ieGZGPClH5`4fQTDG!n7oJ3^je>x0PmQ<;Ec zuW@N5+<16{swm<7sh_S|`j#WBzDhy0hi8x2QnGZ$Li;Dtk z>}4gzmfNeIPgt9ziFW27JTjR#0JHu|e{hj+t;1uJyI--TlbBC@S`_Hu?tErtblul3 zRW^gc>A(zQ2$bS*5th%BCYd$tD7%e4KIw$MrIU0+RCJi{O`pZBdzA+oifx?9g7~E- z)Y(W#Z9}E~v*f1}l@H;v1c_L}4Zb(X6jqTEJXTiotJpO?ys_|q{)a|e|@d!kBX>(%iZVE!LHYIVW-f|)2e-xO(9Y**HBx*98h@I1G=cS`VJw~E-VH}%-5zwZE?oG+>rgI` zDahyhW8|L4?5JsIXL$}%20hMVm(Cr^W!RA_dH5>cYP5)?mY!5qGG)*CIZ>v2O2iD+ zeF3Ev>$O)?I&!nc4aLg$@MD~TqHCoz6X{vT;j3PBzPDqQT=s|wW z=Da2y=`CulzG|(;3a!JJ6u%UQ94(r>4x|yLRP2!nC6`MC*ull8Z30q;%X8y{tIR-o zaAmiNm2hiB#96%eW{yGgH}|<~6-7XmQmLLqr7Lz&ZN;LK#YQ;pd{dmIF_C0qVAx-@ zFoNl>T%lWxFMG1<2QLvDolhbM_@v9f#DiWYiOFNKTf1hgJM`QWW6 zT01yXkAn^DsJ2~V-eduhjd(r zjAm=7B<)1q>SG~%vo29%Cn>MqEC&fGonUTj6b!r*=y!ZqD9 z;QLns{As|RR~)7oUs5uJi2@C8H)m(OkNn7A<;b->0#2rWxim4L?7QRtpxDVTdTYhK zLNxNg?r`Saw5S-^=J~5szZ`7M%o!)n#+EL`z5rKXqgi)KeP4nFC;x>T@$RF}G8dxj z+>st3YAN-d@wqzsgtC=s}6n?)^9>)A$A?uBp=yOH)lvy zx%Z)F9gSwpwHfQAH*-*?1L=Do0Y*cdY3w#M7m;OXwC$08!cqR$>hB-)$_gRvgg0GI zqn=RRl${v4&CVt_D4wU8;fG7DTdUr{w;wa^Uf4*2i`a3Ab7gw6?WL+_+$|Pe*V)<| zulICk*=TJ>tAmQ$j)-c6>6FQtTa| z0+rk9n--~PBFNLKY8SmCN}aU*%{v6oe;A#xSt3vEJ+AA$6HM0}Cz$4*aoQMsUALK!(a5;OjFMU-a~kO=oG&4g$u5r69HCEk_oUMe3TS{I1c zLTo;-X1Qq~Go9Zy=#&rLlF42ddpaE{I<%jVP!03q_(6Zo#ODpS$n9 z2@YD(*2vX?d=h)&kAO&_6qb_33wq?Ii`{QPwm(&nD!lp>hbH89XKW5y)xxni`cg8M zQVK7;n^+c(@82vzpXjso9f>(k=6&$(n>*;^V&z7t{LHRXjR`hv)t0>Q zA~)ff#R3n;9Voq(7}}q9TcX;_$j!dZVVLcML)ccV`3N63odjKYin#1oN%*-$&gGnb zGQ%PpegFYICmMdA(|^MY&3;kN{+`|fd(riak}eUw;&gP*+^K>EFBa9>XZYV75R&Bf zmMfHD)H0DPNg&m5-wB7tEExaZ>8Dqlos2@{4#p@TOGyYa)@nk1E#^(X1bSB7&9x{1 zCJ4XxdEbum1mMYAej?Pg)$EWhHg4Ruds?2Hy0-b)5XV+@K|o@lRY7kgbk#k58{D{P zYKaS?mPz%~;mw0-gqjv_i0hoWV4n#&O)Dt1R%$ZTN_D)dg(%WO4aR!%8f3zXYD>U3 zc9-g&b55b1FSBvy2OF;0pBQ?-Bv*w_k~juPP&Bn0!_Ap$E9{6X7o;>p z6>|;j%w~%jJfgVtG!kaeBF{d{@gg1B-a2JwKtsg?jdRK%Nl;6oTl;;r(YK=gGBZ@YpzA83I+6!_nnsURg|^iWZLV+yw6bj8ou{@9y4E(;dUD9i7jPvMmH7Ge zik4d{yF|Sfd{4_K&TYZQ#ED#*5z$NO|*8gMR{wNQ>02ws9=L_~YW7h@&c zO&oPwD1B_68bLk9@G}ro?XubBK-Zn0$BCKA29GJ6q9f3cOTK3rXsH=|pYBFsHnmVS zHPB4H=4L?Z*{7hM!i*~IH^|Tt(s=6|)A_GxSs~lb6|95OL<>=~%}u;AX%w}*>F)3@ z9(9t};IR_~bU}$>=N$%iGO-+&S{|O3Yjb;jHmAhF-gH`Q;+yWxz<%Oe9

pd9^Ke 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%0D0m+KlK;23;m0yRI47OhL{rlBy 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

;RQ7xu<+r}56WV+ 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

0V#n^vylNcf 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¥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 diff --git a/github_pipeline_observability/images/GitHub Workflows monitoring v.2_tasks.png b/github_pipeline_observability/images/GitHub Workflows monitoring v.2_tasks.png deleted file mode 100644 index 5f8e8b391f891c3d180edf0a93f5613ece480374..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 110109 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 Date: Fri, 24 Jan 2025 13:15:33 +0100 Subject: [PATCH 10/25] Upate of OpenPipeline and Dashboards MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../github.pull_request.json | 297 ++---- .../document-dashboard/github.workflow.json | 100 +- .../openpipeline/events.sdlc.github.json | 892 ++---------------- 3 files changed, 215 insertions(+), 1074 deletions(-) diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json index c5c2469..1fc27dd 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json @@ -5,19 +5,19 @@ "h": 3, "w": 4, "x": 0, - "y": 7 + "y": 4 }, "1": { "h": 3, "w": 4, "x": 4, - "y": 7 + "y": 4 }, "10": { "h": 3, "w": 4, "x": 0, - "y": 10 + "y": 7 }, "11": { "h": 2, @@ -29,97 +29,85 @@ "h": 2, "w": 24, "x": 0, - "y": 18 + "y": 15 }, "13": { "h": 2, "w": 24, "x": 0, - "y": 5 + "y": 2 }, "15": { "h": 6, "w": 24, "x": 0, - "y": 32 + "y": 29 }, "16": { "h": 1, "w": 24, "x": 0, - "y": 31 + "y": 28 }, "17": { "h": 6, "w": 8, "x": 16, - "y": 20 + "y": 17 }, "18": { "h": 6, "w": 8, "x": 16, - "y": 7 + "y": 4 }, "19": { "h": 3, "w": 4, "x": 4, - "y": 10 + "y": 7 }, "2": { "h": 5, "w": 24, "x": 0, - "y": 13 - }, - "20": { - "h": 3, - "w": 4, - "x": 0, - "y": 2 + "y": 10 }, "3": { "h": 3, "w": 4, "x": 0, - "y": 20 + "y": 17 }, "4": { "h": 3, "w": 4, "x": 4, - "y": 23 + "y": 20 }, "5": { "h": 3, "w": 4, "x": 4, - "y": 20 + "y": 17 }, "6": { "h": 5, "w": 24, "x": 0, - "y": 26 + "y": 23 }, "7": { "h": 6, "w": 8, "x": 8, - "y": 7 + "y": 4 }, "8": { "h": 6, "w": 8, "x": 8, - "y": 20 - }, - "9": { - "h": 3, - "w": 4, - "x": 0, - "y": 23 + "y": 17 } }, "settings": {}, @@ -131,7 +119,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time, number, ext.task.repository.target.full_name, ext.task.repository.target.ref, ext.task.repository.source.full_name, ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time, number, vcs.repository.name, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -247,7 +235,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name, ext.task.repository.target.ref, ext.task.repository.source.full_name, ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now()) - toTimestamp(start_time) \n| summarize max(OpenedPrDuration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now()) - toTimestamp(start_time) \n| summarize max(OpenedPrDuration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -379,7 +367,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status), actions = collectArray(ext.task.action) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name, ext.task.repository.target.ref, ext.task.repository.source.full_name, ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\", \"closed\")) \n| filter contains(toString(actions),\"reopened\")\n| filter in(ext.task.repository.target.full_name, $Repository) and in(ext.task.repository.target.ref, $Branch)\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status), actions = collectArray(vcs.change.state) }, by: { task.id, task.name, start_time,number, vcs.repository.name, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"merged\", \"closed\")) \n| filter contains(toString(actions),\"reopened\")\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -510,7 +498,7 @@ "type": "markdown" }, "15": { - "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.2.2", + "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0", "title": "", "type": "markdown" }, @@ -541,7 +529,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, ext.task.repository.target.full_name, ext.task.repository.target.ref, ext.task.repository.source.full_name, ext.task.repository.source.ref, ext.pr.url, vcs.repository.change.id } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fields \nIn_open_status = toTimestamp(now()) - toTimestamp(start_time),\nPR_number = number, \nPR_title = task.name,\nPR_url= ext.pr.url,\nSource_repo = ext.task.repository.source.full_name, \nSource_ref=ext.task.repository.source.ref, \nTarget_repo = ext.task.repository.target.full_name, \nTarget_ref=ext.task.repository.target.ref,\nCreated_at = start_time, GlobalId = vcs.repository.change.id \n| sort In_open_status desc", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time, ext.vcs.change.pull_request.number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url, vcs.change.id } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fields \nIn_open_status = toTimestamp(now()) - toTimestamp(start_time),\nPR = ext.vcs.change.pull_request.number, \nTitle = task.name,\nURL = ext.vcs.change.pull_request.url,\nHeadName = vcs.ref.head.name, \nHeadRevision = vcs.ref.head.revision, \nBaseName = vcs.ref.base.name, \nBaseRevision = vcs.ref.base.revision,\nCreatedAt = start_time, \nGlobalId = vcs.change.id \n| sort In_open_status desc", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -555,9 +543,9 @@ "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { - "categoryAxisLabel": "PR_title,PR_url,Source_repo,Source_ref,Target_repo,Target_ref", + "categoryAxisLabel": "PR_title,Source_repo,Source_ref,Target_repo,Target_ref", "tooltipVariant": "single", - "valueAxisLabel": "In_open_status,PR_number,GlobalId" + "valueAxisLabel": "In_open_status,GlobalId" }, "categoryOverrides": {}, "circleChartSettings": { @@ -674,11 +662,6 @@ } } }, - "20": { - "content": "**Merge Success Rate:** Shows the percentage of pull requests that have been successfully merged out of the total submitted, indicating the overall success rate of PR merges.", - "title": "", - "type": "markdown" - }, "3": { "davis": { "davisVisualization": { @@ -686,7 +669,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -806,7 +789,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| summarize percentile(duration, 50)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.ref.base.name, $Repository) \n| filter in(vcs.ref.base.revision, $Branch)\n| dedup task.id\n| summarize percentile(duration, 50)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -846,22 +829,15 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "percentile(duration, 50)", "displayedFields": [ "Count", "Median", "Avg" ], - "longitude": "percentile(duration, 50)", "value": "Count" }, "histogram": { - "dataMappings": [ - { - "rangeAxis": "", - "valueAxis": "percentile(duration, 50)" - } - ], + "dataMappings": [], "displayedFields": [], "variant": "single" }, @@ -927,7 +903,7 @@ "enabled": false }, "description": "Shows the average time taken to merge pull requests, providing insights into the efficiency of the review and merge process.", - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type==\"change\" \n| filter event.status == \"merged\" \n| filter event.provider==\"github.com\"\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| summarize avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| summarize avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1047,7 +1023,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider ==\"github.com\" \n| sort timestamp asc\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| fields \nMergetAt = end_time,\nDuration = duration, \nNumber = number, \nTitle = task.name,\nUrl= ext.pr.url,\nSourceRepository = ext.task.repository.source.full_name, \nSourceBranch=ext.task.repository.source.ref, \nTargetRepository = ext.task.repository.target.full_name, \nTargetBranch=ext.task.repository.target.ref, \nCreatedAt = start_time, \nGlobalId = vcs.repository.change.id \n| sort Duration desc", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider ==\"github.com\" \n| sort timestamp asc\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| fields \nMergedAt = end_time,\nDuration = duration, \nPR = ext.vcs.change.pull_request.number, \nTitle = task.name,\nURL = ext.vcs.change.pull_request.url,\nHeadName = vcs.ref.head.name, \nHeadRevision = vcs.ref.head.revision, \nBaseName = vcs.ref.base.name, \nBaseRevision = vcs.ref.base.revision, \nCreatedAt = start_time, \nGlobalId = vcs.change.id \n| sort Duration desc", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1063,20 +1039,20 @@ "categoricalBarChartSettings": { "categoryAxis": [ "Title", - "Url", - "SourceRepository", - "SourceBranch", - "TargetRepository", - "TargetBranch" + "HeadName", + "HeadRevision", + "BaseName", + "BaseRevision", + "URL" ], - "categoryAxisLabel": "Title,Url,SourceRepository,SourceBranch,TargetRepository,TargetBranch", + "categoryAxisLabel": "Title,HeadName,HeadRevision,BaseName,BaseRevision,URL", "tooltipVariant": "single", "valueAxis": [ "Duration", - "Number", - "GlobalId" + "GlobalId", + "PR" ], - "valueAxisLabel": "Duration,Number,GlobalId" + "valueAxisLabel": "Duration,GlobalId,PR" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1089,24 +1065,25 @@ "leftAxisValues": [ "Duration" ], - "timestamp": "MergetAt" + "timestamp": "MergedAt" }, "gapPolicy": "connect", "hiddenLegendFields": [ "Duration", "Number", - "GlobalId" + "GlobalId", + "PR" ], "leftYAxisSettings": {}, "pointsDisplay": "auto", "truncationMode": "middle", "valueRepresentation": "absolute", "xAxisIsLabelVisible": false, - "xAxisLabel": "MergetAt", + "xAxisLabel": "MergedAt", "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "MergetAt", + "dimension": "MergedAt", "displayedFields": [ "Duration", "Number", @@ -1120,7 +1097,7 @@ "MergetAt", "GlobalId" ], - "latitude": "Number", + "latitude": "GlobalId", "longitude": "Duration", "value": "Number" }, @@ -1132,18 +1109,15 @@ }, { "rangeAxis": "", - "valueAxis": "Number" + "valueAxis": "GlobalId" }, { "rangeAxis": "", - "valueAxis": "GlobalId" + "valueAxis": "PR" } ], "displayedFields": [ - "Title", - "Url", - "SourceRepository", - "TargetRepository" + "Title" ], "variant": "single" }, @@ -1155,11 +1129,11 @@ }, "displayedFields": [ "Title", - "Url", - "SourceRepository", - "SourceBranch", - "TargetRepository", - "TargetBranch" + "HeadName", + "HeadRevision", + "BaseName", + "BaseRevision", + "URL" ], "legend": { "hidden": false, @@ -1204,7 +1178,9 @@ } }, "thresholds": [], - "tooltip": {}, + "tooltip": { + "showCustomFields": false + }, "valueBoundaries": { "max": "auto", "min": "auto" @@ -1218,7 +1194,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| summarize { statuses = collectArray(event.status) }, by:{ task.id, task.name, start_time, number, ext.task.repository.target.full_name, ext.task.repository.target.ref, ext.task.repository.source.full_name, ext.task.repository.source.ref, ext.pr.url } \n| filter not in(statuses[0],array(\"merged\", \"closed\")) \n| summarize count(), by:{ext.task.repository.target.full_name}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by:{ task.id, task.name, start_time, number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"merged\", \"closed\")) \n| summarize count(), by:{vcs.ref.base.name}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1233,8 +1209,14 @@ "autoSelectVisualization": false, "chartSettings": { "categoricalBarChartSettings": { - "categoryAxisLabel": "ext.task.repository.target.full_name", + "categoryAxis": [ + "vcs.ref.base.name" + ], + "categoryAxisLabel": "vcs.ref.base.name", "tooltipVariant": "single", + "valueAxis": [ + "count()" + ], "valueAxisLabel": "count()" }, "categoryOverrides": {}, @@ -1265,8 +1247,12 @@ "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue-moss", - "dataMappings": {}, - "displayedFields": [], + "dataMappings": { + "value": "count()" + }, + "displayedFields": [ + "vcs.ref.base.name" + ], "legend": { "hidden": false, "position": "auto" @@ -1324,7 +1310,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider ==\"github.com\" \n| sort timestamp asc\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| summarize count = count(), by:{vcs.repository.ref.name}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| sort timestamp asc\n| dedup task.id\n| summarize count = count(), by:{vcs.repository.name}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1339,9 +1325,9 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "vcs.repository.ref.name" + "vcs.repository.name" ], - "categoryAxisLabel": "vcs.repository.ref.name", + "categoryAxisLabel": "vcs.repository.name", "tooltipVariant": "single", "valueAxis": [ "count" @@ -1365,9 +1351,9 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "vcs.repository.ref.name", + "dimension": "vcs.repository.name", "displayedFields": [ - "vcs.repository.ref.name", + "vcs.repository.name", "Count" ], "longitude": "count", @@ -1381,7 +1367,7 @@ } ], "displayedFields": [ - "vcs.repository.ref.name" + "vcs.repository.name" ], "variant": "single" }, @@ -1392,7 +1378,7 @@ "value": "count" }, "displayedFields": [ - "vcs.repository.ref.name" + "vcs.repository.name" ], "legend": { "hidden": false, @@ -1441,138 +1427,11 @@ "min": "auto" } } - }, - "9": { - "davis": { - "davisVisualization": { - "isAvailable": true - }, - "enabled": false - }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\"\n| filter event.provider == \"github.com\"\n| filter in(ext.task.repository.target.full_name, $Repository) \n| filter in(ext.task.repository.target.ref, $Branch)\n| dedup task.id\n| summarize sum(ext.task.merge.commits)", - "querySettings": { - "defaultSamplingRatio": 10, - "defaultScanLimitGbytes": 500, - "enableSampling": false, - "maxResultMegaBytes": 1, - "maxResultRecords": 1000 - }, - "title": "Merged commits", - "type": "data", - "visualization": "singleValue", - "visualizationSettings": { - "chartSettings": { - "categoricalBarChartSettings": { - "categoryAxis": [ - "sum(ext.task.merge.commits)" - ], - "categoryAxisLabel": "sum(ext.task.merge.commits)", - "tooltipVariant": "single", - "valueAxis": [ - "sum(ext.task.merge.commits)" - ], - "valueAxisLabel": "sum(ext.task.merge.commits)" - }, - "categoryOverrides": {}, - "circleChartSettings": { - "groupingThresholdType": "relative", - "groupingThresholdValue": 0, - "valueType": "relative" - }, - "curve": "linear", - "gapPolicy": "connect", - "legend": { - "hidden": true - }, - "pointsDisplay": "auto", - "truncationMode": "middle", - "xAxisScaling": "analyzedTimeframe" - }, - "dataMapping": { - "displayedFields": [], - "longitude": "sum(ext.task.merge.commits)", - "value": "SumCommits" - }, - "histogram": { - "dataMappings": [ - { - "rangeAxis": "", - "valueAxis": "sum(ext.task.merge.commits)" - } - ], - "displayedFields": [], - "variant": "single" - }, - "honeycomb": { - "colorMode": "color-palette", - "colorPalette": "blue", - "dataMappings": {}, - "displayedFields": [], - "legend": { - "hidden": false, - "position": "auto" - }, - "shape": "hexagon" - }, - "icon": { - "icon": "", - "showIcon": false - }, - "label": { - "label": "SumCommits", - "showLabel": false - }, - "singleValue": { - "alignment": "center", - "autoscale": true, - "colorThresholdTarget": "value", - "label": "SumCommits", - "prefixIcon": "", - "recordField": "sum(ext.task.merge.commits)", - "showLabel": false, - "sparklineSettings": {}, - "trend": { - "isVisible": true, - "trendType": "auto" - } - }, - "table": { - "columnTypeOverrides": [], - "columnWidths": {}, - "enableSparklines": false, - "hiddenColumns": [], - "lineWrapIds": [], - "linewrapEnabled": false, - "monospacedFontColumns": [], - "monospacedFontEnabled": false, - "rowDensity": "condensed" - }, - "thresholds": [], - "tooltip": { - "showCustomFields": false - }, - "unitsOverrides": [ - { - "added": 1737375708272, - "baseUnit": "none", - "decimals": 0, - "delimiter": false, - "displayUnit": null, - "identifier": "sum(ext.task.merge.commits)", - "suffix": "", - "unitCategory": "unspecified" - } - ], - "valueBoundaries": { - "max": "auto", - "min": "auto" - } - } } }, "variables": [ { - "input": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\" \n| summarize distinctTargetRepositories = collectDistinct(ext.task.repository.target.full_name)\n| expand distinctTargetRepositories\n| sort distinctTargetRepositories", + "input": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\" \n| summarize distinctRepositories = collectDistinct(vcs.repository.name)\n| expand distinctRepositories\n| sort distinctRepositories", "key": "Repository", "multiple": false, "type": "query", @@ -1582,7 +1441,7 @@ "defaultValue": [ "main" ], - "input": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| summarize distinctTargetRef = collectDistinct(ext.task.repository.target.ref)\n| expand distinctTargetRef\n| sort distinctTargetRef", + "input": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| summarize distinctBase = collectDistinct(vcs.ref.base.name)\n| expand distinctBase\n| sort distinctBase", "key": "Branch", "multiple": true, "type": "query", diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json index fcc8141..756b3ee 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json @@ -185,7 +185,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count(), by: {cicd.pipeline.run.outcome}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize count(), by: {cicd.pipeline.run.outcome}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -331,7 +331,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name, cicd.pipeline.name, cicd.pipeline.run.trigger\n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -459,7 +459,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize median(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name, cicd.pipeline.name, cicd.pipeline.run.trigger, duration\n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize median(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -585,7 +585,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count(), by: {ext.pipeline.run.trigger}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize count(), by: {cicd.pipeline.run.trigger}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -607,9 +607,9 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "ext.pipeline.run.trigger" + "cicd.pipeline.run.trigger" ], - "categoryAxisLabel": "ext.pipeline.run.trigger", + "categoryAxisLabel": "cicd.pipeline.run.trigger", "tooltipVariant": "single", "valueAxis": [ "count()" @@ -652,9 +652,9 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "ext.pipeline.run.trigger", + "dimension": "cicd.pipeline.run.trigger", "displayedFields": [ - "ext.pipeline.run.trigger", + "cicd.pipeline.run.trigger", "count()" ], "longitude": "count()", @@ -668,7 +668,7 @@ } ], "displayedFields": [ - "ext.pipeline.run.trigger" + "cicd.pipeline.run.trigger" ], "variant": "single" }, @@ -679,7 +679,7 @@ "value": "count()" }, "displayedFields": [ - "ext.pipeline.run.trigger" + "cicd.pipeline.run.trigger" ], "legend": { "hidden": false, @@ -736,7 +736,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter ext.pipeline.run.attempt \u003e 1 \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize count() ", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter cicd.pipeline.run.attempt \u003e 1 \n| fields vcs.repository.name, cicd.pipeline.name, cicd.pipeline.run.trigger\n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize count() ", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -912,7 +912,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type== \"build\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fieldsAdd steps_array = toArray(ext.task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.task.name = task.name\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(step.conclusion==\"failure\")) / toDouble(count())*100), by: {step.name, step.task.name} \n| filter failureRate \u003e 0 \n| sort failureRate desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type== \"build\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fieldsAdd steps_array = toArray(task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.name, cicd.pipeline.run.trigger \n | filter in(vcs.repository.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(cicd.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.task.name = task.name\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(step.conclusion==\"failure\")) / toDouble(count())*100), by: {step.name, step.task.name} \n| filter failureRate \u003e 0 \n| sort failureRate desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1013,7 +1013,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type== \"build\"\n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| fieldsAdd steps_array=toArray(ext.task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.task.name = task.name\n| summarize percentile(step.duration,50), alias:Median ,by:{step.name, alias: StepName, step.task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type== \"build\"\n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.name, cicd.pipeline.run.trigger \n | filter in(vcs.repository.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(cicd.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| fieldsAdd steps_array=toArray(task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.task.name = task.name\n| summarize percentile(step.duration,50), alias:Median ,by:{step.name, alias: StepName, step.task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1150,7 +1150,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\"\n| filter event.type == \"build\"\n| filter event.status == \"finished\"\n| filter event.provider == \"github.com\"\n| join [\n fetch events \n | filter event.category == \"pipeline\" \n | filter event.status == \"finished\" \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.type==\"run\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize Count=count(), by:{ext.task.runner.name} \n| sort Count desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\"\n| filter event.type == \"build\"\n| filter event.status == \"finished\"\n| filter event.provider == \"github.com\"\n| join [\n fetch events \n | filter event.category == \"pipeline\" \n | filter event.status == \"finished\" \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.type==\"run\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.name, cicd.pipeline.run.trigger \n | filter in(vcs.repository.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(cicd.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize Count=count(), by:{task.runner.name} \n| sort Count desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1165,9 +1165,9 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "ext.task.runner.name" + "task.runner.name" ], - "categoryAxisLabel": "ext.task.runner.name", + "categoryAxisLabel": "task.runner.name", "colorPaletteMode": "multi-color", "tooltipVariant": "single", "valueAxis": [ @@ -1192,9 +1192,9 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "ext.task.runner.name", + "dimension": "task.runner.name", "displayedFields": [ - "ext.task.runner.name", + "task.runner.name", "Count" ], "longitude": "Count", @@ -1208,7 +1208,7 @@ } ], "displayedFields": [ - "ext.task.runner.name" + "task.runner.name" ], "variant": "single" }, @@ -1219,7 +1219,7 @@ "value": "Count" }, "displayedFields": [ - "ext.task.runner.name" + "task.runner.name" ], "legend": { "hidden": false, @@ -1288,7 +1288,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"started\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger) \n| fields start_time, cicd.pipeline.run.id, ext.pipeline.run.attempt\n| joinNested jobs=[\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"task\" \n | filter event.type ==\"build\" \n | filter event.status == \"started\" \n | filter event.provider==\"github.com\" \n | fields cicd.pipeline.run.id, ext.task.run.attempt, start_time \n | sort start_time asc ],\n on: {cicd.pipeline.run.id,left[ext.pipeline.run.attempt] == right[ext.task.run.attempt]} \n| fieldsAdd queueTime = jobs[0][start_time] - start_time ", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"started\" \n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger) \n| fields start_time, cicd.pipeline.run.id, cicd.pipeline.run.attempt\n| joinNested jobs=[\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"task\" \n | filter event.type ==\"build\" \n | filter event.status == \"started\" \n | filter event.provider==\"github.com\" \n | fields cicd.pipeline.run.id, task.run.attempt, start_time \n | sort start_time asc ],\n on: {cicd.pipeline.run.id,left[cicd.pipeline.run.attempt] == right[task.run.attempt]} \n| fieldsAdd queueTime = jobs[0][start_time] - start_time ", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1305,10 +1305,10 @@ "categoricalBarChartSettings": { "categoryAxis": [ "cicd.pipeline.run.id", - "ext.pipeline.run.attempt", + "cicd.pipeline.run.attempt", "queueTime" ], - "categoryAxisLabel": "cicd.pipeline.run.id,ext.pipeline.run.attempt,queueTime", + "categoryAxisLabel": "cicd.pipeline.run.id,cicd.pipeline.run.attempt,queueTime", "categoryAxisTickLayout": "horizontal", "colorPaletteMode": "multi-color", "groupMode": "stacked", @@ -1317,10 +1317,10 @@ "tooltipVariant": "single", "valueAxis": [ "cicd.pipeline.run.id", - "ext.pipeline.run.attempt", + "cicd.pipeline.run.attempt", "queueTime" ], - "valueAxisLabel": "cicd.pipeline.run.id,ext.pipeline.run.attempt,queueTime" + "valueAxisLabel": "cicd.pipeline.run.id,cicd.pipeline.run.attempt,queueTime" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1339,7 +1339,7 @@ "gapPolicy": "connect", "hiddenLegendFields": [ "cicd.pipeline.run.id", - "ext.pipeline.run.attempt", + "cicd.pipeline.run.attempt", "timeToStart", "queueTime" ], @@ -1363,10 +1363,10 @@ "displayedFields": [ "start_time", "cicd.pipeline.run.id", - "ext.pipeline.run.attempt", + "cicd.pipeline.run.attempt", "timeToStart" ], - "latitude": "ext.pipeline.run.attempt", + "latitude": "cicd.pipeline.run.attempt", "longitude": "cicd.pipeline.run.id", "value": "cicd.pipeline.run.id" }, @@ -1379,7 +1379,7 @@ }, { "rangeAxis": "", - "valueAxis": "ext.pipeline.run.attempt" + "valueAxis": "cicd.pipeline.run.attempt" }, { "rangeAxis": "", @@ -1454,7 +1454,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name, cicd.pipeline.name, cicd.pipeline.run.trigger, duration\n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1605,7 +1605,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\" \n| filter event.type == \"build\"\n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter task.outcome != \"skipped\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize percentile(duration,50), alias:Median ,by:{task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\" \n| filter event.type == \"build\"\n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter task.outcome != \"skipped\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.name, cicd.pipeline.run.trigger \n | filter in(vcs.repository.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(cicd.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize percentile(duration,50), alias:Median ,by:{task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1733,7 +1733,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, duration\n| filter in(vcs.repository.ref.name, $Repository) \n| summarize avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name, duration\n| filter in(vcs.repository.name, $Repository) \n| summarize avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1858,7 +1858,7 @@ "type": "markdown" }, "33": { - "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.2.2", + "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0", "title": "", "type": "markdown" }, @@ -1869,7 +1869,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name\n| filter in(vcs.repository.ref.name, $Repository) \n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name\n| filter in(vcs.repository.name, $Repository) \n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1997,7 +1997,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize successful = countIf(cicd.pipeline.run.outcome == \"success\")", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name, cicd.pipeline.name, cicd.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize successful = countIf(cicd.pipeline.run.outcome == \"success\")", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -2171,7 +2171,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize failed = countIf(cicd.pipeline.run.outcome == \"failure\")", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name, cicd.pipeline.name, cicd.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize failed = countIf(cicd.pipeline.run.outcome == \"failure\")", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -2345,7 +2345,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize other = countIf(isNull(cicd.pipeline.run.outcome) or (cicd.pipeline.run.outcome != \"failure\" and cicd.pipeline.run.outcome != \"success\"))", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name, cicd.pipeline.name, cicd.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize other = countIf(isNull(cicd.pipeline.run.outcome) or (cicd.pipeline.run.outcome != \"failure\" and cicd.pipeline.run.outcome != \"success\"))", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -2519,7 +2519,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.ref.name, cicd.pipeline.name, ext.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize failureRate = if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name, cicd.pipeline.name, cicd.pipeline.run.trigger, cicd.pipeline.run.outcome\n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow)\n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize failureRate = if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -2692,7 +2692,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter cicd.pipeline.run.outcome != \"canceled\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize percentile(duration,50), alias:Median ,by:{cicd.pipeline.name, alias: name} \n| sort Median desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter cicd.pipeline.run.outcome != \"canceled\" \n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize percentile(duration,50), alias:Median ,by:{cicd.pipeline.name, alias: name} \n| sort Median desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -2818,7 +2818,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| summarize failureRate = if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100), by: {vcs.repository.ref.name,cicd.pipeline.name }\n| filter failureRate\u003e0 \n| sort failureRate desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| summarize failureRate = if(count() == 0, 0, else: toDouble(countIf(cicd.pipeline.run.outcome==\"failure\")) / toDouble(count())*100), by: {vcs.repository.name,cicd.pipeline.name }\n| filter failureRate\u003e0 \n| sort failureRate desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -2833,10 +2833,10 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "vcs.repository.ref.name", + "vcs.repository.name", "cicd.pipeline.name" ], - "categoryAxisLabel": "vcs.repository.ref.name,cicd.pipeline.name", + "categoryAxisLabel": "vcs.repository.name,cicd.pipeline.name", "colorPaletteMode": "multi-color", "tooltipVariant": "single", "valueAxis": [ @@ -2862,7 +2862,7 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "vcs.repository.ref.name", + "dimension": "vcs.repository.name", "displayedFields": [], "longitude": "failureRate", "value": "failureRate" @@ -2875,7 +2875,7 @@ } ], "displayedFields": [ - "vcs.repository.ref.name", + "vcs.repository.name", "cicd.pipeline.name" ], "variant": "single" @@ -2887,7 +2887,7 @@ "value": "failureRate" }, "displayedFields": [ - "vcs.repository.ref.name", + "vcs.repository.name", "cicd.pipeline.name" ], "legend": { @@ -2957,7 +2957,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.ref.name, ext.pipeline.run.trigger \n | filter in(vcs.repository.ref.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(ext.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(task.outcome==\"failure\")) / toDouble(count())*100), by: task.name \n| filter failureRate\u003e0 \n| sort failureRate desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.name, cicd.pipeline.run.trigger \n | filter in(vcs.repository.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(cicd.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(task.outcome==\"failure\")) / toDouble(count())*100), by: task.name \n| filter failureRate\u003e0 \n| sort failureRate desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -3068,7 +3068,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.ref.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(ext.pipeline.run.trigger, $Trigger)\n| fields \nDuration = duration,\nName = cicd.pipeline.name,\nStatus = cicd.pipeline.run.outcome,\nRun = cicd.pipeline.run.url.full,\nAttempts = ext.pipeline.run.attempt,\nTrigger = ext.pipeline.run.trigger,\nStart = start_time,\nEnd = end_time,\nRepository = vcs.repository.ref.name \n| sort Duration desc \n", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger)\n| fields \nDuration = duration,\nName = cicd.pipeline.name,\nStatus = cicd.pipeline.run.outcome,\nRun = cicd.pipeline.run.url.full,\nAttempts = cicd.pipeline.run.attempt,\nTrigger = cicd.pipeline.run.trigger,\nStart = start_time,\nEnd = end_time,\nRepository = vcs.repository.name \n| sort Duration desc \n", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -3236,7 +3236,7 @@ "defaultValue": [ "{{ .extractedIDs.id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05 }}*" ], - "input": "fetch events\n| filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.type == \"run\"\n| summarize distinctRepositories = collectDistinct(vcs.repository.ref.name)\n| expand distinctRepositories\n| sort distinctRepositories", + "input": "fetch events\n| filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.type == \"run\"\n| summarize distinctRepositories = collectDistinct(vcs.repository.name)\n| expand distinctRepositories\n| sort distinctRepositories", "key": "Repository", "multiple": true, "type": "query", @@ -3246,7 +3246,7 @@ "defaultValue": [ "{{ .extractedIDs.id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05 }}*" ], - "input": "fetch events\n| filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.type == \"run\"\n| filter in(vcs.repository.ref.name, $Repository)\n| summarize distinctWorkflows = collectDistinct(cicd.pipeline.name)\n| expand distinctWorkflows\n| sort distinctWorkflows", + "input": "fetch events\n| filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.type == \"run\"\n| filter in(vcs.repository.name, $Repository)\n| summarize distinctWorkflows = collectDistinct(cicd.pipeline.name)\n| expand distinctWorkflows\n| sort distinctWorkflows", "key": "Workflow", "multiple": true, "type": "query", @@ -3256,7 +3256,7 @@ "defaultValue": [ "{{ .extractedIDs.id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05 }}*" ], - "input": "fetch events\n| filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.type == \"run\"\n| summarize distinctTriggers = collectDistinct(ext.pipeline.run.trigger)\n| expand distinctTriggers\n| sort distinctTriggers", + "input": "fetch events\n| filter event.category == \"pipeline\" and event.status == \"finished\" and event.provider==\"github.com\" and event.type == \"run\"\n| summarize distinctTriggers = collectDistinct(cicd.pipeline.run.trigger)\n| expand distinctTriggers\n| sort distinctTriggers", "key": "Trigger", "multiple": true, "type": "query", diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json index eb95d01..4f38819 100644 --- a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json +++ b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json @@ -24,7 +24,7 @@ { "builtin": false, "description": "Set default SDLC and pipeline properties", - "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\", // todo: needs to be changed to current version\nevent.provider = \"github.com\",\nevent.category = \"pipeline\",\nevent.type = \"run\"", + "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"0.1.0\",\nevent.provider = \"github.com\",\nevent.category = \"pipeline\",\nevent.type = \"run\"", "editable": true, "enabled": true, "id": "github:sets_sdlc_pipeline_properties_9061", @@ -35,7 +35,7 @@ { "builtin": false, "description": "Set default SDLC and task properties", - "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\", // todo: needs to be changed to current version\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"build\"", + "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"0.1.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"build\"", "editable": true, "enabled": true, "id": "github:sets_sdlc_task_properties_1775", @@ -46,7 +46,7 @@ { "builtin": false, "description": "Set default SDLC properties and type to change", - "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\", // todo: needs to be changed to current version\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"change\"", + "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"0.1.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"change\"", "editable": true, "enabled": true, "id": "github:sets_default_and_type_change_2135", @@ -56,18 +56,7 @@ }, { "builtin": false, - "description": "Set default SDLC properties and type to commit", - "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"1.0.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"commit\"", - "editable": true, - "enabled": true, - "id": "github:sets_default_and_type_commit_6181", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "Clean up", + "description": "Cleanup", "editable": true, "enabled": false, "fields": [ @@ -77,11 +66,12 @@ "sender", "workflow", "workflow_job", - "workflow_run" + "workflow_run", + "pull_request" ], "id": "github:clean_up_github_properties_8323", - "matcher": "isNotNull(workflow_run) or isNotNull(workflow_job)", - "sampleData": null, + "matcher": "isNotNull(workflow_run) or isNotNull(workflow_job) or isNotNull(pull_request)", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "fieldsRemove" } ], @@ -90,54 +80,6 @@ }, "segment": "github" }, - { - "basePath": "/platform/ingest/custom/events.sdlc", - "builtin": false, - "defaultBucket": "default_events", - "displayName": "ArgoCD", - "editable": true, - "enabled": true, - "processors": [ - { - "builtin": false, - "description": "Set event.id to a unique identifier", - "dqlScript": "fieldsAdd event.id = hashSha1(concat(toString(toLong(now())), toString(RANDOM())))", - "editable": true, - "enabled": true, - "id": "argocd:sets_event_id_to_a_unique_identifier_9364", - "matcher": "isNull(event.id)", - "sampleData": "{\n \"action\": \"completed\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "Set default SDLC properties and type deployment", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{apiVersion, kind} \n| fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nif(isNull(apiVersion), \"1.0.0\", else: apiVersion), alias: event.version, // todo: needs to be changed to current version\nif(isNull(kind), \"task\", else: lower(kind)), alias: event.category, \nevent.type = \"deployment\", \nevent.provider = \"argocd\"\n| fieldsRemove record_json, apiVersion, kind", - "editable": true, - "enabled": true, - "id": "argocd:sets_application_properties_6951", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "Set task.(id|name)", - "dqlScript": "fieldsAdd \ntask.id = hashSha1(concat(toString(toLong(now())), toString(RANDOM()))),\ntask.name = \"ArgoCD Deployment\"", - "editable": true, - "enabled": true, - "id": "argocd:sets_task_id_and_name_4198", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n }\n }\n}", - "type": "dql" - } - ], - "routing": { - "pipelineId": "argocd:application_1194", - "type": "static" - }, - "segment": "argocd" - }, { "basePath": "/platform/ingest/v1/events.sdlc", "builtin": true, @@ -373,8 +315,8 @@ }, { "builtin": false, - "description": "cicd.pipeline.id, cicd.pipeline.url.full, cicd.pipeline.name", - "dqlScript": "parse workflow, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, name, html_url} \n| fieldsRename cicd.pipeline.id = id, cicd.pipeline.name = name, cicd.pipeline.url.full = html_url\n| fieldsRemove record_json", + "description": "cicd.pipeline.id | name | url.full", + "dqlScript": "parse workflow, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, name, html_url} \n| fieldsRename cicd.pipeline.id = id\n| fieldsRename cicd.pipeline.name = name\n| fieldsRename cicd.pipeline.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:workflow:pipeline.id_pipeline.name_pipeline.url_6138", @@ -384,8 +326,8 @@ }, { "builtin": false, - "description": "cicd.pipeline.run.id, cicd.pipeline.run.url.full", - "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, html_url} \n| fieldsRename cicd.pipeline.run.id = id, cicd.pipeline.run.url.full = html_url\n| fieldsRemove record_json", + "description": "cicd.pipeline.run.id | url.full", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, html_url} \n| fieldsRename cicd.pipeline.run.id = id\n| fieldsRename cicd.pipeline.run.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:workflow:pipeline.run.id_pipeline.run.url_5049", @@ -395,8 +337,8 @@ }, { "builtin": false, - "description": "ext.pipeline.run.trigger", - "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{event} \n| fieldsRename ext.pipeline.run.trigger = event //todo: change to cicd.pipeline.run.trigger\n| fieldsRemove record_json", + "description": "cicd.pipeline.run.trigger | run_attempt", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{event, run_attempt} \n| fieldsRename cicd.pipeline.run.trigger = event\n| fieldsRename cicd.pipeline.run.attempt = run_attempt\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:workflow:ext.pipeline.run.trigger_9871", @@ -417,43 +359,21 @@ }, { "builtin": false, - "description": "ext.pipeline.run.attempt", - "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_attempt} \n| fieldsRename ext.pipeline.run.attempt = run_attempt //todo: change to cicd.pipeline.run.attempt\n| fieldsRemove record_json", - "editable": true, - "enabled": true, - "id": "github:workflow:ext.pipeline.run.attempt_6964", - "matcher": "isNotNull(workflow_run) ", - "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "vcs.repository.ref.name", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name //TODO: should be vcs.repository.full.name\n| fieldsRemove record_json", + "description": "vcs.repository.name | url.full", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name, html_url} \n| fieldsRename vcs.repository.name = full_name\n| fieldsRename vcs.repository.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:workflow:vcs.repository.ref.name_4133", "matcher": "isNotNull(repository)", - "sampleData": null, + "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, { "builtin": false, - "description": "vcs.repository.url.full", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url} \n| fieldsRename vcs.repository.url.full = html_url", + "description": "vcs.ref.head.revision | name", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head_branch, head_sha} \n| fieldsRename vcs.ref.head.revision = head_sha\n| fieldsRename vcs.ref.head.name = head_branch\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:workflow:vcs.repository.url.full_3802", - "matcher": "isNotNull(repository)", - "sampleData": null, - "type": "dql" - }, - { - "builtin": false, - "description": "vcs.repository.ref.name | revision", - "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nparse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head_branch, head_sha} \n| fieldsRename ext.pipeline.head_branch = head_branch // vcs.ref.head.name.full\n| fieldsRename ext.pipeline.head_sha = head_sha // vcs.ref.head.revision\n| fieldsRemove record_json", - "editable": true, - "enabled": false, "id": "github:workflow:ext.pipeline.head_branch_sha_2706", "matcher": "isNotNull(workflow_run) ", "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", @@ -461,7 +381,7 @@ }, { "builtin": false, - "description": "Clean up", + "description": "Cleanup", "dqlScript": "fieldsRemove action, workflow_run, workflow, repository, organization, sender, installation", "editable": true, "enabled": true, @@ -616,19 +536,19 @@ }, { "builtin": false, - "description": "cicd.pipeline.run.id, task.id, task.name", - "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_id, id, name} \n| fieldsRename cicd.pipeline.run.id = run_id, task.id = id, task.name = name\n| fieldsRemove record_json", + "description": "cicd.pipeline.run.id, task.id | name", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_id, id, name} \n| fieldsRename cicd.pipeline.run.id = run_id\n| fieldsRename task.id = id\n| fieldsRename task.name = name\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:job:pipeline.run.id_task.id_4478", "matcher": "isNotNull(workflow_job)", - "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n }", + "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" }, { "builtin": false, - "description": "ext.task.run.attempt", - "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_attempt} \n| fieldsRename ext.task.run.attempt = run_attempt //todo: change to task.run.attempt\n| fieldsRemove record_json", + "description": "task.run.attempt", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_attempt} \n| fieldsRename task.run.attempt = run_attempt\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:job:ext.task.run.attempt_7991", @@ -636,6 +556,17 @@ "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\"\n }\n}", "type": "dql" }, + { + "builtin": false, + "description": "task.steps | labels", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{steps, labels} \n| fieldsRename task.steps = steps\n| fieldsRename task.labels = labels\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:ext.task.steps_6131", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", + "type": "dql" + }, { "builtin": false, "description": "task.outcome", @@ -649,41 +580,30 @@ }, { "builtin": false, - "description": "vcs.repository.ref.name", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name //TODO: should be vcs.repository.full.name\n| fieldsRemove record_json", + "description": "vcs.ref.head.revision | name", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head_branch, head_sha} \n| fieldsRename vcs.ref.head.revision = head_sha\n| fieldsRename vcs.ref.head.name = head_branch\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:job:vcs.repository.ref.name_8247", - "matcher": "isNotNull(repository)", - "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "id": "processor_vcs.ref.head.revision___name_5064", + "matcher": "isNotNull(workflow_job)", + "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" }, { "builtin": false, - "description": "vcs.repository.url.full", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url} \n| fieldsRename vcs.repository.url.full = html_url\n| fieldsRemove record_json", + "description": "vcs.repository.name | url.full", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name, html_url} \n| fieldsRename vcs.repository.name = full_name\n| fieldsRename vcs.repository.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:job:vcs.repository.url.full_1476", + "id": "github:job:vcs.repository.ref.name_8247", "matcher": "isNotNull(repository)", "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, { "builtin": false, - "description": "ext.task.steps", - "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{steps} \n| fieldsRename ext.task.steps = steps //TODO: change to task.steps\n| fieldsRemove record_json", - "editable": true, - "enabled": true, - "id": "github:job:ext.task.steps_6131", - "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.task.runner.name, ext.task.runner.group.name", - "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{runner_name, runner_group_name} \n| fieldsRename ext.task.runner.name = runner_name\n| fieldsRename ext.task.runner.group.name = runner_group_name\n| fieldsRemove record_json", + "description": "task.runner.name | group.name", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{runner_name, runner_group_name} \n| fieldsRename task.runner.name = runner_name\n| fieldsRename task.runner.group.name = runner_group_name\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:job:ext.task.runner.name_ext.task.runner.group.name_3013", @@ -693,40 +613,7 @@ }, { "builtin": false, - "description": "ext.task.labels", - "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{labels}\n| fieldsRename ext.task.labels = labels\n| fieldsRemove record_json ", - "editable": true, - "enabled": false, - "id": "github:job:ext.task.labels_3178", - "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "vcs.repository.properties", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{custom_properties} \n| fieldsRename vcs.repository.properties = custom_properties\n| fieldsRemove record_json", - "editable": true, - "enabled": false, - "id": "github:job:vcs.repository.properties_5603", - "matcher": "isNotNull(repository)", - "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "vcs.repository.topics", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{topics} \n| fieldsRename vcs.repository.topics = topics\n| fieldsRemove record_json", - "editable": true, - "enabled": false, - "id": "github:job:vcs.repository.topics_9776", - "matcher": "isNotNull(repository)", - "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "Clean up", + "description": "Cleanup", "dqlScript": "fieldsRemove action, workflow_job, repository, organization, sender, installation", "editable": true, "enabled": true, @@ -881,8 +768,8 @@ }, { "builtin": false, - "description": "task.id, task.name", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename task.id = id, task.name = title\n| fieldsRemove record_json", + "description": "task.id | name", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename task.id = id\n| fieldsRename task.name = title\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:pull-request:task.id_8340", @@ -892,123 +779,68 @@ }, { "builtin": false, - "description": "task.outcome", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged} \n| fieldsAdd if(merged == true, \"Success\"), alias: task.outcome\n| fieldsRemove record_json, merged, action", - "editable": true, - "enabled": true, - "id": "github:pull-request:task.outcome_6376", - "matcher": "isNotNull(pull_request) and action == \"closed\"", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "vcs.repository.change.id, vcs.repository.change.title", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename vcs.repository.change.id = id, vcs.repository.change.title = title\n| fieldsRemove record_json", + "description": "task.labels", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{labels}\n| fieldsAdd task.labels = toArray(labels)\n| fieldsRemove record_json, labels", "editable": true, "enabled": true, - "id": "github:pull-request:pull_request.id_pull_request.number_pull_request.name_4660", + "id": "github:pull-request:ext.task.labels_8497", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "vcs.repository.ref.name", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name} \n| fieldsRename vcs.repository.ref.name = full_name //TODO: should be vcs.repository.full.name\n| fieldsRemove record_json", - "editable": true, - "enabled": true, - "id": "github:pull-request:vcs.repository.ref.name_9152", - "matcher": "isNotNull(repository)", - "sampleData": null, + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { "builtin": false, - "description": "vcs.repository.url.full", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url} \n| fieldsRename vcs.repository.url.full = html_url", + "description": "task.outcome", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged} \n| fieldsAdd if(merged == true, \"Success\"), alias: task.outcome\n| fieldsRemove record_json, merged, action", "editable": true, "enabled": true, - "id": "github:pull-request:vcs.repository.url.full_5151", - "matcher": "isNotNull(repository)", - "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", + "id": "github:pull-request:task.outcome_6376", + "matcher": "isNotNull(pull_request) and action == \"closed\"", + "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { "builtin": false, - "description": "vcs.repository.ref.revision", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merge_commit_sha} \n| fieldsRename vcs.repository.ref.revision = merge_commit_sha //TODO: to be double checked after VCS alignment. \n| fieldsRemove record_json", + "description": "vcs.change.id | title | state", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename vcs.change.id = id\n| fieldsRename vcs.change.title = title\n| fieldsAdd action, alias: vcs.change.state\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:pull-request:vcs.repository.ref.revision_9671", + "id": "github:pull-request:pull_request.id_pull_request.number_pull_request.name_4660", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { "builtin": false, - "description": "vcs.repository.ref.type", - "dqlScript": "fieldsAdd \"tbd:branch vs tag\", alias: vcs.repository.ref.type //TODO: to be double checked after VCS alignment. ", + "description": "vcs.repository.name | url.full", + "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name, html_url} \n| fieldsRename vcs.repository.name = full_name\n| fieldsRename vcs.repository.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:pull-request:vcs.repository.ref.type_3064", + "id": "github:pull-request:vcs.repository.ref.name_9152", "matcher": "isNotNull(repository)", - "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.task.labels", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{labels}\n| fieldsAdd ext.task.labels=toArray(labels)\n//| expand ext.task.labels\n| fieldsRemove record_json, labels", - "editable": true, - "enabled": false, - "id": "github:pull-request:ext.task.labels_8497", - "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, { "builtin": false, - "description": "ext.task.repository.source.(full_name|name|ref)", - "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nparse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head}\n| fieldsAdd head[repo][full_name], alias: ext.task.repository.source.full_name\n| fieldsAdd head[repo][name], alias: ext.task.repository.source.name\n| fieldsAdd head[ref], alias: ext.task.repository.source.ref\n| fieldsRemove record_json, head", + "description": "vcs.ref.head.name | revision", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head}\n| fieldsAdd head[ref], alias: vcs.ref.head.name\n| fieldsAdd head[sha], alias: vcs.ref.head.revision\n| fieldsRemove record_json, head", "editable": true, "enabled": true, "id": "github:pull-request:ext.task.repository.source_8853", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"head\": {\n \"label\": \"github-org:github-user-patch-7\",\n \"ref\": \"github-user-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/github-org/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:github-org/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/github-org/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", + "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"head\": {\n \"label\": \"github-org:github-user-patch-7\",\n \"ref\": \"github-user-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/github-org/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:github-org/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/github-org/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", "type": "dql" }, { "builtin": false, - "description": "ext.task.repository.target.(full_name|name|ref)", - "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nparse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{base}\n| fieldsAdd base[repo][full_name], alias: ext.task.repository.target.full_name\n| fieldsAdd base[repo][name], alias: ext.task.repository.target.name\n| fieldsAdd base[ref], alias: ext.task.repository.target.ref\n| fieldsRemove record_json, base", + "description": "vcs.ref.base.name | revision", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{base}\n| fieldsAdd base[ref], alias: vcs.ref.base.name\n| fieldsAdd base[sha], alias: vcs.ref.base.revision\n| fieldsRemove record_json, base", "editable": true, "enabled": true, "id": "github:pull-request:ext.task.repository.target._full_name_name_ref_9238", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"base\": {\n \"label\": \"github-org:github-user-patch-7\",\n \"ref\": \"github-user-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/github-org/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:github-org/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/github-org/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.task.merger.name", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged_by}\n| fieldsAdd merged_by[login], alias: ext.task.merger.name\n| fieldsRemove record_json, merged_by", - "editable": true, - "enabled": false, - "id": "github:pull-request:ext.task.merger.name_6302", - "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"author_association\": \"CONTRIBUTOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n },\n \"repository\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-17T11:17:59Z\",\n \"pushed_at\": \"2024-09-17T13:07:14Z\",\n \"homepage\": null,\n \"size\": 78,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n },\n \"organization\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"url\": \"https://api.github.com/orgs/github-org\",\n \"repos_url\": \"https://api.github.com/orgs/github-org/repos\",\n \"events_url\": \"https://api.github.com/orgs/github-org/events\",\n \"hooks_url\": \"https://api.github.com/orgs/github-org/hooks\",\n \"issues_url\": \"https://api.github.com/orgs/github-org/issues\",\n \"members_url\": \"https://api.github.com/orgs/github-org/members{/member}\",\n \"public_members_url\": \"https://api.github.com/orgs/github-org/public_members{/member}\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"description\": null\n },\n \"sender\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.task.sender.name", - "dqlScript": "parse sender, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{login}\n| fieldsAdd login, alias: ext.task.sender.name\n| fieldsRemove record_json, login", - "editable": true, - "enabled": false, - "id": "github:pull-request:ext.task.sender.name_1786", - "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"author_association\": \"CONTRIBUTOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n },\n \"repository\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-17T11:17:59Z\",\n \"pushed_at\": \"2024-09-17T13:07:14Z\",\n \"homepage\": null,\n \"size\": 78,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n },\n \"organization\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"url\": \"https://api.github.com/orgs/github-org\",\n \"repos_url\": \"https://api.github.com/orgs/github-org/repos\",\n \"events_url\": \"https://api.github.com/orgs/github-org/events\",\n \"hooks_url\": \"https://api.github.com/orgs/github-org/hooks\",\n \"issues_url\": \"https://api.github.com/orgs/github-org/issues\",\n \"members_url\": \"https://api.github.com/orgs/github-org/members{/member}\",\n \"public_members_url\": \"https://api.github.com/orgs/github-org/public_members{/member}\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"description\": null\n },\n \"sender\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n}", + "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"base\": {\n \"label\": \"github-org:github-user-patch-7\",\n \"ref\": \"github-user-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/github-org/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:github-org/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/github-org/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", "type": "dql" }, { @@ -1016,7 +848,7 @@ "description": "ext.task.merge.commits", "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{commits}\n| fieldsAdd commits, alias: ext.task.merge.commits\n| fieldsRemove record_json, commits", "editable": true, - "enabled": true, + "enabled": false, "id": "github:pull-request:ext.task.merge.commits_4167", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", @@ -1024,10 +856,10 @@ }, { "builtin": false, - "description": "ext.pr.url", - "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nparse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url}\n| fieldsAdd html_url, alias: ext.pr.url\n| fieldsRemove record_json, html_url", + "description": "ext.vcs.change.pull_request.url", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url}\n| fieldsAdd html_url, alias: ext.vcs.change.pull_request.url\n| fieldsRemove record_json, html_url", "editable": true, - "enabled": true, + "enabled": false, "id": "github:pull-request:ext.pr.url_1987", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", @@ -1035,32 +867,10 @@ }, { "builtin": false, - "description": "ext.task.merge_commit_sha", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merge_commit_sha} \n| fieldsRename ext.task.merge_commit_sha = merge_commit_sha\n| fieldsRemove record_json", - "editable": true, - "enabled": false, - "id": "github:pull-request:ext.task.merge_commit_sha_5884", - "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.task.action | vcs.change.id", - "dqlScript": "fieldsAdd action, alias: ext.task.action, number, alias: vcs.change.id", - "editable": true, - "enabled": true, - "id": "github:pull-request:ext.task.action_9401", - "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "Clean up", + "description": "Cleanup", "dqlScript": "fieldsRemove action, number, pull_request", "editable": true, - "enabled": false, + "enabled": true, "id": "github:pull-request:remove_fields_3747", "matcher": "isNotNull(pull_request)", "sampleData": null, @@ -1080,538 +890,18 @@ "type": "default" }, { - "builtin": false, + "builtin": true, "dataExtraction": { - "editable": true, + "editable": false, "processors": [] }, - "displayName": "github-commit-status", - "editable": true, + "displayName": "events.sdlc", + "editable": false, "enabled": true, - "id": "github:commit_status_7380", + "id": "default", "metricExtraction": { - "editable": true, - "processors": [ - { - "builtin": false, - "description": "Number of finished SDLC tasks", - "dimensions": [ - "event.category", - "event.type", - "event.provider", - "event.status", - "vcs.repository.ref.name", - "cicd.pipeline.name" - ], - "editable": true, - "enabled": true, - "id": "github:commit-status:number_of_finished_SDLC_tasks_1543", - "matcher": "event.status == \"finished\"", - "metricKey": "events.sdlc.finished_tasks", - "sampleData": null, - "type": "counterMetric" - }, - { - "builtin": false, - "description": "Number of SDLC tasks", - "dimensions": [ - "event.category", - "event.type", - "event.provider", - "event.status", - "vcs.repository.ref.name", - "cicd.pipeline.name" - ], - "editable": true, - "enabled": true, - "id": "github:commit-status:number_of_SDLC_tasks_6525", - "matcher": "true", - "metricKey": "events.sdlc.tasks", - "sampleData": null, - "type": "counterMetric" - }, - { - "builtin": false, - "description": "Duration of finished SDLC tasks", - "dimensions": [ - "event.type", - "event.category", - "event.provider", - "event.status", - "vcs.repository.ref.name", - "cicd.pipeline.name" - ], - "editable": true, - "enabled": true, - "field": "duration", - "id": "github:commit-status:duration_of_finished_SDLC_tasks_1534", - "matcher": "event.status == \"finished\"", - "metricKey": "events.sdlc.task_duration", - "sampleData": null, - "type": "valueMetric" - } - ] - }, - "processing": { - "editable": true, - "processors": [ - { - "builtin": false, - "description": "event.status", - "dqlScript": "fieldsAdd if(state == \"success\", \"built\", else: \"open\"), alias: event.status", - "editable": true, - "enabled": true, - "id": "github:commit-status:event.status_8886", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "duration", - "dqlScript": "fieldsAdd toDuration(0), alias: duration", - "editable": true, - "enabled": false, - "id": "github:commit-status:duration_3699", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "start_time", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{created_at} \n| fieldsAdd start_time = toTimestamp(created_at)\n| fieldsRemove record_json, created_at", - "editable": true, - "enabled": false, - "id": "github:commit-status:start_time_4242", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"\n/*\nand event.status == \"open\"\n/*", - "sampleData": "{\n \"event.status\":\"open\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "end_time", - "dqlScript": "fieldsAdd end_time = toTimestamp(updated_at)", - "editable": true, - "enabled": true, - "id": "github:commit-status:end_time_2015", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "timestamp", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsAdd dif2h = toLong(7200000000000)\n| fieldsAdd nt = toLong(toTimestamp(now()))\n| fieldsAdd if(nt - toLong(toTimestamp(start_time)) \u003c dif2h, start_time, else: toTimestamp(nt)), alias: st\n| fieldsAdd if(nt - toLong(toTimestamp(end_time)) \u003c dif2h, end_time, else: toTimestamp(nt)), alias: et\n| fieldsAdd if(event.status == \"open\", st, else: if(event.status == \"merged\", et, else: toTimestamp(nt))), alias: timestamp\n| fieldsRemove st, et, nt, dif2h", - "editable": true, - "enabled": false, - "id": "github:commit-status:timestamp_8455", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "task.id, task.name", - "dqlScript": "fieldsAdd id, alias: task.id\n| fieldsAdd context, alias: task.name", - "editable": true, - "enabled": true, - "id": "github:commit-status:task.id_8340", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "task.outcome", - "dqlScript": "fieldsAdd state, alias: task.outcome", - "editable": true, - "enabled": true, - "id": "github:commit-status:task.outcome_6376", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "vcs.repository.ref.name", - "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nfieldsAdd name, alias: vcs.repository.ref.name ", - "editable": true, - "enabled": true, - "id": "github:commit-status:vcs.repository.ref.name_9152", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "vcs.repository.ref.revision", - "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nfieldsAdd sha, alias: vcs.repository.ref.revision", - "editable": true, - "enabled": true, - "id": "github:commit-status:vcs.repository.ref.revision_9671", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\"\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "vcs.repository.url.full", - "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url} \n| fieldsAdd html_url, alias: vcs.repository.url.full \n| fieldsRemove html_url", - "editable": true, - "enabled": true, - "id": "github:commit-status:vcs.repository.url.full_5151", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"commit\": {\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:13:27Z\"\n },\n \"committer\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\",\n \"date\": \"2024-10-30T07:19:06Z\"\n },\n \"message\": \"Update README.md\",\n \"tree\": {\n \"sha\": \"09726379c76f3bddf59522102bf93680d16364fa\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/trees/09726379c76f3bddf59522102bf93680d16364fa\"\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/git/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comment_count\": 0,\n \"verification\": {\n \"verified\": false,\n \"reason\": \"unsigned\",\n \"signature\": null,\n \"payload\": null\n }\n },\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"comments_url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665/comments\",\n \"author\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"committer\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"user_view_type\": \"public\",\n \"site_admin\": false\n },\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"github-repo\",\n \"full_name\": \"github-org/github-repo\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/github-repo\"\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.task.repository.branch.(name)", - "dqlScript": "//TODO: to be double checked after VCS alignment. \n\nparse branches[0], \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{name}\n| fieldsAdd name, alias:ext.task.repository.branch.name\n| fieldsRemove record_json", - "editable": true, - "enabled": true, - "id": "github:commit-status:ext.task.repository.source_8853", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"github-repo\",\n \"full_name\": \"github-org/github-repo\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/github-repo\"\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.task.artifacts", - "dqlScript": "fieldsAdd description, alias:ext.task.artifacts", - "editable": true, - "enabled": false, - "id": "github:commit-status:ext.task.artifacts_2701", - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "sampleData": "{\n \"id\": 32281574583,\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"name\": \"github-org/github-repo\",\n \"target_url\": \"https://github.com/github-org/github-repo/actions/runs/11588666653\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"context\": \"BuiltArtifact\",\n \"description\": \"omniregistry/back-end:7e2e76be8c76d1338499f3113d3bcf3b695e7665, omniregistry/back-end:tst1\",\n \"state\": \"success\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"node_id\": \"C_kwDOMxI3nNoAKDdlMmU3NmJlOGM3NmQxMzM4NDk5ZjMxMTNkM2JjZjNiNjk1ZTc2NjU\",\n \"parents\": [\n {\n \"sha\": \"bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\",\n \"html_url\": \"https://github.com/github-org/github-repo/commit/bfc6b043e7318e8c5ec814f6ea7fc26a71ce3500\"\n }\n ]\n },\n \"branches\": [\n {\n \"name\": \"main\",\n \"commit\": {\n \"sha\": \"7e2e76be8c76d1338499f3113d3bcf3b695e7665\",\n \"url\": \"https://api.github.com/repos/github-org/github-repo/commits/7e2e76be8c76d1338499f3113d3bcf3b695e7665\"\n },\n \"protected\": false\n }\n ],\n \"created_at\": \"2024-10-30T07:19:57+00:00\",\n \"updated_at\": \"2024-10-30T07:19:57+00:00\",\n \"repository\": {\n \"id\": 856831900,\n \"node_id\": \"R_kgDOMxI3nA\",\n \"name\": \"github-repo\",\n \"full_name\": \"github-org/github-repo\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/github-repo\"\n }\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "Clean up", - "dqlScript": "fieldsRemove id, sha, name, target_url, avatar_url, context, description, state, commit, branches, created_at, updated_at, repository, organization, sender", - "editable": true, - "enabled": true, - "id": "github:commit-status:remove_fields_2808", - "matcher": "isNotNull(commit)", - "sampleData": null, - "type": "dql" - } - ] - }, - "securityContext": { - "editable": true, - "processors": [] - }, - "storage": { - "catchAllBucketName": "default_events", - "editable": true, - "processors": [] - }, - "type": "default" - }, - { - "builtin": false, - "dataExtraction": { - "editable": true, - "processors": [] - }, - "displayName": "argocd-application", - "editable": true, - "enabled": true, - "id": "argocd:application_1194", - "metricExtraction": { - "editable": true, - "processors": [ - { - "builtin": false, - "description": "Number of finished SDLC tasks", - "dimensions": [ - "event.category", - "event.type", - "event.provider", - "event.status", - "vcs.repository.ref.name", - "cicd.pipeline.name" - ], - "editable": true, - "enabled": true, - "id": "argocd:application:number_of_finished_SDLC_tasks_3453", - "matcher": "event.status == \"finished\"", - "metricKey": "events.sdlc.finished_tasks", - "sampleData": null, - "type": "counterMetric" - }, - { - "builtin": false, - "description": "Number of SDLC tasks", - "dimensions": [ - "event.category", - "event.type", - "event.provider", - "event.status", - "vcs.repository.ref.name", - "cicd.pipeline.name", - "actor.geo.country.name" - ], - "editable": true, - "enabled": true, - "id": "argocd:application:number_of_SDLC_tasks_2369", - "matcher": "true", - "metricKey": "events.sdlc.tasks", - "sampleData": null, - "type": "counterMetric" - }, - { - "builtin": false, - "description": "Duration of finished SDLC tasks", - "dimensions": [ - "event.type", - "event.category", - "event.provider", - "event.status", - "cicd.pipeline.name", - "vcs.repository.ref.name" - ], - "editable": true, - "enabled": true, - "field": "duration", - "id": "argocd:application:duration_of_finished_SDLC_tasks_3839", - "matcher": "event.status == \"finished\"", - "metricKey": "events.sdlc.task_duration", - "sampleData": null, - "type": "valueMetric" - } - ] - }, - "processing": { - "editable": true, - "processors": [ - { - "builtin": false, - "description": "event.status", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status} \n| fieldsAdd if(lower(status[operationState][phase]) == \"running\", \"started\", else: if(lower(status[operationState][phase]) == \"succeeded\", \"finished\", else: lower(status[operationState][phase]))), alias: event.status\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:event.status_7232", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "duration", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd if((status[operationState][finishedAt] \u003e status[operationState][startedAt]) and lower(status[sync][status]) == \"synced\", toTimestamp(status[operationState][finishedAt]) - toTimestamp(status[operationState][startedAt]), else: toDuration(0)), alias: duration\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:duration_3411", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "start_time", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd start_time = status[operationState][startedAt]\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:start_time_3797", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "end_time", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd end_time = status[operationState][finishedAt]\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:end_time_5325", - "matcher": "type == \"DeploySuccess\" and event.status == \"finished\"", - "sampleData": "{\n \"event.status\":\"finished\",\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "timestamp", - "dqlScript": "fieldsAdd dif2h = toLong(7200000000000)\n| fieldsAdd nt = toLong(toTimestamp(now()))\n| fieldsAdd if(nt - toLong(toTimestamp(start_time)) \u003c dif2h, start_time, else: toTimestamp(nt)), alias: st\n| fieldsAdd if(nt - toLong(toTimestamp(end_time)) \u003c dif2h, end_time, else: toTimestamp(nt)), alias: et\n| fieldsAdd if(event.status == \"started\", st, else: if(event.status == \"finished\", et, else: toTimestamp(nt))), alias: timestamp\n| fieldsRemove st, et, nt, dif2h", - "editable": true, - "enabled": false, - "id": "argocd:application:timestamp_3312", - "matcher": "type == \"DeploySuccess\" and event.status == \"finished\"", - "sampleData": "{\n \"event.status\": \"finished\",\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"status\": {\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\"\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "deployment.service.(uid|name|namespace|resource_version|project|labels[])", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{metadata}\n| fieldsAdd deployment.service.uid = metadata[uid]\n| fieldsAdd deployment.service.name = metadata[name]\n| fieldsAdd deployment.service.namespace = metadata[namespace]\n| fieldsAdd deployment.service.resource_version = metadata[resourceVersion]\n| fieldsAdd deployment.service.labels = metadata[labels]\n| fieldsRemove record_json, metadata", - "editable": true, - "enabled": true, - "id": "argocd:application:task.id_task.name_5968", - "matcher": "type == \"DeploySuccess\" ", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "deployment.service.(revision)", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n//| fieldsAdd deployment.service.revision = status[sync][revision]\n| fieldsAdd deployment.service.revision = status[operationState][syncResult][revision]\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:ext.application.sync.status_revision_2886", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "deployment.source.(path|repo.url|target_revision)", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n//| fieldsAdd deployment.source.path = spec[source][path]\n//| fieldsAdd deployment.source.repo.url = spec[source][repoURL]\n//| fieldsAdd deployment.source.target_revision = spec[source][targetRevision]\n| fieldsAdd deployment.source.repo.url = status[sync][comparedTo][source][repoURL]\n| fieldsAdd deployment.source.revision = status[sync][comparedTo][source][targetRevision]\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:ext.application.source._path_repo.url_target_revision_project_4441", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "deployment.(project)", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{spec}\n| fieldsAdd deployment.project = spec[project]\n| fieldsRemove record_json, spec", - "editable": true, - "enabled": true, - "id": "argocd:application:deployment.project_6167", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "deployment.target.(namespace|server.url)", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n//| fieldsAdd deployment.target.namespace = spec[destination][namespace]\n//| fieldsAdd deployment.target.server.url = spec[destination][server]\n| fieldsAdd deployment.target.namespace = status[sync][comparedTo][destination][namespace]\n| fieldsAdd deployment.target.server.url = status[sync][comparedTo][destination][server]\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:application.target.namespace.server.url_1851", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "deployment.history", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd deployment.history = status[history]\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:deployment.history_1390", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "deployment.images", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd deployment.images = status[summary][images]\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:deployment.images_3636", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "deployment.labels", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{metadata}\n| fieldsAdd deployment.labels = metadata[labels]\n| fieldsFlatten deployment.labels, prefix: \"deployment.label.\"\n| fieldsRemove record_json, metadata", - "editable": true, - "enabled": true, - "id": "argocd:application:deployment.labels_6365", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\",\n \"host\": \"srv-1\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "deployment.(sync.status|health.status|reconciliation_time)", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd deployment.reconciliation_time = toTimestamp(status[reconciledAt])\n| fieldsAdd deployment.sync.status = lower(status[sync][status])\n| fieldsAdd deployment.health.status = lower(status[health][status])\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:deployment.reconciliation.time_sync.status_health.status_8354", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "argocd.(sync.status|health.status|reconciliation_time)", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd argocd.reconciliation_time = toTimestamp(status[reconciledAt])\n| fieldsAdd argocd.sync.status = lower(status[sync][status])\n| fieldsAdd argocd.health.status = lower(status[health][status])\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:argocd.reconciliation.time_sync.status_health.status_9056", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "argocd.sync.(state|revision)", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd argocd.sync.state = lower(status[operationState][phase])\n| fieldsAdd argocd.sync.previous_revision = lower(status[history][-2][revision])\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:argocd.sync.state_revision_7665", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "argocd.sync.outcome", - "dqlScript": "parse app, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{status}\n| fieldsAdd argocd.sync.outcome = lower(status[operationState][message])\n| fieldsRemove record_json, status", - "editable": true, - "enabled": true, - "id": "argocd:application:argocd.sync.outcome_8631", - "matcher": "type == \"DeploySuccess\"", - "sampleData": "{\n \"type\": \"DeploySuccess\",\n \"app\": {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"kind\": \"Application\",\n \"metadata\": {\n \"annotations\": {\n },\n \"creationTimestamp\": \"2024-08-30T13:40:55Z\",\n \"finalizers\": [\n \"resources-finalizer.argocd.argoproj.io\"\n ],\n \"generation\": 10481,\n \"labels\": {\n \"env\": \"prod\"\n },\n \"managedFields\": [\n {\n \"apiVersion\": \"argoproj.io/v1alpha1\",\n \"fieldsType\": \"FieldsV1\",\n \"fieldsV1\": {\n \"f:metadata\": {\n \"f:annotations\": {\n \"f:notified.notifications.argoproj.io\": {}\n }\n }\n },\n \"manager\": \"argocd-notifications-controller\",\n \"operation\": \"Update\",\n \"time\": \"2024-09-19T08:34:16Z\"\n }\n ],\n \"name\": \"application\",\n \"namespace\": \"argocd\",\n \"resourceVersion\": \"67435455\",\n \"uid\": \"{{ .extractedIDs.id_9ecd9ce4_ad89_4aa8_af7b_ebb7daf55435 }}\"\n },\n \"spec\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"info\": [\n {\n \"name\": \"Hello\",\n \"value\": \"\"\n }\n ],\n \"project\": \"default\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n },\n \"syncPolicy\": {\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ]\n }\n },\n \"status\": {\n \"conditions\": [\n {\n \"lastTransitionTime\": \"2024-08-30T13:45:12Z\",\n \"message\": \"Application has 2 orphaned resources\",\n \"type\": \"OrphanedResourceWarning\"\n }\n ],\n \"controllerNamespace\": \"argocd\",\n \"health\": {\n \"status\": \"Healthy\"\n },\n \"history\": [\n {\n \"deployStartedAt\": \"2024-09-19T06:52:46Z\",\n \"deployedAt\": \"2024-09-19T06:53:27Z\",\n \"id\": 83,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"0dc94c5fa2fce3e07a8cd54c56341944e9272e4b\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n {\n \"deployStartedAt\": \"2024-09-19T08:34:12Z\",\n \"deployedAt\": \"2024-09-19T08:34:37Z\",\n \"id\": 84,\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n ],\n \"operationState\": {\n \"finishedAt\": \"2024-09-19T08:34:37Z\",\n \"message\": \"successfully synced (no more tasks)\",\n \"operation\": {\n \"initiatedBy\": {\n \"username\": \"admin\"\n },\n \"retry\": {},\n \"sync\": {\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"syncOptions\": [\n \"CreateNamespace=true\"\n ],\n \"syncStrategy\": {\n \"hook\": {}\n }\n }\n },\n \"phase\": \"Succeeded\",\n \"startedAt\": \"2024-09-19T08:34:12Z\",\n \"syncResult\": {\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"Sync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-sync-1726734852 created\",\n \"name\": \"sync-hook51854c9-sync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"Sync\",\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hookPhase\": \"Succeeded\",\n \"hookType\": \"PostSync\",\n \"kind\": \"Job\",\n \"message\": \"job.batch/sync-hook51854c9-postsync-1726734852 created\",\n \"name\": \"sync-hook51854c9-postsync-1726734852\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"syncPhase\": \"PostSync\",\n \"version\": \"v1\"\n }\n ],\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n }\n },\n \"reconciledAt\": \"2024-09-19T08:34:37Z\",\n \"resources\": [\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-postsync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n },\n {\n \"group\": \"batch\",\n \"hook\": true,\n \"kind\": \"Job\",\n \"name\": \"sync-hook51854c9-sync-1726734725\",\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"requiresPruning\": true,\n \"version\": \"v1\"\n }\n ],\n \"sourceType\": \"Directory\",\n \"summary\": {\n \"images\": [\n \"curlimages/curl\",\n \"omniregistry/back-end:cd3818f7cd119a16f7f47c41c3503b3d71432ff5\",\n \"omniregistry/front-end:0742fad7136041bd0dbc234c02d33258aa5adba8\",\n \"omniregistry/front-end:c121c61542886c959e3dea9117a7a77a66d988d9\",\n \"public.ecr.aws/dynatrace/dynatrace-operator:v1.2.0@sha256:f1423f6f4ee4999732092da2d1013fdafa1343f15a4dba0e7b6df1334e15a4d8\"\n ]\n },\n \"sync\": {\n \"comparedTo\": {\n \"destination\": {\n \"namespace\": \"guestbook-ui-sourcecode\",\n \"server\": \"https://kubernetes.default.svc\"\n },\n \"source\": {\n \"path\": \"deployment-1\",\n \"repoURL\": \"https://github.com/github-org/GitOpsRepo\",\n \"targetRevision\": \"main\"\n }\n },\n \"revision\": \"51854c92619be51512e3070825125eea4aea83f5\",\n \"status\": \"Synced\"\n }\n }\n },\n \"commit.message\": \"Standard message DT:c121c61542886c959e3dea9117a7a77a66d988d9:DT\"\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "Clean up", - "dqlScript": "fieldsRemove type, app, apiVersion, kind, metadata, spec, status, commit.message", - "editable": true, - "enabled": false, - "id": "argocd:application:remove_fields_2091", - "matcher": "type == \"DeploySuccess\"", - "sampleData": null, - "type": "dql" - } - ] - }, - "securityContext": { - "editable": true, - "processors": [] - }, - "storage": { - "catchAllBucketName": "default_events", - "editable": true, - "processors": [] - }, - "type": "default" - }, - { - "builtin": true, - "dataExtraction": { - "editable": false, - "processors": [] - }, - "displayName": "events.sdlc", - "editable": false, - "enabled": true, - "id": "default", - "metricExtraction": { - "editable": false, - "processors": [] + "editable": false, + "processors": [] }, "processing": { "editable": false, @@ -1641,7 +931,7 @@ "editable": true, "enabled": true, "matcher": "isNotNull(workflow_run)", - "note": "Route matching events into workflow pipline", + "note": "Route events to workflow pipeline", "pipelineId": "github:workflow_6504" }, { @@ -1649,7 +939,7 @@ "editable": true, "enabled": true, "matcher": "isNotNull(workflow_job)", - "note": "Route matching events into job pipeline", + "note": "Route events to job pipeline", "pipelineId": "github:job_9528" }, { @@ -1657,16 +947,8 @@ "editable": true, "enabled": true, "matcher": "isNotNull(pull_request)", - "note": "Route matching events into PR pipeline ", + "note": "Route events to PR pipeline ", "pipelineId": "github:pull_request_8730" - }, - { - "builtin": false, - "editable": true, - "enabled": true, - "matcher": "isNotNull(commit) and context == \"BuiltArtifact\"", - "note": "Route matching events into commits pipeline", - "pipelineId": "github:commit_status_7380" } ] } From 480b288018161ede70bc1a590b93e4fc998df12f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Fri, 24 Jan 2025 13:29:56 +0100 Subject: [PATCH 11/25] Set version number MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/README.md | 22 ++++++++++++++----- .../document-dashboard/config.yaml | 4 ++-- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index ba1b2b2..755d5f3 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -58,11 +58,11 @@ environmentGroups: ```mermaid flowchart TD A[Check your OpenPipeline SDLC scope] --> B{Is there a custom endpoint/pipeline?}; - B -- No --> C[Deploy OpenPipeline configuration] - B -- Yes --> D[Merge configuration before deploying OpenPipeline configuration] + B -- No --> C[Run Monaco deploy] + B -- Yes --> D[Merge configuration before running Monaco] ``` -#### Deploy OpenPipeline configuratioon +#### Run Monaco deploy Run the following command to apply the provided configuration. @@ -70,9 +70,20 @@ Run the following command to apply the provided configuration. monaco deploy manifest.yaml ``` -#### Merge configuration before deploying OpenPipeline configuration +#### Merge configuration before running Monaco -Describe how to MERGE first +1. Download your OpenPipeline configuration: +``` +monaco download +``` + +2. Merge the content of `download__\project\openpipline\events.sdlc.json` into the file `events.sdlc.github.json` + +3. Run the following command to apply the provided configuration. + +``` +monaco deploy manifest.yaml +``` ## Configure GitHub to send Webhook events to Dynatrace @@ -104,7 +115,6 @@ You can configure webhooks at either the organization level (affecting all repos - **Content Type**: `application/json` - **Which events would you like to trigger this webhook?**: Select *Let me select individual events* and enable: - Pull requests - - Statuses - Workflow runs - Workflow jobs - (disable "Pushes") diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml index 022c31f..f8b8909 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml @@ -1,7 +1,7 @@ configs: - id: 0a635714-5545-4413-95e1-023333e8edac config: - name: GitHub Workflow v.0.2.2 + name: GitHub Workflow v.0.3.0 parameters: extractedIDs: type: value @@ -16,7 +16,7 @@ configs: private: true - id: f9847607-0c63-4f8a-99bd-92e7cf7d86db config: - name: GitHub Pull Request v.0.2.2 + name: GitHub Pull Request v.0.3.0 template: github.pull_request.json skip: false originObjectId: f9847607-0c63-4f8a-99bd-92e7cf7d86db From 16159f3139a15c303dcd1a7c942ac5dd770d269e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Mon, 27 Jan 2025 14:27:00 +0100 Subject: [PATCH 12/25] added fields MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../openpipeline/events.sdlc.github.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json index 4f38819..37c1baf 100644 --- a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json +++ b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json @@ -845,22 +845,22 @@ }, { "builtin": false, - "description": "ext.task.merge.commits", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{commits}\n| fieldsAdd commits, alias: ext.task.merge.commits\n| fieldsRemove record_json, commits", + "description": "ext.vcs.change.pull_request.url | number", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url}\n| fieldsAdd html_url, alias: ext.vcs.change.pull_request.url\n| fieldsRename ext.vcs.change.pull_request.number = number\n| fieldsRemove record_json, html_url", "editable": true, - "enabled": false, - "id": "github:pull-request:ext.task.merge.commits_4167", + "enabled": true, + "id": "github:pull-request:ext.pr.url_1987", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", "type": "dql" }, { "builtin": false, - "description": "ext.vcs.change.pull_request.url", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url}\n| fieldsAdd html_url, alias: ext.vcs.change.pull_request.url\n| fieldsRemove record_json, html_url", + "description": "ext.task.merge.commits", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{commits}\n| fieldsAdd commits, alias: ext.task.merge.commits\n| fieldsRemove record_json, commits", "editable": true, "enabled": false, - "id": "github:pull-request:ext.pr.url_1987", + "id": "github:pull-request:ext.task.merge.commits_4167", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", "type": "dql" From 3ee8138283b85a66c03acce2d06d2ef39d36edd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Mon, 27 Jan 2025 15:51:48 +0100 Subject: [PATCH 13/25] Removed DT_TOKEN MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/.gitignore | 3 ++- github_pipeline_observability/README.md | 24 +++++++++++------------- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/github_pipeline_observability/.gitignore b/github_pipeline_observability/.gitignore index 01fb216..711531a 100644 --- a/github_pipeline_observability/.gitignore +++ b/github_pipeline_observability/.gitignore @@ -1,2 +1,3 @@ environment_variables.txt -manifest_local.yaml \ No newline at end of file +manifest_local.yaml +manifest_khd45734.yaml \ No newline at end of file diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index 755d5f3..f373e8b 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -10,25 +10,25 @@ If you want to know how your GitHub workflows are performing in terms of task du 1. [Install Dynatrace Configuration as Code via Monaco](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/installation) -2. [Create an API token](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/manage-configuration#prerequisites) and store it as an environment variable: +2. [Create an OAuth client](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/guides/create-oauth-client) with the following permissions and store it as an environment variables: + * Run apps `app-engine:apps:run` + * View OpenPipeline configurations `openpipeline:configurations:read` + * Edit OpenPipeline configurations `openpipeline:configurations:write` + * Create and edit documents `document:documents:write` + * View documents: `document:documents:read` ``` -$env:DT_ENV_TOKEN +$env:OAUTH_CLIENT_ID = +$env:OAUTH_CLIENT_SECRET = +$env:OAUTH_TOKEN_ENDPOINT = 'https://sso.dynatrace.com/sso/oauth2/token' ``` -3. [Create an OAuth client](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/guides/create-oauth-client) with the following permissions and store it as an environment variables: - * "Scopes" -``` -$env:OAUTH_CLIENT_ID -$env:OAUTH_CLIENT_SECRET -``` - -4. Download this repository and go to `github_pipeline_observability` +3. Download this repository and go to `github_pipeline_observability` ``` git clone https://github.com/Dynatrace/dynatrace-configuration-as-code-samples.git cd github_pipeline_observability ``` -5. Edit the `manifest.yaml` to configure your environment: +4. Edit the `manifest.yaml` to configure your environment: ``` manifestVersion: 1.0 projects: @@ -41,8 +41,6 @@ environmentGroups: type: value value: auth: - token: - name: DT_ENV_TOKEN oAuth: clientId: name: OAUTH_CLIENT_ID From 08be9c4c6f32d556278366746da43c320cae19fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Wed, 29 Jan 2025 08:17:46 +0100 Subject: [PATCH 14/25] Update of IDs and remove DT_TOKEN from manifest MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/README.md | 8 +- github_pipeline_observability/manifest.yaml | 2 - .../openpipeline/events.sdlc.github.json | 104 +++++++++--------- 3 files changed, 56 insertions(+), 58 deletions(-) diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index f373e8b..4a3db92 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -11,10 +11,10 @@ If you want to know how your GitHub workflows are performing in terms of task du 1. [Install Dynatrace Configuration as Code via Monaco](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/installation) 2. [Create an OAuth client](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/guides/create-oauth-client) with the following permissions and store it as an environment variables: - * Run apps `app-engine:apps:run` - * View OpenPipeline configurations `openpipeline:configurations:read` - * Edit OpenPipeline configurations `openpipeline:configurations:write` - * Create and edit documents `document:documents:write` + * Run apps: `app-engine:apps:run` + * View OpenPipeline configurations: `openpipeline:configurations:read` + * Edit OpenPipeline configurations: `openpipeline:configurations:write` + * Create and edit documents: `document:documents:write` * View documents: `document:documents:read` ``` $env:OAUTH_CLIENT_ID = diff --git a/github_pipeline_observability/manifest.yaml b/github_pipeline_observability/manifest.yaml index 7af96bf..a131016 100644 --- a/github_pipeline_observability/manifest.yaml +++ b/github_pipeline_observability/manifest.yaml @@ -9,8 +9,6 @@ environmentGroups: type: value value: auth: - token: - name: DT_ENV_TOKEN oAuth: clientId: name: OAUTH_CLIENT_ID diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json index 37c1baf..9f2ad84 100644 --- a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json +++ b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json @@ -16,7 +16,7 @@ "dqlScript": "fieldsAdd event.id = hashSha1(concat(toString(toLong(now())), toString(RANDOM())))", "editable": true, "enabled": true, - "id": "github:sets_event_id_to_a_unique_identifier_1213", + "id": "github:event_id_1213", "matcher": "isNull(event.id)", "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"created_at\": \"2024-07-03T04:58:10Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\", \n \"pull_requests\": []\n }\n}", "type": "dql" @@ -27,7 +27,7 @@ "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"0.1.0\",\nevent.provider = \"github.com\",\nevent.category = \"pipeline\",\nevent.type = \"run\"", "editable": true, "enabled": true, - "id": "github:sets_sdlc_pipeline_properties_9061", + "id": "github:sdlc_pipeline_properties_9061", "matcher": "isNotNull(workflow_run)", "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"created_at\": \"2024-07-03T04:58:10Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\", \n \"pull_requests\": []\n }\n}", "type": "dql" @@ -38,7 +38,7 @@ "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"0.1.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"build\"", "editable": true, "enabled": true, - "id": "github:sets_sdlc_task_properties_1775", + "id": "github:sdlc_build_task_properties_1775", "matcher": "isNotNull(workflow_job)", "sampleData": "{\n \"action\": \"completed\",\n \"workflow_job\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"created_at\": \"2024-07-03T04:58:10Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\", \n \"pull_requests\": []\n }\n}", "type": "dql" @@ -49,7 +49,7 @@ "dqlScript": "fieldsAdd \nevent.kind = \"SDLC_EVENT\", \nevent.version = \"0.1.0\",\nevent.provider = \"github.com\",\nevent.category = \"task\",\nevent.type = \"change\"", "editable": true, "enabled": true, - "id": "github:sets_default_and_type_change_2135", + "id": "github:sdlc_change_type_properties_2135", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" @@ -194,7 +194,7 @@ "processors": [ { "builtin": false, - "description": "Number of finished SDLC pipelines", + "description": "Number of workflow events", "dimensions": [ "event.status", "cicd.pipeline.name", @@ -206,15 +206,15 @@ ], "editable": true, "enabled": true, - "id": "github:workflows:runs_4612", - "matcher": "//isNotNull(workflow_run) AND\nevent.status == \"finished\"", - "metricKey": "events.sdlc.finished_pipelines", + "id": "github:workflows:number_of_pipeline_events_6061", + "matcher": "true", + "metricKey": "events.sdlc.pipelines", "sampleData": null, "type": "counterMetric" }, { "builtin": false, - "description": "Number of SDLC pipeline events", + "description": "Number of finished workflows", "dimensions": [ "event.status", "cicd.pipeline.name", @@ -226,15 +226,15 @@ ], "editable": true, "enabled": true, - "id": "github:workflows:number_of_SDLC_pipeline_events_6061", - "matcher": "true", - "metricKey": "events.sdlc.pipelines", + "id": "github:workflows:runs_finished_4612", + "matcher": "//isNotNull(workflow_run) AND\nevent.status == \"finished\"", + "metricKey": "events.sdlc.finished_pipelines", "sampleData": null, "type": "counterMetric" }, { "builtin": false, - "description": "Duration of finished SDLC pipelines", + "description": "Duration of finished workflows", "dimensions": [ "event.status", "cicd.pipeline.name", @@ -247,7 +247,7 @@ "editable": true, "enabled": true, "field": "duration", - "id": "github:workflows:pipeline_duration_2861", + "id": "github:workflows:run_duration_2861", "matcher": "//isNotNull(workflow_run) AND\nevent.status == \"finished\"", "metricKey": "events.sdlc.pipeline_duration", "sampleData": null, @@ -319,7 +319,7 @@ "dqlScript": "parse workflow, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, name, html_url} \n| fieldsRename cicd.pipeline.id = id\n| fieldsRename cicd.pipeline.name = name\n| fieldsRename cicd.pipeline.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:workflow:pipeline.id_pipeline.name_pipeline.url_6138", + "id": "github:workflow:pipeline.id_name_url_6138", "matcher": "isNotNull(workflow_run) and isNotNull(workflow)", "sampleData": "{\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/github-org/actionspipeline/workflows/CI/badge.svg\"\n }\n }", "type": "dql" @@ -330,7 +330,7 @@ "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, html_url} \n| fieldsRename cicd.pipeline.run.id = id\n| fieldsRename cicd.pipeline.run.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:workflow:pipeline.run.id_pipeline.run.url_5049", + "id": "github:workflow:pipeline.run.id_url_5049", "matcher": "isNotNull(workflow_run)", "sampleData": "{\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"queued\",\n \"conclusion\": null,\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:03Z\",\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\"\n },\n \"workflow\": {\n \"id\": 71372937,\n \"node_id\": \"W_kwDOKbUdvs4EQRCJ\",\n \"name\": \"CI\",\n \"path\": \".github/workflows/blank.yml\",\n \"state\": \"active\",\n \"created_at\": \"2023-10-03T08:33:53.000Z\",\n \"updated_at\": \"2024-06-06T05:09:52.000Z\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/blob/main/.github/workflows/blank.yml\",\n \"badge_url\": \"https://github.com/github-org/actionspipeline/workflows/CI/badge.svg\"\n }\n }", "type": "dql" @@ -341,7 +341,7 @@ "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{event, run_attempt} \n| fieldsRename cicd.pipeline.run.trigger = event\n| fieldsRename cicd.pipeline.run.attempt = run_attempt\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:workflow:ext.pipeline.run.trigger_9871", + "id": "github:workflow:ext.pipeline.run.trigger_run_attempt_9871", "matcher": "isNotNull(workflow_run) ", "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", "type": "dql" @@ -363,7 +363,7 @@ "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name, html_url} \n| fieldsRename vcs.repository.name = full_name\n| fieldsRename vcs.repository.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:workflow:vcs.repository.ref.name_4133", + "id": "github:workflow:vcs.repository.name_url_4133", "matcher": "isNotNull(repository)", "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" @@ -374,7 +374,7 @@ "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head_branch, head_sha} \n| fieldsRename vcs.ref.head.revision = head_sha\n| fieldsRename vcs.ref.head.name = head_branch\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:workflow:ext.pipeline.head_branch_sha_2706", + "id": "github:workflow:vcs.ref.head.revision_name_2706", "matcher": "isNotNull(workflow_run) ", "sampleData": "{\n \"action\": \"completed\",\n \"workflow_run\": {\n \"id\": 9772103168,\n \"name\": \"CI\",\n \"node_id\": \"WFR_kwLOKbUdvs8AAAACRnZ2AA\",\n \"head_branch\": \"main\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"path\": \".github/workflows/blank.yml\",\n \"display_title\": \"CI\",\n \"run_number\": 5579,\n \"event\": \"schedule\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"workflow_id\": 71372937,\n \"check_suite_id\": 25579305967,\n \"check_suite_node_id\": \"CS_kwDOKbUdvs8AAAAF9KU77w\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168\",\n \"pull_requests\": [],\n \"created_at\": \"2024-07-03T04:58:03Z\",\n \"updated_at\": \"2024-07-03T04:58:13Z\",\n \"actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"run_attempt\": 1,\n \"referenced_workflows\": [],\n \"run_started_at\": \"2024-07-03T04:58:03Z\",\n \"triggering_actor\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"jobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/jobs\",\n \"logs_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/logs\",\n \"check_suite_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-suites/25579305967\",\n \"artifacts_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/artifacts\",\n \"cancel_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/cancel\",\n \"rerun_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168/rerun\",\n \"previous_attempt_url\": null,\n \"workflow_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/workflows/71372937\",\n \"head_commit\": {\n \"id\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"tree_id\": \"798bccf57b1a72055abdb090c65c6bb69e9ca698\",\n \"message\": \"Update blank.yml\",\n \"timestamp\": \"2024-06-06T05:35:42Z\",\n \"author\": {\n \"name\": \"github-user\",\n \"email\": \"33230145+github-user@users.noreply.github.com\"\n },\n \"committer\": {\n \"name\": \"GitHub\",\n \"email\": \"noreply@github.com\"\n }\n }\n }\n}", "type": "dql" @@ -418,7 +418,7 @@ "processors": [ { "builtin": false, - "description": "Number of finished SDLC tasks", + "description": "Number of job events", "dimensions": [ "event.type", "event.provider", @@ -429,15 +429,15 @@ ], "editable": true, "enabled": true, - "id": "github:job:number_of_finished_SDLC_tasks_4783", - "matcher": "event.status == \"finished\"", - "metricKey": "events.sdlc.finished_tasks", + "id": "github:job:number_of_job_events_4537", + "matcher": "true", + "metricKey": "events.sdlc.tasks", "sampleData": null, "type": "counterMetric" }, { "builtin": false, - "description": "Number of SDLC tasks", + "description": "Number of finished jobs", "dimensions": [ "event.type", "event.provider", @@ -448,15 +448,15 @@ ], "editable": true, "enabled": true, - "id": "github:job:number_of_SDLC_tasks_4537", - "matcher": "true", - "metricKey": "events.sdlc.tasks", + "id": "github:job:jobs_finished_4783", + "matcher": "event.status == \"finished\"", + "metricKey": "events.sdlc.finished_tasks", "sampleData": null, "type": "counterMetric" }, { "builtin": false, - "description": "Duration of finished SDLC tasks", + "description": "Duration of finished job", "dimensions": [ "event.provider", "event.status", @@ -468,7 +468,7 @@ "editable": true, "enabled": true, "field": "duration", - "id": "github:job:duration_of_finished_SDLC_tasks_9361", + "id": "github:job:job_duration_9361", "matcher": "event.status == \"finished\"", "metricKey": "events.sdlc.task_duration", "sampleData": null, @@ -536,11 +536,11 @@ }, { "builtin": false, - "description": "cicd.pipeline.run.id, task.id | name", + "description": "cicd.pipeline.run.id | task.id | name", "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_id, id, name} \n| fieldsRename cicd.pipeline.run.id = run_id\n| fieldsRename task.id = id\n| fieldsRename task.name = name\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:job:pipeline.run.id_task.id_4478", + "id": "github:job:pipeline.run.id_task_id_name_4478", "matcher": "isNotNull(workflow_job)", "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" @@ -562,7 +562,7 @@ "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{steps, labels} \n| fieldsRename task.steps = steps\n| fieldsRename task.labels = labels\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:job:ext.task.steps_6131", + "id": "github:job:ext.task.steps_labels_6131", "matcher": "isNotNull(workflow_job) ", "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", "type": "dql" @@ -584,7 +584,7 @@ "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head_branch, head_sha} \n| fieldsRename vcs.ref.head.revision = head_sha\n| fieldsRename vcs.ref.head.name = head_branch\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "processor_vcs.ref.head.revision___name_5064", + "id": "processor_vcs.ref.head.revision_name_5064", "matcher": "isNotNull(workflow_job)", "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" @@ -595,7 +595,7 @@ "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name, html_url} \n| fieldsRename vcs.repository.name = full_name\n| fieldsRename vcs.repository.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:job:vcs.repository.ref.name_8247", + "id": "github:job:vcs.repository.name_url_8247", "matcher": "isNotNull(repository)", "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" @@ -606,7 +606,7 @@ "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{runner_name, runner_group_name} \n| fieldsRename task.runner.name = runner_name\n| fieldsRename task.runner.group.name = runner_group_name\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:job:ext.task.runner.name_ext.task.runner.group.name_3013", + "id": "github:job:task.runner.name_group_name_3013", "matcher": "isNotNull(workflow_job) ", "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", "type": "dql" @@ -650,7 +650,7 @@ "processors": [ { "builtin": false, - "description": "Number of finished SDLC tasks", + "description": "Number of pull request events", "dimensions": [ "event.type", "event.provider", @@ -661,15 +661,15 @@ ], "editable": true, "enabled": true, - "id": "github:pull-request:number_of_finished_SDLC_tasks_2815", - "matcher": "event.status == \"finished\"", - "metricKey": "events.sdlc.finished_tasks", + "id": "github:pull-request:number_of_tasks_4441", + "matcher": "true", + "metricKey": "events.sdlc.tasks", "sampleData": null, "type": "counterMetric" }, { "builtin": false, - "description": "Number of SDLC tasks", + "description": "Number of merged pull requests", "dimensions": [ "event.type", "event.provider", @@ -680,15 +680,15 @@ ], "editable": true, "enabled": true, - "id": "github:pull-request:number_of_SDLC_tasks_4441", - "matcher": "true", - "metricKey": "events.sdlc.tasks", + "id": "github:pull-request:number_of_merged_prs_2815", + "matcher": "event.status == \"finished\"", + "metricKey": "events.sdlc.finished_tasks", "sampleData": null, "type": "counterMetric" }, { "builtin": false, - "description": "Duration of finished SDLC tasks", + "description": "Duration of merged pull request", "dimensions": [ "event.type", "event.provider", @@ -700,7 +700,7 @@ "editable": true, "enabled": true, "field": "duration", - "id": "github:pull-request:duration_of_finished_SDLC_tasks_3902", + "id": "github:pull-request:duration_3902", "matcher": "event.status == \"finished\"", "metricKey": "events.sdlc.task_duration", "sampleData": null, @@ -772,7 +772,7 @@ "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename task.id = id\n| fieldsRename task.name = title\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:pull-request:task.id_8340", + "id": "github:pull-request:task.id_name_8340", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" @@ -783,7 +783,7 @@ "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{labels}\n| fieldsAdd task.labels = toArray(labels)\n| fieldsRemove record_json, labels", "editable": true, "enabled": true, - "id": "github:pull-request:ext.task.labels_8497", + "id": "github:pull-request:task.labels_8497", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" @@ -805,7 +805,7 @@ "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename vcs.change.id = id\n| fieldsRename vcs.change.title = title\n| fieldsAdd action, alias: vcs.change.state\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:pull-request:pull_request.id_pull_request.number_pull_request.name_4660", + "id": "github:pull-request:vcs.change.id_title_state_4660", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" @@ -816,7 +816,7 @@ "dqlScript": "parse repository, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{full_name, html_url} \n| fieldsRename vcs.repository.name = full_name\n| fieldsRename vcs.repository.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, - "id": "github:pull-request:vcs.repository.ref.name_9152", + "id": "github:pull-request:vcs.repository.name_url_9152", "matcher": "isNotNull(repository)", "sampleData": "{\n \"timestamp\": \"2024-09-05T10:07:03.791000000Z\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"repository\": {\n \"id\": 664643958,\n \"node_id\": \"R_kgDOJ52pdg\",\n \"name\": \"webapp\",\n \"full_name\": \"cookie-base/webapp\",\n \"private\": true,\n \"html_url\": \"https://github.com/cookie-base/webapp\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/cookie-base/webapp\",\n \"forks_url\": \"https://api.github.com/repos/cookie-base/webapp/forks\",\n \"keys_url\": \"https://api.github.com/repos/cookie-base/webapp/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/cookie-base/webapp/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/cookie-base/webapp/teams\",\n \"hooks_url\": \"https://api.github.com/repos/cookie-base/webapp/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/cookie-base/webapp/events\",\n \"assignees_url\": \"https://api.github.com/repos/cookie-base/webapp/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/cookie-base/webapp/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/cookie-base/webapp/tags\",\n \"blobs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/cookie-base/webapp/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/cookie-base/webapp/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/cookie-base/webapp/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/cookie-base/webapp/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/cookie-base/webapp/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/cookie-base/webapp/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/cookie-base/webapp/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/cookie-base/webapp/subscription\",\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/cookie-base/webapp/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/cookie-base/webapp/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/cookie-base/webapp/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/cookie-base/webapp/merges\",\n \"archive_url\": \"https://api.github.com/repos/cookie-base/webapp/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/cookie-base/webapp/downloads\",\n \"issues_url\": \"https://api.github.com/repos/cookie-base/webapp/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/cookie-base/webapp/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/cookie-base/webapp/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/cookie-base/webapp/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/cookie-base/webapp/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/cookie-base/webapp/deployments\",\n \"created_at\": \"2023-07-10T12:37:00Z\",\n \"updated_at\": \"2024-09-04T08:12:38Z\",\n \"pushed_at\": \"2024-09-04T08:12:55Z\",\n \"git_url\": \"git://github.com/cookie-base/webapp.git\",\n \"ssh_url\": \"git@github.com:cookie-base/webapp.git\",\n \"clone_url\": \"https://github.com/cookie-base/webapp.git\",\n \"svn_url\": \"https://github.com/cookie-base/webapp\",\n \"homepage\": null,\n \"size\": 2228,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"TypeScript\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": false,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"private\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" @@ -827,7 +827,7 @@ "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{head}\n| fieldsAdd head[ref], alias: vcs.ref.head.name\n| fieldsAdd head[sha], alias: vcs.ref.head.revision\n| fieldsRemove record_json, head", "editable": true, "enabled": true, - "id": "github:pull-request:ext.task.repository.source_8853", + "id": "github:pull-request:vcs.ref.head.name_revision_8853", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"head\": {\n \"label\": \"github-org:github-user-patch-7\",\n \"ref\": \"github-user-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/github-org/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:github-org/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/github-org/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", "type": "dql" @@ -838,7 +838,7 @@ "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{base}\n| fieldsAdd base[ref], alias: vcs.ref.base.name\n| fieldsAdd base[sha], alias: vcs.ref.base.revision\n| fieldsRemove record_json, base", "editable": true, "enabled": true, - "id": "github:pull-request:ext.task.repository.target._full_name_name_ref_9238", + "id": "github:pull-request:vcs.ref.base.name_revision_9238", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"base\": {\n \"label\": \"github-org:github-user-patch-7\",\n \"ref\": \"github-user-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/github-org/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:github-org/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/github-org/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", "type": "dql" @@ -849,7 +849,7 @@ "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url}\n| fieldsAdd html_url, alias: ext.vcs.change.pull_request.url\n| fieldsRename ext.vcs.change.pull_request.number = number\n| fieldsRemove record_json, html_url", "editable": true, "enabled": true, - "id": "github:pull-request:ext.pr.url_1987", + "id": "github:pull-request:ext.vcs.change.pull_request.url_number_1987", "matcher": "isNotNull(pull_request)", "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", "type": "dql" From c9b3f28a335332a3c2240e62f46efd35a599e672 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Wed, 29 Jan 2025 14:00:32 +0100 Subject: [PATCH 15/25] Update of how to guide MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/README.md | 99 ++++++++++++++----- github_pipeline_observability/manifest.yaml | 4 +- .../github.pull_request.json | 2 +- .../document-dashboard/github.workflow.json | 2 +- 4 files changed, 76 insertions(+), 31 deletions(-) diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index 4a3db92..8aebe48 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -1,34 +1,46 @@ -# GitHub Pipeline Observability Package +# Observe your GitHub Pull Requests and Workflows with Dashboards and normalized SLDC events through OpenPipeline -If you want to know how your GitHub workflows are performing in terms of task duration, failure rate, runner utilization, etc. and you are interested in analyzing pull requests, then leverage this **GitHub Pipeline Observability Package**. To apply it, two steps are required: -1. Configure Dynatrace OpenPipeline and upload Dashboards -2. Configure GitHub to send Webhook events to Dynatrace +Enable Platform Engineering teams to grasp and analyze the efficiency of GitHub workflows and processes bound to GitHub pull requests to drive improvements and optimize the Internal Development Platform (IDP). By better understanding the integration of GitHub into your development routines or delivery processes, you can set actions in the following directions: -## Configure Dynatrace OpenPipeline and upload Dashboards +* *Streamlining CI/CD Pipelines*: Observing workflow executions allows you to identify bottlenecks and inefficiencies in your CI/CD pipelines. This helps in optimizing build and deployment processes, leading to faster and more reliable releases. -### Prerequisites +* *Improving Developer Productivity*: Automated workflows reduce the manual effort required for repetitive tasks, such as running tests and checking coding standards. This allows developers to focus more on writing code and less on administrative tasks. + +* *Data-Driven Insights*: Analyzing telemetry data from pull requests and workflows provides valuable insights into the development process. This data can be used to make informed decisions and continuously improve the development flows. + +## Target audience + +This article is intended for Platform Engineers managing the internal Development Platform (IDP), including GitHub for an entire organization. + +While GitHub provides you *Insights* into [Actions Usage/Performance Metrics](https://docs.github.com/en/actions/administering-github-actions/viewing-github-actions-metrics) for workflow executions on the organization and repository level, the presented data can't be adjusted according to your development processes. Consequently, you would miss functionality to derive tailored insights specific to your internal development platform and directly relevant to your team's development environment. + +In this tutorial, you will learn how to forward GitHub webhook events to Dynatrace, normalize the ingested event data, and use ready-made dashboards to analyze the data and derive improvements. + +## Prerequisites 1. [Install Dynatrace Configuration as Code via Monaco](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/installation) -2. [Create an OAuth client](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/guides/create-oauth-client) with the following permissions and store it as an environment variables: +2. [Create an OAuth client](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/guides/create-oauth-client) with the following permissions. * Run apps: `app-engine:apps:run` * View OpenPipeline configurations: `openpipeline:configurations:read` * Edit OpenPipeline configurations: `openpipeline:configurations:write` * Create and edit documents: `document:documents:write` * View documents: `document:documents:read` + +3. Store the retrieved client ID, secret, and token endpoint as an environment variable. ``` $env:OAUTH_CLIENT_ID = $env:OAUTH_CLIENT_SECRET = $env:OAUTH_TOKEN_ENDPOINT = 'https://sso.dynatrace.com/sso/oauth2/token' ``` -3. Download this repository and go to `github_pipeline_observability` +4. Clone the *Dynatrace configuration as code sample* repository and go to `github_pipeline_observability`. ``` git clone https://github.com/Dynatrace/dynatrace-configuration-as-code-samples.git cd github_pipeline_observability ``` -4. Edit the `manifest.yaml` to configure your environment: +5. Edit the `manifest.yaml` by exchanging `` with your Dynatrace environment ID. ``` manifestVersion: 1.0 projects: @@ -36,10 +48,10 @@ projects: environmentGroups: - name: group environments: - - name: + - name: url: type: value - value: + value: https://.apps.dynatrace.com auth: oAuth: clientId: @@ -51,14 +63,18 @@ environmentGroups: value: OAUTH_TOKEN_ENDPOINT ``` -### Apply Monaco configuration +## Steps -```mermaid -flowchart TD - A[Check your OpenPipeline SDLC scope] --> B{Is there a custom endpoint/pipeline?}; - B -- No --> C[Run Monaco deploy] - B -- Yes --> D[Merge configuration before running Monaco] -``` +### 1. Configure Dynatrace by leveraging Monaco + +In this section, you will upload two Dashboards and configure the ingest endpoint for GitHub Webhooks in Dynatrace. Before you continue, please check your OpenPipeline configuration for *Software development lifecycle events*. + +1. In Dynatrace, navigate to **OpenPipeline**. +2. Expand **Events** and click **Software development lifecycle**. +3. Open **Ingest source** and check if another ingest source exists except the built-in *Endpoint for Software Development*. +4. Open **Dynamic routing** and check if another route exists excpet the *Default route*. +5. Open **Pipelines** and check if another pipeline exists except the built-in *events.sdlc*. +6. If you have the default and built-in configuration, you can run Monaco to deploy the provided configuration; otherwise, you must merge the configuration file before updating it. #### Run Monaco deploy @@ -68,26 +84,25 @@ Run the following command to apply the provided configuration. monaco deploy manifest.yaml ``` -#### Merge configuration before running Monaco +#### Merge configuration before running Monaco deploy -1. Download your OpenPipeline configuration: +1. Download your OpenPipeline configuration. ``` monaco download ``` -2. Merge the content of `download__\project\openpipline\events.sdlc.json` into the file `events.sdlc.github.json` +2. Merge the content of `download__\project\openpipline\events.sdlc.json` into the file `events.sdlc.github.json`. 3. Run the following command to apply the provided configuration. - ``` monaco deploy manifest.yaml ``` -## Configure GitHub to send Webhook events to Dynatrace +### 2. Configure GitHub to send Webhook events to Dynatrace #### Create Dynatrace Access Token -To allow Dynatrace receiving GitHub webhook events that are processed using OpenPipeline, an access token with *openpipeline scopes* is needed. +An access token with *openpipeline scopes* is needed for Dynatrace to receive GitHub webhook events processed via OpenPipeline. 1. In Dynatrace, navigate to **Access Tokens**. 2. Click **Generate new token**. @@ -96,11 +111,11 @@ To allow Dynatrace receiving GitHub webhook events that are processed using Open - `openpipeline.events_sdlc.custom` - `openpipeline.events_sdlc` 5. Click **Generate token** -6. Save the generated token securely for subsequent steps. It will be referred as `YOUR-ACCESS-TOKEN`. +6. Save the generated token securely for subsequent steps. It will be referred as ``. ​ #### Configure GitHub Webhook -You can configure webhooks at either the organization level (affecting all repositories) or the repository level. Note that *Lead Time For Changes* calculations and monitoring will only include the repositories where webhooks are configured. +You can configure webhooks at either the organization level (affecting all repositories) or the repository level. 1. In GitHub, select your organization or repository. 2. Go to **Settings** > **Webhooks**. @@ -108,7 +123,7 @@ You can configure webhooks at either the organization level (affecting all repos 4. Configure the following settings: - **Payload URL**: ``` - https://{your-environment-id}.live.dynatrace.com/platform/ingest/custom/events.sdlc/github?api-token={YOUR-ACCESS-TOKEN} + https://{your-environment-id}.live.dynatrace.com/platform/ingest/custom/events.sdlc/github?api-token= ``` - **Content Type**: `application/json` - **Which events would you like to trigger this webhook?**: Select *Let me select individual events* and enable: @@ -118,3 +133,33 @@ You can configure webhooks at either the organization level (affecting all repos - (disable "Pushes") 5. Select **Active** to receive event details when the hook is triggered. 6. Click **Add webhook** to save the webhook. + +### 3. Work with GitHub and observe organization-wide activities in Dashboards + +1. In GitHub, let your developers create pull requests and execute workflows. Each interaction will be sent to Dynatrace. +2. In Dynatrace, navigate to **Dashboards**. +3. Open the **GitHub Pull Request** Dashboard to observe real-time activities of pull requests in your organization or seleced repositories. +4. Open the **GitHub Workflow** Dashboard to observe and analyze workflow execution details, job insights, and step durations for all GitHub workflows in your organization or selected repositories. + +## Conclusion + +**Provide feedback in community** + + +## Further reading + +**Pipeline Observability** +* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post) +* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs) + +**Software Development Lifecycle Events** +* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (docs) +* [SDLC event specification]() (docs) + +## FAQ + +* What are Software Development Lifecycle (SDLC) events? + * SDLC events are events with a separate event kind in Dynatrace that follow a well-defined semantic for capturing data points from a software component's software development lifecycle. The [SDLC event specification]() defines the semantics of those events and will be extended based on the covered use cases. + +* Why have GitHub webhook events been changed into SDLC events? + * The main benefit is data normalization and the ability to become tool agnostic. As a result, Dynatrace Dashboards, Apps, and Automation can build on SDLC events with well-defined properties rather than tool-specific details. \ No newline at end of file diff --git a/github_pipeline_observability/manifest.yaml b/github_pipeline_observability/manifest.yaml index a131016..b811a71 100644 --- a/github_pipeline_observability/manifest.yaml +++ b/github_pipeline_observability/manifest.yaml @@ -4,10 +4,10 @@ projects: environmentGroups: - name: group environments: - - name: + - name: url: type: value - value: + value: https://.apps.dynatrace.com auth: oAuth: clientId: diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json index 1fc27dd..37b2914 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json @@ -498,7 +498,7 @@ "type": "markdown" }, "15": { - "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0", + "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0", "title": "", "type": "markdown" }, diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json index 756b3ee..8b2ce09 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json @@ -1858,7 +1858,7 @@ "type": "markdown" }, "33": { - "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0", + "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0", "title": "", "type": "markdown" }, From d61d72518aae98b6d09419ca31c654778547c2ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Wed, 29 Jan 2025 14:26:42 +0100 Subject: [PATCH 16/25] Minor changes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/README.md | 30 +++++++++++++++---------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index 8aebe48..43a36f3 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -1,4 +1,4 @@ -# Observe your GitHub Pull Requests and Workflows with Dashboards and normalized SLDC events through OpenPipeline +# Observe your GitHub Pull Requests and Workflows with Dashboards and normalized SDLC events through OpenPipeline Enable Platform Engineering teams to grasp and analyze the efficiency of GitHub workflows and processes bound to GitHub pull requests to drive improvements and optimize the Internal Development Platform (IDP). By better understanding the integration of GitHub into your development routines or delivery processes, you can set actions in the following directions: @@ -28,19 +28,26 @@ In this tutorial, you will learn how to forward GitHub webhook events to Dynatra * View documents: `document:documents:read` 3. Store the retrieved client ID, secret, and token endpoint as an environment variable. + ``` -$env:OAUTH_CLIENT_ID = -$env:OAUTH_CLIENT_SECRET = -$env:OAUTH_TOKEN_ENDPOINT = 'https://sso.dynatrace.com/sso/oauth2/token' +$env:OAUTH_CLIENT_ID='' +$env:OAUTH_CLIENT_SECRET='' +$env:OAUTH_TOKEN_ENDPOINT='https://sso.dynatrace.com/sso/oauth2/token' +``` + +``` +export OAUTH_CLIENT_ID='' +export OAUTH_CLIENT_SECRET='' +export OAUTH_TOKEN_ENDPOINT='https://sso.dynatrace.com/sso/oauth2/token' ``` -4. Clone the *Dynatrace configuration as code sample* repository and go to `github_pipeline_observability`. +4. Clone the [Dynatrace configuration as code sample](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples) repository and go to `github_pipeline_observability`. ``` git clone https://github.com/Dynatrace/dynatrace-configuration-as-code-samples.git cd github_pipeline_observability ``` -5. Edit the `manifest.yaml` by exchanging `` with your Dynatrace environment ID. +5. Edit the `manifest.yaml` by exchanging the `` placeholder with your Dynatrace environment ID. ``` manifestVersion: 1.0 projects: @@ -65,7 +72,7 @@ environmentGroups: ## Steps -### 1. Configure Dynatrace by leveraging Monaco +### 1. Configure Dynatrace using Monaco In this section, you will upload two Dashboards and configure the ingest endpoint for GitHub Webhooks in Dynatrace. Before you continue, please check your OpenPipeline configuration for *Software development lifecycle events*. @@ -121,9 +128,9 @@ You can configure webhooks at either the organization level (affecting all repos 2. Go to **Settings** > **Webhooks**. 3. Click **Add webhook**. 4. Configure the following settings: - - **Payload URL**: + - **Payload URL**: Please exchange the placeholders `` and `` with your Dynatrace environment ID and access token, respectively. ``` - https://{your-environment-id}.live.dynatrace.com/platform/ingest/custom/events.sdlc/github?api-token= + https://.live.dynatrace.com/platform/ingest/custom/events.sdlc/github?api-token= ``` - **Content Type**: `application/json` - **Which events would you like to trigger this webhook?**: Select *Let me select individual events* and enable: @@ -141,10 +148,9 @@ You can configure webhooks at either the organization level (affecting all repos 3. Open the **GitHub Pull Request** Dashboard to observe real-time activities of pull requests in your organization or seleced repositories. 4. Open the **GitHub Workflow** Dashboard to observe and analyze workflow execution details, job insights, and step durations for all GitHub workflows in your organization or selected repositories. -## Conclusion - -**Provide feedback in community** +## Call to action +We highly value your insights on GitHub pipeline observability. Your feedback is crucial in helping us enhance our tools and services. Please visit the Dynatrace Community page to share your experiences, suggestions, and ideas. Your contributions are instrumental in shaping the future of our platform. Join the discussion today and make a difference! ## Further reading From 6967ed8ebae99f1c818c7f9af2b17436a732009f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Thu, 30 Jan 2025 09:35:42 +0100 Subject: [PATCH 17/25] Added a security disclaimer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index 43a36f3..5f9f336 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -16,6 +16,11 @@ While GitHub provides you *Insights* into [Actions Usage/Performance Metrics](ht In this tutorial, you will learn how to forward GitHub webhook events to Dynatrace, normalize the ingested event data, and use ready-made dashboards to analyze the data and derive improvements. +> **Security Disclaimer**: This tutorial involves the use of a Dynatrace access token in GitHub webhook configuration, which could be misused if accessed by unauthorized individuals. To mitigate this risk, please adhere to the following security best practices: +> * **Minimal Permissions**: Assign the least set of permissions necessary for the access token, as outlined in this tutorial. +> * **Access Control**: Limit the ability to configure webhooks in GitHub to a small group of authorized personnel. +> * **Token Security**: Never commit the access token to a Git repository. + ## Prerequisites 1. [Install Dynatrace Configuration as Code via Monaco](https://docs.dynatrace.com/docs/deliver/configuration-as-code/monaco/installation) @@ -109,7 +114,7 @@ monaco deploy manifest.yaml #### Create Dynatrace Access Token -An access token with *openpipeline scopes* is needed for Dynatrace to receive GitHub webhook events processed via OpenPipeline. +An access token with *openpipeline scopes* is needed for Dynatrace to receive GitHub webhook events processed by OpenPipeline. 1. In Dynatrace, navigate to **Access Tokens**. 2. Click **Generate new token**. From 894c56b78fef90e7d8f9ad3e8489e077cf8d1d7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Thu, 30 Jan 2025 09:54:32 +0100 Subject: [PATCH 18/25] Added the origin of the dashboard MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../document-dashboard/github.pull_request.json | 2 +- .../document-dashboard/github.workflow.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json index 37b2914..73485d8 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json @@ -498,7 +498,7 @@ "type": "markdown" }, "15": { - "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0", + "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0, [Origin](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples)", "title": "", "type": "markdown" }, diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json index 8b2ce09..40a5749 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json @@ -1858,7 +1858,7 @@ "type": "markdown" }, "33": { - "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0", + "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0, [Origin](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples)", "title": "", "type": "markdown" }, From 2a8e89150bf8175113541b53375e909e94d6abb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Thu, 30 Jan 2025 15:11:04 +0100 Subject: [PATCH 19/25] Added FAQ section MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index 5f9f336..9157630 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -173,4 +173,7 @@ We highly value your insights on GitHub pipeline observability. Your feedback is * SDLC events are events with a separate event kind in Dynatrace that follow a well-defined semantic for capturing data points from a software component's software development lifecycle. The [SDLC event specification]() defines the semantics of those events and will be extended based on the covered use cases. * Why have GitHub webhook events been changed into SDLC events? - * The main benefit is data normalization and the ability to become tool agnostic. As a result, Dynatrace Dashboards, Apps, and Automation can build on SDLC events with well-defined properties rather than tool-specific details. \ No newline at end of file + * The main benefit is data normalization and the ability to become tool agnostic. As a result, Dynatrace Dashboards, Apps, and Automation can build on SDLC events with well-defined properties rather than tool-specific details. + +* Why going with GitHub webhooks instead of REST API? + * Using webhooks has the following advantages over using the API: (1) Webhooks require less effort and less resources than polling an API. (2) Webhooks scale better than API calls. (3) Webhooks allow near real-time updates, since webhooks are triggered when an event happens. See [Choosing webhooks or the REST API](https://docs.github.com/en/webhooks/about-webhooks#choosing-webhooks-or-the-rest-api) for more details. \ No newline at end of file From 9cacca39ddf2f1867c9e0385e39f01dc064976b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Tue, 4 Feb 2025 13:24:11 +0100 Subject: [PATCH 20/25] Added a share feedback section MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../document-dashboard/config.yaml | 12 +- .../github.pull_request.json | 191 ++++++- .../document-dashboard/github.workflow.json | 475 ++++++++++++++---- 3 files changed, 542 insertions(+), 136 deletions(-) diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml index f8b8909..22a1e64 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/config.yaml @@ -1,7 +1,7 @@ configs: -- id: 0a635714-5545-4413-95e1-023333e8edac +- id: 5a2319c6-228d-4d03-a424-acd22c7b6814 config: - name: GitHub Workflow v.0.3.0 + name: GitHub Workflow v.0.3.1 parameters: extractedIDs: type: value @@ -9,17 +9,17 @@ configs: id_3420b2ac_f1cf_4b24_b62d_61ba1ba8ed05: 3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05 template: github.workflow.json skip: false - originObjectId: 0a635714-5545-4413-95e1-023333e8edac + originObjectId: 5a2319c6-228d-4d03-a424-acd22c7b6814 type: document: kind: dashboard private: true -- id: f9847607-0c63-4f8a-99bd-92e7cf7d86db +- id: 6098c0a5-2a3a-405f-90d2-2cbd9342aeae config: - name: GitHub Pull Request v.0.3.0 + name: GitHub Pull Request v.0.3.1 template: github.pull_request.json skip: false - originObjectId: f9847607-0c63-4f8a-99bd-92e7cf7d86db + originObjectId: 6098c0a5-2a3a-405f-90d2-2cbd9342aeae type: document: kind: dashboard diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json index 73485d8..a73adfc 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json @@ -11,7 +11,7 @@ "h": 3, "w": 4, "x": 4, - "y": 4 + "y": 7 }, "10": { "h": 3, @@ -38,7 +38,7 @@ "y": 2 }, "15": { - "h": 6, + "h": 8, "w": 24, "x": 0, "y": 29 @@ -61,18 +61,18 @@ "x": 16, "y": 4 }, - "19": { - "h": 3, - "w": 4, - "x": 4, - "y": 7 - }, "2": { "h": 5, "w": 24, "x": 0, "y": 10 }, + "20": { + "h": 3, + "w": 4, + "x": 4, + "y": 4 + }, "3": { "h": 3, "w": 4, @@ -498,7 +498,7 @@ "type": "markdown" }, "15": { - "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0, [Origin](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples)", + "content": "#### Share feedback \nWe welcome your feedback on this dashboard to help us improve and deliver a more effective observability solution, ensuring it provides maximum value to your software development lifecycle and delivery processes. Please post a comment here: [Feedback channel for CI/CD Pipeline Observability](https://community.dynatrace.com/t5/Platform-Engineering/Feedback-channel-for-CI-CD-Pipeline-Observability/m-p/269193/highlight/true#M1) (Dynatrace Community).\n#\n---\n\n#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (Blog Post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (Docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (Docs)\n* [SDLC event specification]() (Docs)\n#\n---\n\n#### About this dashboard\n\nPreview Release v0.3.0, [Origin](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples)", "title": "", "type": "markdown" }, @@ -517,11 +517,6 @@ "title": "", "type": "markdown" }, - "19": { - "content": "Average Time Open", - "title": "", - "type": "markdown" - }, "2": { "davis": { "davisVisualization": { @@ -543,9 +538,22 @@ "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { - "categoryAxisLabel": "PR_title,Source_repo,Source_ref,Target_repo,Target_ref", + "categoryAxis": [ + "Title", + "URL", + "HeadName", + "HeadRevision", + "BaseName", + "BaseRevision" + ], + "categoryAxisLabel": "Title,URL,HeadName,HeadRevision,BaseName,BaseRevision", "tooltipVariant": "single", - "valueAxisLabel": "In_open_status,GlobalId" + "valueAxis": [ + "In_open_status", + "PR", + "GlobalId" + ], + "valueAxisLabel": "In_open_status,PR,GlobalId" }, "categoryOverrides": {}, "circleChartSettings": { @@ -554,18 +562,25 @@ "valueType": "relative" }, "curve": "linear", + "fieldMapping": { + "leftAxisValues": [ + "In_open_status" + ], + "timestamp": "CreatedAt" + }, "gapPolicy": "connect", "hiddenLegendFields": [ "In_open_status", "PR_number", - "GlobalId" + "GlobalId", + "PR" ], "leftYAxisSettings": {}, "pointsDisplay": "auto", "truncationMode": "middle", "valueRepresentation": "absolute", "xAxisIsLabelVisible": false, - "xAxisLabel": "Created_at", + "xAxisLabel": "CreatedAt", "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { @@ -580,8 +595,17 @@ "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": {}, - "displayedFields": [], + "dataMappings": { + "value": "In_open_status" + }, + "displayedFields": [ + "Title", + "URL", + "HeadName", + "HeadRevision", + "BaseName", + "BaseRevision" + ], "legend": { "hidden": false, "position": "auto" @@ -662,6 +686,113 @@ } } }, + "20": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now()) - toTimestamp(start_time) \n| summarize avg(OpenedPrDuration)", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "title": "Average Time Open", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "autoSelectVisualization": false, + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "avg(OpenedPrDuration)" + ], + "categoryAxisLabel": "avg(OpenedPrDuration)", + "categoryAxisTickLayout": "horizontal", + "colorPaletteMode": "multi-color", + "groupMode": "stacked", + "layout": "horizontal", + "scale": "absolute", + "tooltipVariant": "single", + "valueAxis": [ + "avg(OpenedPrDuration)" + ], + "valueAxisLabel": "avg(OpenedPrDuration)" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "colorPalette": "categorical", + "curve": "linear", + "gapPolicy": "gap", + "pointsDisplay": "auto", + "truncationMode": "middle", + "valueRepresentation": "absolute", + "xAxisScaling": "analyzedTimeframe" + }, + "histogram": { + "colorPalette": "categorical", + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "avg(OpenedPrDuration)" + } + ], + "displayedFields": [], + "legend": "auto", + "truncationMode": "middle", + "variant": "single", + "yAxis": { + "label": "Frequency", + "scale": "linear" + } + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "categorical", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon", + "truncationMode": "middle" + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "label": "avg(OpenedPrDuration)", + "prefixIcon": "", + "recordField": "avg(OpenedPrDuration)", + "showLabel": false, + "trend": { + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [] + } + }, "3": { "davis": { "davisVisualization": { @@ -789,7 +920,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.ref.base.name, $Repository) \n| filter in(vcs.ref.base.revision, $Branch)\n| dedup task.id\n| summarize percentile(duration, 50)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| summarize percentile(duration, 50)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -837,7 +968,12 @@ "value": "Count" }, "histogram": { - "dataMappings": [], + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "percentile(duration, 50)" + } + ], "displayedFields": [], "variant": "single" }, @@ -1109,15 +1245,20 @@ }, { "rangeAxis": "", - "valueAxis": "GlobalId" + "valueAxis": "PR" }, { "rangeAxis": "", - "valueAxis": "PR" + "valueAxis": "GlobalId" } ], "displayedFields": [ - "Title" + "Title", + "URL", + "HeadName", + "HeadRevision", + "BaseName", + "BaseRevision" ], "variant": "single" }, diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json index 40a5749..b64efc2 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json @@ -85,18 +85,6 @@ "x": 0, "y": 22 }, - "27": { - "h": 3, - "w": 4, - "x": 4, - "y": 24 - }, - "28": { - "h": 3, - "w": 4, - "x": 8, - "y": 24 - }, "3": { "h": 6, "w": 16, @@ -116,7 +104,7 @@ "y": 46 }, "33": { - "h": 6, + "h": 9, "w": 24, "x": 0, "y": 47 @@ -145,6 +133,18 @@ "x": 16, "y": 8 }, + "38": { + "h": 3, + "w": 4, + "x": 4, + "y": 24 + }, + "39": { + "h": 3, + "w": 4, + "x": 8, + "y": 24 + }, "4": { "h": 6, "w": 4, @@ -195,7 +195,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -341,7 +341,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -469,7 +469,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -595,7 +595,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -746,7 +746,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -926,11 +926,18 @@ "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { + "categoryAxis": [ + "step.name", + "step.task.name" + ], "categoryAxisLabel": "step.name,step.task.name", "colorPaletteMode": "multi-color", "groupMode": "grouped", "layout": "horizontal", "tooltipVariant": "grouped", + "valueAxis": [ + "failureRate" + ], "valueAxisLabel": "failureRate" }, "categoryOverrides": {}, @@ -957,8 +964,13 @@ "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": {}, - "displayedFields": [], + "dataMappings": { + "value": "failureRate" + }, + "displayedFields": [ + "step.name", + "step.task.name" + ], "legend": { "hidden": false, "position": "auto" @@ -1464,7 +1476,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -1588,16 +1600,6 @@ "title": "", "type": "markdown" }, - "27": { - "content": "Successful Jobs", - "title": "", - "type": "markdown" - }, - "28": { - "content": "Failed Jobs", - "title": "", - "type": "markdown" - }, "3": { "davis": { "davisVisualization": { @@ -1743,7 +1745,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -1858,7 +1860,7 @@ "type": "markdown" }, "33": { - "content": "#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (blog post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (docs)\n* [SDLC event specification]() (docs)\n#\n---\n\n#### About this dashboard\n\nRelease v0.3.0, [Origin](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples)", + "content": "#### Share feedback \nWe welcome your feedback on this dashboard to help us improve and deliver a more effective observability solution, ensuring it provides maximum value to your software development lifecycle and delivery processes. Please post a comment here: [Feedback channel for CI/CD Pipeline Observability](https://community.dynatrace.com/t5/Platform-Engineering/Feedback-channel-for-CI-CD-Pipeline-Observability/m-p/269193/highlight/true#M1) (Dynatrace Community).\n#\n---\n\n#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (Blog Post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (Docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (Docs)\n* [SDLC event specification]() (Docs)\n#\n---\n\n#### About this dashboard\n\nPreview Release v0.3.0, [Origin](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples)", "title": "", "type": "markdown" }, @@ -1879,12 +1881,12 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false }, - "title": "Total Workflow Executions", + "title": "Total Job Executions", "type": "data", "visualization": "singleValue", "visualizationSettings": { @@ -2007,7 +2009,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -2109,7 +2111,7 @@ }, "thresholds": [ { - "field": "failureRate", + "field": "successful", "id": 1, "isEnabled": true, "rules": [ @@ -2117,27 +2119,10 @@ "color": { "Default": "var(--dt-colors-charts-status-ideal-default, #2f6863)" }, - "comparator": "≤", + "comparator": "\u003e", "id": 0, "label": "", "value": 0 - }, - { - "color": { - "Default": "var(--dt-colors-charts-status-warning-default, #eca440)" - }, - "comparator": "≥", - "id": 1, - "label": "" - }, - { - "color": { - "Default": "var(--dt-colors-charts-status-critical-default, #c4233b)" - }, - "comparator": "≥", - "id": 2, - "label": "", - "value": 0 } ], "title": "" @@ -2181,7 +2166,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -2283,27 +2268,10 @@ }, "thresholds": [ { - "field": "failureRate", + "field": "failed", "id": 1, "isEnabled": true, "rules": [ - { - "color": { - "Default": "var(--dt-colors-charts-status-ideal-default, #2f6863)" - }, - "comparator": "≤", - "id": 0, - "label": "", - "value": 0 - }, - { - "color": { - "Default": "var(--dt-colors-charts-status-warning-default, #eca440)" - }, - "comparator": "≥", - "id": 1, - "label": "" - }, { "color": { "Default": "var(--dt-colors-charts-status-critical-default, #c4233b)" @@ -2311,7 +2279,7 @@ "comparator": "≥", "id": 2, "label": "", - "value": 0 + "value": 1 } ], "title": "" @@ -2355,7 +2323,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -2457,35 +2425,332 @@ }, "thresholds": [ { - "field": "failureRate", + "field": "other", "id": 1, "isEnabled": true, "rules": [ { "color": { - "Default": "var(--dt-colors-charts-status-ideal-default, #2f6863)" + "Default": "var(--dt-colors-charts-status-warning-default, #eca440)" }, - "comparator": "≤", - "id": 0, + "comparator": "≥", + "id": 1, "label": "", - "value": 0 - }, + "value": 1 + } + ], + "title": "" + } + ], + "tooltip": { + "showCustomFields": false + }, + "unitsOverrides": [ + { + "added": 1727678780356, + "baseUnit": "percent", + "decimals": 0, + "delimiter": true, + "displayUnit": null, + "identifier": "failureRate", + "suffix": "", + "unitCategory": "percentage" + } + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } + } + }, + "38": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"build\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name, cicd.pipeline.name, task.outcome\n| filter in(vcs.repository.name, $Repository) \n| summarize successful = countIf(task.outcome == \"success\")", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Successful Job Executions", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "successful" + ], + "categoryAxisLabel": "successful", + "tooltipVariant": "single", + "valueAxis": [ + "successful" + ], + "valueAxisLabel": "successful" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "legend": { + "hidden": true + }, + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "dataMapping": { + "dimension": "successful", + "displayedFields": [], + "longitude": "successful", + "value": "failureRate" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "successful" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "failureRate", + "showLabel": false + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "isIconVisible": true, + "label": "failureRate", + "prefixIcon": "SuccessIcon", + "recordField": "successful", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [ + { + "field": "successful", + "id": 1, + "isEnabled": true, + "rules": [ { "color": { - "Default": "var(--dt-colors-charts-status-warning-default, #eca440)" + "Default": "var(--dt-colors-charts-status-ideal-default, #2f6863)" }, - "comparator": "≥", - "id": 1, - "label": "" - }, + "comparator": "\u003e", + "id": 0, + "label": "", + "value": 0 + } + ], + "title": "" + } + ], + "tooltip": { + "showCustomFields": false + }, + "unitsOverrides": [ + { + "added": 1727678780356, + "baseUnit": "percent", + "decimals": 0, + "delimiter": true, + "displayUnit": null, + "identifier": "failureRate", + "suffix": "", + "unitCategory": "percentage" + } + ], + "valueBoundaries": { + "max": "auto", + "min": "auto" + } + } + }, + "39": { + "davis": { + "davisVisualization": { + "isAvailable": true + }, + "enabled": false + }, + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"build\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fields vcs.repository.name, cicd.pipeline.name, task.outcome\n| filter in(vcs.repository.name, $Repository) \n| summarize failure = countIf(task.outcome == \"failure\")", + "querySettings": { + "defaultSamplingRatio": 10, + "defaultScanLimitGbytes": 500, + "enableSampling": false, + "maxResultMegaBytes": 1, + "maxResultRecords": 1000 + }, + "timeframe": { + "tileTimeframe": { + "from": "-7d", + "to": "now()" + }, + "tileTimeframeEnabled": false + }, + "title": "Failed Job Executions", + "type": "data", + "visualization": "singleValue", + "visualizationSettings": { + "chartSettings": { + "categoricalBarChartSettings": { + "categoryAxis": [ + "failure" + ], + "categoryAxisLabel": "failure", + "tooltipVariant": "single", + "valueAxis": [ + "failure" + ], + "valueAxisLabel": "failure" + }, + "categoryOverrides": {}, + "circleChartSettings": { + "groupingThresholdType": "relative", + "groupingThresholdValue": 0, + "valueType": "relative" + }, + "curve": "linear", + "gapPolicy": "connect", + "legend": { + "hidden": true + }, + "pointsDisplay": "auto", + "truncationMode": "middle", + "xAxisScaling": "analyzedTimeframe" + }, + "dataMapping": { + "dimension": "failure", + "displayedFields": [], + "longitude": "failure", + "value": "failureRate" + }, + "histogram": { + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "failure" + } + ], + "displayedFields": [], + "variant": "single" + }, + "honeycomb": { + "colorMode": "color-palette", + "colorPalette": "blue", + "dataMappings": {}, + "displayedFields": [], + "legend": { + "hidden": false, + "position": "auto" + }, + "shape": "hexagon" + }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "failureRate", + "showLabel": false + }, + "singleValue": { + "alignment": "center", + "autoscale": true, + "colorThresholdTarget": "value", + "isIconVisible": true, + "label": "failureRate", + "prefixIcon": "SuccessIcon", + "recordField": "failure", + "showLabel": false, + "sparklineSettings": { + "isVisible": true + }, + "trend": { + "isLabelVisible": false, + "isVisible": true, + "trendType": "auto" + } + }, + "table": { + "columnTypeOverrides": [], + "columnWidths": {}, + "enableSparklines": false, + "hiddenColumns": [], + "lineWrapIds": [], + "linewrapEnabled": false, + "monospacedFontColumns": [], + "monospacedFontEnabled": false, + "rowDensity": "condensed" + }, + "thresholds": [ + { + "field": "failure", + "id": 1, + "isEnabled": true, + "rules": [ { "color": { - "Default": "var(--dt-colors-charts-status-critical-default, #c4233b)" + "Default": "var(--dt-colors-charts-categorical-color-12-default, #cd3741)" }, "comparator": "≥", - "id": 2, + "id": 0, "label": "", - "value": 0 + "value": 1 } ], "title": "" @@ -2529,7 +2794,7 @@ }, "timeframe": { "tileTimeframe": { - "from": "now()-7d", + "from": "-7d", "to": "now()" }, "tileTimeframeEnabled": false @@ -2862,22 +3127,12 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "vcs.repository.name", "displayedFields": [], - "longitude": "failureRate", "value": "failureRate" }, "histogram": { - "dataMappings": [ - { - "rangeAxis": "", - "valueAxis": "failureRate" - } - ], - "displayedFields": [ - "vcs.repository.name", - "cicd.pipeline.name" - ], + "dataMappings": [], + "displayedFields": [], "variant": "single" }, "honeycomb": { @@ -2971,9 +3226,15 @@ "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { + "categoryAxis": [ + "task.name" + ], "categoryAxisLabel": "task.name", "colorPaletteMode": "multi-color", "tooltipVariant": "single", + "valueAxis": [ + "failureRate" + ], "valueAxisLabel": "failureRate" }, "categoryOverrides": {}, @@ -3000,8 +3261,12 @@ "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": {}, - "displayedFields": [], + "dataMappings": { + "value": "failureRate" + }, + "displayedFields": [ + "task.name" + ], "legend": { "hidden": false, "position": "auto" From 97dc44eaece2ac8ce7083289efea8588b592f758 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Wed, 5 Feb 2025 10:50:06 +0100 Subject: [PATCH 21/25] Changed title of a tile MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../document-dashboard/github.pull_request.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json index a73adfc..d3f8b16 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json @@ -1343,7 +1343,7 @@ "maxResultMegaBytes": 1, "maxResultRecords": 1000 }, - "title": " Open PRs by Repository", + "title": "Open PRs by Branch", "type": "data", "visualization": "pieChart", "visualizationSettings": { From e6c24c8e784bf6a96cd8e7cc29285f1b2094292e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Thu, 6 Feb 2025 14:02:16 +0100 Subject: [PATCH 22/25] Proposal for change event MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../change.finished.md | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 github_pipeline_observability/change.finished.md diff --git a/github_pipeline_observability/change.finished.md b/github_pipeline_observability/change.finished.md new file mode 100644 index 0000000..7bcec8c --- /dev/null +++ b/github_pipeline_observability/change.finished.md @@ -0,0 +1,35 @@ +### Change event for Semantic Dictionary + +`task.change.[open/merged/closed]` + +| Property | Value | Description | +|---|---|---| +| event.id | | +| event.kind | `SDLC_EVENT` | x +| event.version | `0.1.0` | x +| event.category | `task` | x +| event.type | `change` | x +| event.provider | `github.com` | x +| event.status | [`merged`, `closed`, `open`] | x +| duration | *merged_at - created_at* | x +| start_time | *created_at* | x +| end_time | *merged_at or closed_at* | x +| timestamp | | x +| | | | +| task.id | `871023010` | The unique task identifier. +| task.name | `docs: Update of Readme.md` | A human-readable name for a task. +| task.outcome | `success` | Outcome of a task run. +| | | | +| vcs.change.id | `4711` | The identifier of the change, for example, pull request ID or merge request ID. It is typically unique per repository and generated by the version control system itself. +| vcs.change.title | `docs: Update of Readme.md` | The human-readable title of the change, for example, pull request title or merge request title. **Attention:** Ident to: "task.name" +| vcs.change.state | [`merged`, `closed`, `open`] | The state of the change (pull request/merge request/changelist). **Attention:** Ident to: "event.status" +| vcs.repository.name | `johannes-b/platform-engineering-demo` | The human readable name of the repository. +| vcs.repository.url.full | `https://github.com/johannes-b/platform-engineering-demo` | The repository's full URL. +| vcs.ref.head.name | `feature/34/add-button` | The name of the reference in the repository. This can be a branch name or a tag name. +| vcs.ref.head.revision | `a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88` | The revision in the repository. For Git, this is a synonym for a commit hash, whereas in SVN, it is a revision number. +| vcs.ref.base.name | `main` | The name of the reference in the repository. This can be a branch name or a tag name. +| vcs.ref.base.revision | `05a7199180e7df5f38c9c78efcf0e4474eb52065` | The revision in the repository. For Git this is a synonym for a commit hash, whereas in SVN it is a revision number. +| | | | +| **NEW** vcs.change.number | `40` | A human-readable number for the pull request or merge request. +| **NEW** vcs.change.url.full | `https://github.com/github-org/SourceCodeRepo-1/pull/20` | The full URL of the pull request or merge request. + From 6288dbc99c1ff7b35bdcc1663e291dfe6adab598 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Fri, 7 Feb 2025 13:59:37 +0100 Subject: [PATCH 23/25] Changed queries to remove join MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- github_pipeline_observability/.gitignore | 5 +- .../github.pull_request.json | 28 ++++- .../document-dashboard/github.workflow.json | 115 ++++++++---------- .../openpipeline/events.sdlc.github.json | 2 +- 4 files changed, 82 insertions(+), 68 deletions(-) diff --git a/github_pipeline_observability/.gitignore b/github_pipeline_observability/.gitignore index 711531a..20f657b 100644 --- a/github_pipeline_observability/.gitignore +++ b/github_pipeline_observability/.gitignore @@ -1,3 +1,2 @@ -environment_variables.txt -manifest_local.yaml -manifest_khd45734.yaml \ No newline at end of file +environment_* +manifest_* \ No newline at end of file diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json index d3f8b16..bc29746 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json @@ -737,6 +737,11 @@ "valueRepresentation": "absolute", "xAxisScaling": "analyzedTimeframe" }, + "dataMapping": { + "displayedFields": [], + "longitude": "avg(OpenedPrDuration)", + "value": "avg(OpenedPrDuration)" + }, "histogram": { "colorPalette": "categorical", "dataMappings": [ @@ -766,6 +771,14 @@ "shape": "hexagon", "truncationMode": "middle" }, + "icon": { + "icon": "", + "showIcon": false + }, + "label": { + "label": "avg(OpenedPrDuration)", + "showLabel": false + }, "singleValue": { "alignment": "center", "autoscale": true, @@ -790,7 +803,14 @@ "monospacedFontEnabled": false, "rowDensity": "condensed" }, - "thresholds": [] + "thresholds": [], + "tooltip": { + "showCustomFields": false + }, + "valueBoundaries": { + "max": "auto", + "min": "auto" + } } }, "3": { @@ -960,11 +980,13 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { + "dimension": "percentile(duration, 50)", "displayedFields": [ "Count", "Median", "Avg" ], + "longitude": "percentile(duration, 50)", "value": "Count" }, "histogram": { @@ -1245,11 +1267,11 @@ }, { "rangeAxis": "", - "valueAxis": "PR" + "valueAxis": "GlobalId" }, { "rangeAxis": "", - "valueAxis": "GlobalId" + "valueAxis": "PR" } ], "displayedFields": [ diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json index b64efc2..3e8bf59 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json @@ -912,7 +912,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type== \"build\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| fieldsAdd steps_array = toArray(task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.name, cicd.pipeline.run.trigger \n | filter in(vcs.repository.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(cicd.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.conclusion = steps_data[conclusion], \nstep.task.name = task.name\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(step.conclusion==\"failure\")) / toDouble(count())*100), by: {step.name, step.task.name} \n| filter failureRate \u003e 0 \n| sort failureRate desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.provider == \"github.com\"\n| filter (event.category == \"task\" and event.status == \"finished\") \n or\n ( event.category == \"pipeline\" and event.type == \"run\" and event.status == \"finished\" \n and in(vcs.repository.name, $Repository) \n and in(cicd.pipeline.name, $Workflow) \n and in(cicd.pipeline.run.trigger, $Trigger)\n )\n| summarize { \n tasks = arrayRemoveNulls(collectArray(if(event.category == \"task\", record(task.name, task.steps), else: null))),\n has_matching_runs = countif(event.category == \"pipeline\")\n}, by: { cicd.pipeline.run.id }\n| expand tasks\n| filterOut has_matching_runs == 0\n| fieldsAdd steps_array=toArray(tasks[task.steps]) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| fieldsAdd \n step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \n step.name = steps_data[name], \n step.conclusion = steps_data[conclusion], \n step.task.name = tasks[task.name]\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(step.conclusion==\"failure\")) / toDouble(count())*100), by: {step.name, step.task.name} \n| filter failureRate \u003e 0 \n| sort failureRate desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -926,18 +926,11 @@ "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { - "categoryAxis": [ - "step.name", - "step.task.name" - ], "categoryAxisLabel": "step.name,step.task.name", "colorPaletteMode": "multi-color", "groupMode": "grouped", "layout": "horizontal", "tooltipVariant": "grouped", - "valueAxis": [ - "failureRate" - ], "valueAxisLabel": "failureRate" }, "categoryOverrides": {}, @@ -954,7 +947,8 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "displayedFields": [] + "displayedFields": [], + "value": "failureRate" }, "histogram": { "dataMappings": [], @@ -964,13 +958,8 @@ "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": { - "value": "failureRate" - }, - "displayedFields": [ - "step.name", - "step.task.name" - ], + "dataMappings": {}, + "displayedFields": [], "legend": { "hidden": false, "position": "auto" @@ -982,6 +971,7 @@ "showIcon": false }, "label": { + "label": "failureRate", "showLabel": false }, "singleValue": { @@ -1025,7 +1015,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type== \"build\"\n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.name, cicd.pipeline.run.trigger \n | filter in(vcs.repository.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(cicd.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| fieldsAdd steps_array=toArray(task.steps) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| fieldsAdd step.duration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \nstep.name = steps_data[name], \nstep.task.name = task.name\n| summarize percentile(step.duration,50), alias:Median ,by:{step.name, alias: StepName, step.task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter (event.category == \"task\" and event.status == \"finished\" and event.provider == \"github.com\") \n or\n ( event.category == \"pipeline\" and event.type == \"run\" and event.status == \"finished\" \n and in(vcs.repository.name, $Repository) \n and in(cicd.pipeline.name, $Workflow) \n and in(cicd.pipeline.run.trigger, $Trigger)\n )\n| summarize { \n tasks = arrayRemoveNulls(collectArray(if(event.category == \"task\", record(task.name, task.steps), else: null))),\n has_matching_runs = countif(event.category == \"pipeline\")\n}, by: { cicd.pipeline.run.id }\n| expand tasks\n| filterOut has_matching_runs == 0\n| fieldsAdd steps_array=toArray(tasks[task.steps]) \n| expand steps_array \n| parse steps_array,\"JSON:steps_data\" \n| fieldsAdd \n StepDuration = toTimestamp(steps_data[completed_at]) - toTimestamp(steps_data[started_at]), \n StepName = steps_data[name], \n TaskName = tasks[task.name]\n| summarize percentile(StepDuration, 50), alias:Median ,by:{StepName, TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1162,7 +1152,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\"\n| filter event.type == \"build\"\n| filter event.status == \"finished\"\n| filter event.provider == \"github.com\"\n| join [\n fetch events \n | filter event.category == \"pipeline\" \n | filter event.status == \"finished\" \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.type==\"run\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.name, cicd.pipeline.run.trigger \n | filter in(vcs.repository.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(cicd.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize Count=count(), by:{task.runner.name} \n| sort Count desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.provider == \"github.com\"\n| filter (event.category == \"task\" and event.status == \"finished\") \n or\n ( event.category == \"pipeline\" and event.type == \"run\" and event.status == \"finished\" \n and in(vcs.repository.name, $Repository) \n and in(cicd.pipeline.name, $Workflow) \n and in(cicd.pipeline.run.trigger, $Trigger)\n )\n| summarize { \n tasks = arrayRemoveNulls(collectArray(if(event.category == \"task\", record(task.name, task.runner.name), else: null))),\n has_matching_runs = countif(event.category == \"pipeline\")\n}, by: { cicd.pipeline.run.id }\n| expand tasks\n| filterOut has_matching_runs == 0 \n| summarize Count=count(), by:{tasks[task.runner.name]} \n| sort Count desc", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1177,9 +1167,9 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "task.runner.name" + "tasks[task.runner.name]" ], - "categoryAxisLabel": "task.runner.name", + "categoryAxisLabel": "tasks[task.runner.name]", "colorPaletteMode": "multi-color", "tooltipVariant": "single", "valueAxis": [ @@ -1204,7 +1194,7 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "task.runner.name", + "dimension": "tasks[task.runner.name]", "displayedFields": [ "task.runner.name", "Count" @@ -1220,7 +1210,7 @@ } ], "displayedFields": [ - "task.runner.name" + "tasks[task.runner.name]" ], "variant": "single" }, @@ -1231,7 +1221,7 @@ "value": "Count" }, "displayedFields": [ - "task.runner.name" + "tasks[task.runner.name]" ], "legend": { "hidden": false, @@ -1300,7 +1290,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"pipeline\" \n| filter event.type == \"run\" \n| filter event.status == \"started\" \n| filter in(vcs.repository.name, $Repository) \n| filter in(cicd.pipeline.name, $Workflow) \n| filter in(cicd.pipeline.run.trigger, $Trigger) \n| fields start_time, cicd.pipeline.run.id, cicd.pipeline.run.attempt\n| joinNested jobs=[\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"task\" \n | filter event.type ==\"build\" \n | filter event.status == \"started\" \n | filter event.provider==\"github.com\" \n | fields cicd.pipeline.run.id, task.run.attempt, start_time \n | sort start_time asc ],\n on: {cicd.pipeline.run.id,left[cicd.pipeline.run.attempt] == right[task.run.attempt]} \n| fieldsAdd queueTime = jobs[0][start_time] - start_time ", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.provider == \"github.com\"\n| filter (event.category == \"task\" and event.status == \"started\") \n or\n ( event.category == \"pipeline\" and event.type == \"run\" and event.status == \"started\" \n and in(vcs.repository.name, $Repository) \n and in(cicd.pipeline.name, $Workflow) \n and in(cicd.pipeline.run.trigger, $Trigger)\n )\n| summarize { \n tasks = arrayRemoveNulls(collectArray(if(event.category == \"task\", record(task.name, start_time, task.run.attempt), else: null))),\n pipeline_run = arrayRemoveNulls(collectArray(if(event.category == \"pipeline\", record(pipeline.name, start_time, cicd.pipeline.run.attempt), else: null))),\n has_matching_pipeline = countif(event.category == \"pipeline\")\n}, by: { cicd.pipeline.run.id }\n| expand tasks\n| expand pipeline_run\n| filterOut has_matching_pipeline == 0\n| filterOut tasks[task.run.attempt] != pipeline_run[cicd.pipeline.run.attempt]\n| fieldsAdd queueTime = tasks[start_time] - pipeline_run[start_time], startTime = pipeline_run[start_time]\n| sort queueTime", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1317,10 +1307,10 @@ "categoricalBarChartSettings": { "categoryAxis": [ "cicd.pipeline.run.id", - "cicd.pipeline.run.attempt", + "has_matching_pipeline", "queueTime" ], - "categoryAxisLabel": "cicd.pipeline.run.id,cicd.pipeline.run.attempt,queueTime", + "categoryAxisLabel": "cicd.pipeline.run.id,has_matching_pipeline,queueTime", "categoryAxisTickLayout": "horizontal", "colorPaletteMode": "multi-color", "groupMode": "stacked", @@ -1329,10 +1319,10 @@ "tooltipVariant": "single", "valueAxis": [ "cicd.pipeline.run.id", - "cicd.pipeline.run.attempt", + "has_matching_pipeline", "queueTime" ], - "valueAxisLabel": "cicd.pipeline.run.id,cicd.pipeline.run.attempt,queueTime" + "valueAxisLabel": "cicd.pipeline.run.id,has_matching_pipeline,queueTime" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1346,14 +1336,15 @@ "leftAxisValues": [ "queueTime" ], - "timestamp": "start_time" + "timestamp": "startTime" }, "gapPolicy": "connect", "hiddenLegendFields": [ "cicd.pipeline.run.id", "cicd.pipeline.run.attempt", "timeToStart", - "queueTime" + "queueTime", + "has_matching_pipeline" ], "leftYAxisSettings": { "isLabelVisible": true, @@ -1367,18 +1358,18 @@ "truncationMode": "middle", "valueRepresentation": "absolute", "xAxisIsLabelVisible": false, - "xAxisLabel": "start_time", + "xAxisLabel": "startTime", "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "start_time", + "dimension": "cicd.pipeline.run.id", "displayedFields": [ "start_time", "cicd.pipeline.run.id", "cicd.pipeline.run.attempt", "timeToStart" ], - "latitude": "cicd.pipeline.run.attempt", + "latitude": "has_matching_pipeline", "longitude": "cicd.pipeline.run.id", "value": "cicd.pipeline.run.id" }, @@ -1391,7 +1382,7 @@ }, { "rangeAxis": "", - "valueAxis": "cicd.pipeline.run.attempt" + "valueAxis": "has_matching_pipeline" }, { "rangeAxis": "", @@ -1607,7 +1598,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\"\n| filter event.category == \"task\" \n| filter event.type == \"build\"\n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| filter task.outcome != \"skipped\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\"\n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.name, cicd.pipeline.run.trigger \n | filter in(vcs.repository.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(cicd.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize percentile(duration,50), alias:Median ,by:{task.name, alias: TaskName} \n| filter isNotNull(Median) \n| sort Median desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.provider == \"github.com\"\n| filter (event.category == \"task\" and event.status == \"finished\") \n or\n ( event.category == \"pipeline\" and event.type == \"run\" and event.status == \"finished\" \n and in(vcs.repository.name, $Repository) \n and in(cicd.pipeline.name, $Workflow) \n and in(cicd.pipeline.run.trigger, $Trigger)\n )\n| summarize { \n tasks = arrayRemoveNulls(collectArray(if(event.category == \"task\", record(task.name, duration), else: null))),\n has_matching_runs = countif(event.category == \"pipeline\")\n}, by: { cicd.pipeline.run.id }\n| expand tasks\n| filterOut has_matching_runs == 0 \n| summarize {\n duration = percentile(tasks[duration], 50)\n}, by: { task.name = tasks[task.name] }\n| sort duration desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1623,15 +1614,15 @@ "chartSettings": { "categoricalBarChartSettings": { "categoryAxis": [ - "TaskName" + "task.name" ], - "categoryAxisLabel": "TaskName", + "categoryAxisLabel": "task.name", "colorPaletteMode": "multi-color", "tooltipVariant": "single", "valueAxis": [ - "Median" + "duration" ], - "valueAxisLabel": "Median" + "valueAxisLabel": "duration" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1651,23 +1642,23 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "dimension": "TaskName", + "dimension": "task.name", "displayedFields": [ "TaskName", "Median" ], - "longitude": "Median", + "longitude": "duration", "value": "Median" }, "histogram": { "dataMappings": [ { "rangeAxis": "", - "valueAxis": "Median" + "valueAxis": "duration" } ], "displayedFields": [ - "TaskName" + "task.name" ], "variant": "single" }, @@ -1675,10 +1666,10 @@ "colorMode": "color-palette", "colorPalette": "blue", "dataMappings": { - "value": "Median" + "value": "duration" }, "displayedFields": [ - "TaskName" + "task.name" ], "legend": { "hidden": false, @@ -3127,12 +3118,22 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { + "dimension": "vcs.repository.name", "displayedFields": [], + "longitude": "failureRate", "value": "failureRate" }, "histogram": { - "dataMappings": [], - "displayedFields": [], + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "failureRate" + } + ], + "displayedFields": [ + "vcs.repository.name", + "cicd.pipeline.name" + ], "variant": "single" }, "honeycomb": { @@ -3212,7 +3213,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\" \n| join [\n fetch events \n | filter event.kind == \"SDLC_EVENT\" \n | filter event.category == \"pipeline\" \n | filter event.type == \"run\" \n | filter event.status == \"finished\" \n | fields cicd.pipeline.run.id, cicd.pipeline.name, vcs.repository.name, cicd.pipeline.run.trigger \n | filter in(vcs.repository.name, $Repository) \n | filter in(cicd.pipeline.name, $Workflow) \n | filter in(cicd.pipeline.run.trigger, $Trigger) ], \n on:{cicd.pipeline.run.id}\n| summarize failureRate=if(count() == 0, 0, else: toDouble(countIf(task.outcome==\"failure\")) / toDouble(count())*100), by: task.name \n| filter failureRate\u003e0 \n| sort failureRate desc \n| limit 5", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.provider == \"github.com\"\n| filter (event.category == \"task\" and event.status == \"finished\") \n or\n ( event.category == \"pipeline\" and event.type == \"run\" and event.status == \"finished\" \n and in(vcs.repository.name, $Repository) \n and in(cicd.pipeline.name, $Workflow) \n and in(cicd.pipeline.run.trigger, $Trigger)\n )\n| summarize { \n tasks = arrayRemoveNulls(collectArray(if(event.category == \"task\", record(task.name, failure = if(task.outcome==\"failure\",1)), else: null))),\n has_matching_runs = countif(event.category == \"pipeline\")\n}, by: { cicd.pipeline.run.id }\n| expand tasks\n| filterOut has_matching_runs == 0 \n| summarize {\n failureRate = 100 * sum(tasks[failure]) / count() \n}, by: {task.name = tasks[task.name] }\n| filter failureRate \u003e 0 \n| sort failureRate desc \n| limit 5", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -3226,15 +3227,9 @@ "visualizationSettings": { "chartSettings": { "categoricalBarChartSettings": { - "categoryAxis": [ - "task.name" - ], "categoryAxisLabel": "task.name", "colorPaletteMode": "multi-color", "tooltipVariant": "single", - "valueAxis": [ - "failureRate" - ], "valueAxisLabel": "failureRate" }, "categoryOverrides": {}, @@ -3251,7 +3246,8 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "displayedFields": [] + "displayedFields": [], + "value": "failureRate" }, "histogram": { "dataMappings": [], @@ -3261,12 +3257,8 @@ "honeycomb": { "colorMode": "color-palette", "colorPalette": "blue", - "dataMappings": { - "value": "failureRate" - }, - "displayedFields": [ - "task.name" - ], + "dataMappings": {}, + "displayedFields": [], "legend": { "hidden": false, "position": "auto" @@ -3278,6 +3270,7 @@ "showIcon": false }, "label": { + "label": "failureRate", "showLabel": false }, "singleValue": { diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json index 9f2ad84..50642bb 100644 --- a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json +++ b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json @@ -283,7 +283,7 @@ { "builtin": false, "description": "start_time", - "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{created_at} \n| fieldsAdd start_time = toTimestamp(created_at)\n| fieldsRemove record_json, created_at", + "dqlScript": "parse workflow_run, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_started_at} \n| fieldsAdd start_time = toTimestamp(run_started_at)\n| fieldsRemove record_json, run_started_at", "editable": true, "enabled": true, "id": "github:workflow:start_time_8369", From a742ee59bc9ee3a956ff0a253f34883c6ecfb708 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Mon, 10 Feb 2025 10:44:40 +0100 Subject: [PATCH 24/25] Update github_pipeline_observability/README.md Co-authored-by: Christian Kreuzberger --- github_pipeline_observability/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/github_pipeline_observability/README.md b/github_pipeline_observability/README.md index 9157630..1768bff 100644 --- a/github_pipeline_observability/README.md +++ b/github_pipeline_observability/README.md @@ -103,7 +103,7 @@ monaco deploy manifest.yaml monaco download ``` -2. Merge the content of `download__\project\openpipline\events.sdlc.json` into the file `events.sdlc.github.json`. +2. Merge the content of `download__/project/openpipline/events.sdlc.json` into the file `events.sdlc.github.json`. 3. Run the following command to apply the provided configuration. ``` From c19b79b38dfd5c21aee97773dcaa0bd5e64e1360 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Br=C3=A4uer?= Date: Wed, 19 Feb 2025 16:43:29 +0100 Subject: [PATCH 25/25] Aligned with changes on change spec MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Johannes Bräuer --- .../change.finished.md | 15 +- .../github.pull_request.json | 184 +++++++++--------- .../document-dashboard/github.workflow.json | 107 ++++------ .../openpipeline/events.sdlc.github.json | 79 ++++---- 4 files changed, 168 insertions(+), 217 deletions(-) diff --git a/github_pipeline_observability/change.finished.md b/github_pipeline_observability/change.finished.md index 7bcec8c..3bf40fc 100644 --- a/github_pipeline_observability/change.finished.md +++ b/github_pipeline_observability/change.finished.md @@ -10,26 +10,23 @@ | event.category | `task` | x | event.type | `change` | x | event.provider | `github.com` | x -| event.status | [`merged`, `closed`, `open`] | x +| event.status | [`started`, `finished`] | x | duration | *merged_at - created_at* | x | start_time | *created_at* | x | end_time | *merged_at or closed_at* | x | timestamp | | x | | | | -| task.id | `871023010` | The unique task identifier. -| task.name | `docs: Update of Readme.md` | A human-readable name for a task. -| task.outcome | `success` | Outcome of a task run. +| task.id | `871023010` | The unique task identifier. The internal identifier of the change. It is typically unique per repository and generated by the version control system itself +| task.name | `[Change Request] docs: Update of Readme.md` | A human-readable name for a task. +| task.outcome | `success` | `optional` Outcome of a task run. | | | | | vcs.change.id | `4711` | The identifier of the change, for example, pull request ID or merge request ID. It is typically unique per repository and generated by the version control system itself. | vcs.change.title | `docs: Update of Readme.md` | The human-readable title of the change, for example, pull request title or merge request title. **Attention:** Ident to: "task.name" -| vcs.change.state | [`merged`, `closed`, `open`] | The state of the change (pull request/merge request/changelist). **Attention:** Ident to: "event.status" +| vcs.change.state | [`wip`, `open`, `closed`, `merged`, `reopened`] | The state of the change (pull request/merge request/changelist). **Attention:** Ident to: "event.status" | vcs.repository.name | `johannes-b/platform-engineering-demo` | The human readable name of the repository. | vcs.repository.url.full | `https://github.com/johannes-b/platform-engineering-demo` | The repository's full URL. | vcs.ref.head.name | `feature/34/add-button` | The name of the reference in the repository. This can be a branch name or a tag name. | vcs.ref.head.revision | `a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88` | The revision in the repository. For Git, this is a synonym for a commit hash, whereas in SVN, it is a revision number. | vcs.ref.base.name | `main` | The name of the reference in the repository. This can be a branch name or a tag name. | vcs.ref.base.revision | `05a7199180e7df5f38c9c78efcf0e4474eb52065` | The revision in the repository. For Git this is a synonym for a commit hash, whereas in SVN it is a revision number. -| | | | -| **NEW** vcs.change.number | `40` | A human-readable number for the pull request or merge request. -| **NEW** vcs.change.url.full | `https://github.com/github-org/SourceCodeRepo-1/pull/20` | The full URL of the pull request or merge request. - +| vcs.change.url.full | `https://github.com/github-org/SourceCodeRepo-1/pull/20` | The full URL of the pull request or merge request. \ No newline at end of file diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json index bc29746..a231111 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.pull_request.json @@ -49,18 +49,6 @@ "x": 0, "y": 28 }, - "17": { - "h": 6, - "w": 8, - "x": 16, - "y": 17 - }, - "18": { - "h": 6, - "w": 8, - "x": 16, - "y": 4 - }, "2": { "h": 5, "w": 24, @@ -119,7 +107,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time, number, vcs.repository.name, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time, number, vcs.repository.name, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"finished\")) \n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -202,6 +190,7 @@ "prefixIcon": "", "recordField": "count()", "showLabel": false, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -235,7 +224,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now()) - toTimestamp(start_time) \n| summarize max(OpenedPrDuration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"finished\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now()) - toTimestamp(start_time) \n| summarize max(OpenedPrDuration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -275,9 +264,7 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "displayedFields": [ - "count()" - ], + "displayedFields": [], "longitude": "max(OpenedPrDuration)", "value": "count()" }, @@ -319,9 +306,7 @@ "prefixIcon": "", "recordField": "max(OpenedPrDuration)", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -367,7 +352,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status), actions = collectArray(vcs.change.state) }, by: { task.id, task.name, start_time,number, vcs.repository.name, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"merged\", \"closed\")) \n| filter contains(toString(actions),\"reopened\")\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status), actions = collectArray(vcs.change.state) }, by: { task.id, task.name, start_time,number, vcs.repository.name, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"finished\")) \n| filter contains(toString(actions),\"reopened\")\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -454,6 +439,7 @@ "prefixIcon": "", "recordField": "count()", "showLabel": false, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -488,7 +474,7 @@ "type": "markdown" }, "12": { - "content": "### Merged Pull Requests\n\nThis section provides a clear and detailed view of the merged pull requests, helping you to understand the efficiency and effectiveness of your code integration process.\n\n-----", + "content": "### Merged \u0026 Closed Pull Requests\n\nThis section provides a clear and detailed view of the merged pull requests, helping you to understand the efficiency and effectiveness of your code integration process.\n\n-----", "title": "", "type": "markdown" }, @@ -498,7 +484,7 @@ "type": "markdown" }, "15": { - "content": "#### Share feedback \nWe welcome your feedback on this dashboard to help us improve and deliver a more effective observability solution, ensuring it provides maximum value to your software development lifecycle and delivery processes. Please post a comment here: [Feedback channel for CI/CD Pipeline Observability](https://community.dynatrace.com/t5/Platform-Engineering/Feedback-channel-for-CI-CD-Pipeline-Observability/m-p/269193/highlight/true#M1) (Dynatrace Community).\n#\n---\n\n#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (Blog Post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (Docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (Docs)\n* [SDLC event specification]() (Docs)\n#\n---\n\n#### About this dashboard\n\nPreview Release v0.3.0, [Origin](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples)", + "content": "#### Share feedback \nWe welcome your feedback on this dashboard to help us improve and deliver a more effective observability solution, ensuring it provides maximum value to your software development lifecycle and delivery processes. Please post a comment here: [Feedback channel for CI/CD Pipeline Observability](https://community.dynatrace.com/t5/Platform-Engineering/Feedback-channel-for-CI-CD-Pipeline-Observability/m-p/269193/highlight/true#M1) (Dynatrace Community).\n#\n---\n\n#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (Blog Post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (Docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (Docs)\n* [SDLC event specification]() (Docs)\n#\n---\n\n#### About this dashboard\n\nPreview Release v0.3.1, [Origin](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples)", "title": "", "type": "markdown" }, @@ -507,16 +493,6 @@ "title": "", "type": "markdown" }, - "17": { - "content": "Merged PRs by Author", - "title": "", - "type": "markdown" - }, - "18": { - "content": "Open PRs by Author", - "title": "", - "type": "markdown" - }, "2": { "davis": { "davisVisualization": { @@ -524,7 +500,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time, ext.vcs.change.pull_request.number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url, vcs.change.id } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fields \nIn_open_status = toTimestamp(now()) - toTimestamp(start_time),\nPR = ext.vcs.change.pull_request.number, \nTitle = task.name,\nURL = ext.vcs.change.pull_request.url,\nHeadName = vcs.ref.head.name, \nHeadRevision = vcs.ref.head.revision, \nBaseName = vcs.ref.base.name, \nBaseRevision = vcs.ref.base.revision,\nCreatedAt = start_time, \nGlobalId = vcs.change.id \n| sort In_open_status desc", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, start_time, vcs.change.id, vcs.change.title, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, vcs.change.url.full } \n| filter not in(statuses[0],array(\"finished\")) \n| fields \nIn_open_status = toTimestamp(now()) - toTimestamp(start_time),\nPR = vcs.change.id, \nTitle = vcs.change.title,\nURL = vcs.change.url.full,\nHeadName = vcs.ref.head.name, \nHeadRevision = vcs.ref.head.revision, \nBaseName = vcs.ref.base.name, \nBaseRevision = vcs.ref.base.revision,\nCreatedAt = start_time\n| sort In_open_status desc", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -550,10 +526,9 @@ "tooltipVariant": "single", "valueAxis": [ "In_open_status", - "PR", - "GlobalId" + "PR" ], - "valueAxisLabel": "In_open_status,PR,GlobalId" + "valueAxisLabel": "In_open_status,PR" }, "categoryOverrides": {}, "circleChartSettings": { @@ -584,12 +559,39 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "displayedFields": [], + "dimension": "In_open_status", + "displayedFields": [ + "Title", + "URL", + "HeadName", + "HeadRevision", + "BaseName", + "BaseRevision", + "CreatedAt" + ], + "latitude": "PR", + "longitude": "In_open_status", "value": "PR_number" }, "histogram": { - "dataMappings": [], - "displayedFields": [], + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "In_open_status" + }, + { + "rangeAxis": "", + "valueAxis": "PR" + } + ], + "displayedFields": [ + "Title", + "URL", + "HeadName", + "HeadRevision", + "BaseName", + "BaseRevision" + ], "variant": "single" }, "honeycomb": { @@ -628,9 +630,7 @@ "prefixIcon": "", "recordField": "max(Duration)", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -693,7 +693,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"merged\",\"closed\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now()) - toTimestamp(start_time) \n| summarize avg(OpenedPrDuration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by: { task.id, task.name, start_time,number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"finished\")) \n| fieldsAdd OpenedPrDuration = toTimestamp(now()) - toTimestamp(start_time) \n| summarize avg(OpenedPrDuration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -787,6 +787,7 @@ "prefixIcon": "", "recordField": "avg(OpenedPrDuration)", "showLabel": false, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -820,7 +821,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| summarize count()", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| summarize count()", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -861,11 +862,7 @@ }, "dataMapping": { "dimension": "count()", - "displayedFields": [ - "Count", - "Median", - "Avg" - ], + "displayedFields": [], "longitude": "count()", "value": "Count" }, @@ -940,7 +937,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| summarize percentile(duration, 50)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| summarize percentile(duration, 50)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -981,11 +978,7 @@ }, "dataMapping": { "dimension": "percentile(duration, 50)", - "displayedFields": [ - "Count", - "Median", - "Avg" - ], + "displayedFields": [], "longitude": "percentile(duration, 50)", "value": "Count" }, @@ -1061,7 +1054,7 @@ "enabled": false }, "description": "Shows the average time taken to merge pull requests, providing insights into the efficiency of the review and merge process.", - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| summarize avg(duration)", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| summarize avg(duration)", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1102,11 +1095,7 @@ }, "dataMapping": { "dimension": "avg(duration)", - "displayedFields": [ - "Count", - "Median", - "Avg" - ], + "displayedFields": [], "longitude": "avg(duration)", "value": "Count" }, @@ -1181,7 +1170,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider ==\"github.com\" \n| sort timestamp asc\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| fields \nMergedAt = end_time,\nDuration = duration, \nPR = ext.vcs.change.pull_request.number, \nTitle = task.name,\nURL = ext.vcs.change.pull_request.url,\nHeadName = vcs.ref.head.name, \nHeadRevision = vcs.ref.head.revision, \nBaseName = vcs.ref.base.name, \nBaseRevision = vcs.ref.base.revision, \nCreatedAt = start_time, \nGlobalId = vcs.change.id \n| sort Duration desc", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"finished\" \n| filter event.provider ==\"github.com\" \n| sort timestamp asc\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| fields \nMergedAt = end_time,\nDuration = duration, \nPR = vcs.change.id, \nTitle = vcs.change.title,\nURL = vcs.change.url.full, \nHeadName = vcs.ref.head.name, \nHeadRevision = vcs.ref.head.revision, \nBaseName = vcs.ref.base.name, \nBaseRevision = vcs.ref.base.revision, \nCreatedAt = start_time\n| sort Duration desc", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1197,20 +1186,19 @@ "categoricalBarChartSettings": { "categoryAxis": [ "Title", + "URL", "HeadName", "HeadRevision", "BaseName", - "BaseRevision", - "URL" + "BaseRevision" ], - "categoryAxisLabel": "Title,HeadName,HeadRevision,BaseName,BaseRevision,URL", + "categoryAxisLabel": "Title,URL,HeadName,HeadRevision,BaseName,BaseRevision", "tooltipVariant": "single", "valueAxis": [ "Duration", - "GlobalId", "PR" ], - "valueAxisLabel": "Duration,GlobalId,PR" + "valueAxisLabel": "Duration,PR" }, "categoryOverrides": {}, "circleChartSettings": { @@ -1223,7 +1211,7 @@ "leftAxisValues": [ "Duration" ], - "timestamp": "MergedAt" + "timestamp": "CreatedAt" }, "gapPolicy": "connect", "hiddenLegendFields": [ @@ -1237,25 +1225,22 @@ "truncationMode": "middle", "valueRepresentation": "absolute", "xAxisIsLabelVisible": false, - "xAxisLabel": "MergedAt", + "xAxisLabel": "CreatedAt", "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { "dimension": "MergedAt", "displayedFields": [ - "Duration", - "Number", + "MergedAt", "Title", - "Url", - "SourceRepository", - "SourceRef", - "TargetRepository", - "TargetRef", - "CreatedAt", - "MergetAt", - "GlobalId" + "URL", + "HeadName", + "HeadRevision", + "BaseName", + "BaseRevision", + "CreatedAt" ], - "latitude": "GlobalId", + "latitude": "PR", "longitude": "Duration", "value": "Number" }, @@ -1265,18 +1250,12 @@ "rangeAxis": "", "valueAxis": "Duration" }, - { - "rangeAxis": "", - "valueAxis": "GlobalId" - }, { "rangeAxis": "", "valueAxis": "PR" } ], "displayedFields": [ - "Title", - "URL", "HeadName", "HeadRevision", "BaseName", @@ -1292,11 +1271,11 @@ }, "displayedFields": [ "Title", + "URL", "HeadName", "HeadRevision", "BaseName", - "BaseRevision", - "URL" + "BaseRevision" ], "legend": { "hidden": false, @@ -1320,6 +1299,7 @@ "prefixIcon": "", "recordField": "Avg", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -1357,7 +1337,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by:{ task.id, task.name, start_time, number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"merged\", \"closed\")) \n| summarize count(), by:{vcs.ref.base.name}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| sort timestamp desc\n| summarize { statuses = collectArray(event.status) }, by:{ task.id, task.name, start_time, number, vcs.ref.base.name, vcs.ref.base.revision, vcs.ref.head.name, vcs.ref.head.revision, ext.vcs.change.pull_request.url } \n| filter not in(statuses[0],array(\"finished\")) \n| summarize count(), by:{vcs.ref.base.name}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1399,12 +1379,23 @@ "xAxisScaling": "analyzedTimeframe" }, "dataMapping": { - "displayedFields": [], + "dimension": "vcs.ref.base.name", + "displayedFields": [ + "vcs.ref.base.name" + ], + "longitude": "count()", "value": "count()" }, "histogram": { - "dataMappings": [], - "displayedFields": [], + "dataMappings": [ + { + "rangeAxis": "", + "valueAxis": "count()" + } + ], + "displayedFields": [ + "vcs.ref.base.name" + ], "variant": "single" }, "honeycomb": { @@ -1440,6 +1431,7 @@ "prefixIcon": "", "recordField": "count()", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -1473,7 +1465,7 @@ }, "enabled": false }, - "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"merged\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| sort timestamp asc\n| dedup task.id\n| summarize count = count(), by:{vcs.repository.name}", + "query": "fetch events \n| filter event.kind == \"SDLC_EVENT\" \n| filter event.category == \"task\" \n| filter event.type == \"change\" \n| filter event.status == \"finished\" \n| filter event.provider == \"github.com\"\n| filter in(vcs.repository.name, $Repository) \n| filter in(vcs.ref.base.name, $Branch)\n| dedup task.id\n| sort timestamp asc\n| dedup task.id\n| summarize count = count(), by:{vcs.repository.name}", "querySettings": { "defaultSamplingRatio": 10, "defaultScanLimitGbytes": 500, @@ -1516,8 +1508,7 @@ "dataMapping": { "dimension": "vcs.repository.name", "displayedFields": [ - "vcs.repository.name", - "Count" + "vcs.repository.name" ], "longitude": "count", "value": "Count" @@ -1565,6 +1556,7 @@ "prefixIcon": "", "recordField": "Avg", "showLabel": false, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" diff --git a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json index 3e8bf59..b15f0ea 100644 --- a/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json +++ b/github_pipeline_observability/pipeline_observability/document-dashboard/github.workflow.json @@ -249,8 +249,7 @@ "dataMapping": { "dimension": "cicd.pipeline.run.outcome", "displayedFields": [ - "cicd.pipeline.run.outcome", - "count()" + "cicd.pipeline.run.outcome" ], "longitude": "count()", "value": "count()" @@ -298,6 +297,7 @@ "prefixIcon": "", "recordField": "cicd.pipeline.run.outcome", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -379,9 +379,7 @@ }, "dataMapping": { "dimension": "count()", - "displayedFields": [ - "count()" - ], + "displayedFields": [], "longitude": "count()", "value": "count()" }, @@ -422,9 +420,7 @@ "prefixIcon": "", "recordField": "count()", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -507,9 +503,7 @@ }, "dataMapping": { "dimension": "median(duration)", - "displayedFields": [ - "avg(duration)" - ], + "displayedFields": [], "longitude": "median(duration)", "value": "avg(duration)" }, @@ -654,8 +648,7 @@ "dataMapping": { "dimension": "cicd.pipeline.run.trigger", "displayedFields": [ - "cicd.pipeline.run.trigger", - "count()" + "cicd.pipeline.run.trigger" ], "longitude": "count()", "value": "count()" @@ -703,6 +696,7 @@ "prefixIcon": "", "recordField": "cicd.pipeline.run.outcome", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -784,9 +778,7 @@ }, "dataMapping": { "dimension": "count()", - "displayedFields": [ - "count()" - ], + "displayedFields": [], "longitude": "count()", "value": "count()" }, @@ -828,9 +820,7 @@ "prefixIcon": "", "recordField": "count()", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -1063,8 +1053,7 @@ "dimension": "StepName", "displayedFields": [ "StepName", - "TaskName", - "Median" + "TaskName" ], "longitude": "Median", "value": "Median" @@ -1114,6 +1103,7 @@ "prefixIcon": "", "recordField": "error", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -1196,8 +1186,7 @@ "dataMapping": { "dimension": "tasks[task.runner.name]", "displayedFields": [ - "task.runner.name", - "Count" + "tasks[task.runner.name]" ], "longitude": "Count", "value": "Count" @@ -1245,6 +1234,7 @@ "prefixIcon": "", "recordField": "error", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -1364,10 +1354,9 @@ "dataMapping": { "dimension": "cicd.pipeline.run.id", "displayedFields": [ - "start_time", - "cicd.pipeline.run.id", - "cicd.pipeline.run.attempt", - "timeToStart" + "tasks", + "pipeline_run", + "startTime" ], "latitude": "has_matching_pipeline", "longitude": "cicd.pipeline.run.id", @@ -1426,6 +1415,7 @@ "prefixIcon": "", "recordField": "start_time", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -1505,9 +1495,7 @@ }, "dataMapping": { "dimension": "avg(duration)", - "displayedFields": [ - "median(duration)" - ], + "displayedFields": [], "longitude": "avg(duration)", "value": "median(duration)" }, @@ -1644,8 +1632,7 @@ "dataMapping": { "dimension": "task.name", "displayedFields": [ - "TaskName", - "Median" + "task.name" ], "longitude": "duration", "value": "Median" @@ -1693,6 +1680,7 @@ "prefixIcon": "", "recordField": "error", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -1774,9 +1762,7 @@ }, "dataMapping": { "dimension": "avg(duration)", - "displayedFields": [ - "median(duration)" - ], + "displayedFields": [], "longitude": "avg(duration)", "value": "median(duration)" }, @@ -1851,7 +1837,7 @@ "type": "markdown" }, "33": { - "content": "#### Share feedback \nWe welcome your feedback on this dashboard to help us improve and deliver a more effective observability solution, ensuring it provides maximum value to your software development lifecycle and delivery processes. Please post a comment here: [Feedback channel for CI/CD Pipeline Observability](https://community.dynatrace.com/t5/Platform-Engineering/Feedback-channel-for-CI-CD-Pipeline-Observability/m-p/269193/highlight/true#M1) (Dynatrace Community).\n#\n---\n\n#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (Blog Post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (Docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (Docs)\n* [SDLC event specification]() (Docs)\n#\n---\n\n#### About this dashboard\n\nPreview Release v0.3.0, [Origin](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples)", + "content": "#### Share feedback \nWe welcome your feedback on this dashboard to help us improve and deliver a more effective observability solution, ensuring it provides maximum value to your software development lifecycle and delivery processes. Please post a comment here: [Feedback channel for CI/CD Pipeline Observability](https://community.dynatrace.com/t5/Platform-Engineering/Feedback-channel-for-CI-CD-Pipeline-Observability/m-p/269193/highlight/true#M1) (Dynatrace Community).\n#\n---\n\n#### Additional resources\n**Pipeline Observability**\n* [Observability throughout the software development lifecycle increases delivery performance](https://www.dynatrace.com/news/blog/observability-throughout-the-software-development-lifecycle/) (Blog Post)\n* [Concepts](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/pipeline-observability-concepts) (Docs)\n\n**Software Development Lifecycle Events**\n* [Ingest SDLC events](https://docs.dynatrace.com/docs/deliver/pipeline-observability-sdlc-events/sdlc-events) (Docs)\n* [SDLC event specification]() (Docs)\n#\n---\n\n#### About this dashboard\n\nPreview Release v0.3.1, [Origin](https://github.com/Dynatrace/dynatrace-configuration-as-code-samples)", "title": "", "type": "markdown" }, @@ -1910,9 +1896,7 @@ }, "dataMapping": { "dimension": "count()", - "displayedFields": [ - "count()" - ], + "displayedFields": [], "longitude": "count()", "value": "count()" }, @@ -1953,9 +1937,7 @@ "prefixIcon": "", "recordField": "count()", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -2080,9 +2062,7 @@ "prefixIcon": "SuccessIcon", "recordField": "successful", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -2237,9 +2217,7 @@ "prefixIcon": "CriticalFailedIcon", "recordField": "failed", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -2394,9 +2372,7 @@ "prefixIcon": "WarningIcon", "recordField": "other", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -2551,9 +2527,7 @@ "prefixIcon": "SuccessIcon", "recordField": "successful", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -2708,9 +2682,7 @@ "prefixIcon": "SuccessIcon", "recordField": "failure", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -2864,9 +2836,7 @@ "prefixIcon": "", "recordField": "failureRate", "showLabel": false, - "sparklineSettings": { - "isVisible": true - }, + "sparklineSettings": {}, "trend": { "isLabelVisible": false, "isVisible": true, @@ -2992,8 +2962,7 @@ "dataMapping": { "dimension": "name", "displayedFields": [ - "name", - "Median" + "name" ], "longitude": "Median", "value": "Median" @@ -3041,6 +3010,7 @@ "prefixIcon": "", "recordField": "error", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -3119,7 +3089,10 @@ }, "dataMapping": { "dimension": "vcs.repository.name", - "displayedFields": [], + "displayedFields": [ + "vcs.repository.name", + "cicd.pipeline.name" + ], "longitude": "failureRate", "value": "failureRate" }, @@ -3168,6 +3141,7 @@ "prefixIcon": "", "recordField": "error", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" @@ -3386,15 +3360,13 @@ "dataMapping": { "dimension": "Duration", "displayedFields": [ - "Duration", "Name", - "Status", "Run", - "Attempts", "Trigger", "Start", "End", - "Repository" + "Repository", + "Status" ], "latitude": "Attempts", "longitude": "Duration", @@ -3455,6 +3427,7 @@ "prefixIcon": "", "recordField": "error", "showLabel": true, + "sparklineSettings": {}, "trend": { "isVisible": true, "trendType": "auto" diff --git a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json index 50642bb..5cb22fe 100644 --- a/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json +++ b/github_pipeline_observability/pipeline_observability/openpipeline/events.sdlc.github.json @@ -536,8 +536,8 @@ }, { "builtin": false, - "description": "cicd.pipeline.run.id | task.id | name", - "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_id, id, name} \n| fieldsRename cicd.pipeline.run.id = run_id\n| fieldsRename task.id = id\n| fieldsRename task.name = name\n| fieldsRemove record_json", + "description": "cicd.pipeline.run.id", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_id, id, name} \n| fieldsRename cicd.pipeline.run.id = run_id\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:job:pipeline.run.id_task_id_name_4478", @@ -545,6 +545,17 @@ "sampleData": "{\n \"workflow_job\": {\n \"id\": 26975944402,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q-0g\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944402\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944402\",\n \"status\": \"completed\",\n \"conclusion\": \"failure\",\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:11Z\",\n \"completed_at\": \"2024-07-03T04:58:11Z\",\n \"name\": \"SecondJob\"\n }\n}", "type": "dql" }, + { + "builtin": false, + "description": "task.id | name", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{run_id, id, name} \n| fieldsRename task.id = id\n| fieldsRename task.name = name\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "processor_task.id___name_4623", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", + "type": "dql" + }, { "builtin": false, "description": "task.run.attempt", @@ -567,6 +578,17 @@ "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", "type": "dql" }, + { + "builtin": false, + "description": "task.runner.name | group.name", + "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{runner_name, runner_group_name} \n| fieldsRename task.runner.name = runner_name\n| fieldsRename task.runner.group.name = runner_group_name\n| fieldsRemove record_json", + "editable": true, + "enabled": true, + "id": "github:job:task.runner.name_group_name_3013", + "matcher": "isNotNull(workflow_job) ", + "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", + "type": "dql" + }, { "builtin": false, "description": "task.outcome", @@ -600,17 +622,6 @@ "sampleData": "{\n \"repository\": {\n \"id\": 699735486,\n \"node_id\": \"R_kgDOKbUdvg\",\n \"name\": \"actionspipeline\",\n \"full_name\": \"github-org/actionspipeline\",\n \"private\": false,\n \"owner\": {\n \"login\": \"github-org\",\n \"id\": 146819675,\n \"node_id\": \"O_kgDOCMBKWw\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/146819675?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-org\",\n \"html_url\": \"https://github.com/github-org\",\n \"followers_url\": \"https://api.github.com/users/github-org/followers\",\n \"following_url\": \"https://api.github.com/users/github-org/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-org/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-org/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-org/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-org/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-org/repos\",\n \"events_url\": \"https://api.github.com/users/github-org/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-org/received_events\",\n \"type\": \"Organization\",\n \"site_admin\": false\n },\n \"html_url\": \"https://github.com/github-org/actionspipeline\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline\",\n \"forks_url\": \"https://api.github.com/repos/github-org/actionspipeline/forks\",\n \"keys_url\": \"https://api.github.com/repos/github-org/actionspipeline/keys{/key_id}\",\n \"collaborators_url\": \"https://api.github.com/repos/github-org/actionspipeline/collaborators{/collaborator}\",\n \"teams_url\": \"https://api.github.com/repos/github-org/actionspipeline/teams\",\n \"hooks_url\": \"https://api.github.com/repos/github-org/actionspipeline/hooks\",\n \"issue_events_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/events{/number}\",\n \"events_url\": \"https://api.github.com/repos/github-org/actionspipeline/events\",\n \"assignees_url\": \"https://api.github.com/repos/github-org/actionspipeline/assignees{/user}\",\n \"branches_url\": \"https://api.github.com/repos/github-org/actionspipeline/branches{/branch}\",\n \"tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/tags\",\n \"blobs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/blobs{/sha}\",\n \"git_tags_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/tags{/sha}\",\n \"git_refs_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/refs{/sha}\",\n \"trees_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/trees{/sha}\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/actionspipeline/statuses/{sha}\",\n \"languages_url\": \"https://api.github.com/repos/github-org/actionspipeline/languages\",\n \"stargazers_url\": \"https://api.github.com/repos/github-org/actionspipeline/stargazers\",\n \"contributors_url\": \"https://api.github.com/repos/github-org/actionspipeline/contributors\",\n \"subscribers_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscribers\",\n \"subscription_url\": \"https://api.github.com/repos/github-org/actionspipeline/subscription\",\n \"commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/commits{/sha}\",\n \"git_commits_url\": \"https://api.github.com/repos/github-org/actionspipeline/git/commits{/sha}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/actionspipeline/comments{/number}\",\n \"issue_comment_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues/comments{/number}\",\n \"contents_url\": \"https://api.github.com/repos/github-org/actionspipeline/contents/{+path}\",\n \"compare_url\": \"https://api.github.com/repos/github-org/actionspipeline/compare/{base}...{head}\",\n \"merges_url\": \"https://api.github.com/repos/github-org/actionspipeline/merges\",\n \"archive_url\": \"https://api.github.com/repos/github-org/actionspipeline/{archive_format}{/ref}\",\n \"downloads_url\": \"https://api.github.com/repos/github-org/actionspipeline/downloads\",\n \"issues_url\": \"https://api.github.com/repos/github-org/actionspipeline/issues{/number}\",\n \"pulls_url\": \"https://api.github.com/repos/github-org/actionspipeline/pulls{/number}\",\n \"milestones_url\": \"https://api.github.com/repos/github-org/actionspipeline/milestones{/number}\",\n \"notifications_url\": \"https://api.github.com/repos/github-org/actionspipeline/notifications{?since,all,participating}\",\n \"labels_url\": \"https://api.github.com/repos/github-org/actionspipeline/labels{/name}\",\n \"releases_url\": \"https://api.github.com/repos/github-org/actionspipeline/releases{/id}\",\n \"deployments_url\": \"https://api.github.com/repos/github-org/actionspipeline/deployments\",\n \"created_at\": \"2023-10-03T08:30:00Z\",\n \"updated_at\": \"2024-06-06T05:35:45Z\",\n \"pushed_at\": \"2024-06-06T05:35:42Z\",\n \"git_url\": \"git://github.com/github-org/actionspipeline.git\",\n \"ssh_url\": \"git@github.com:github-org/actionspipeline.git\",\n \"clone_url\": \"https://github.com/github-org/actionspipeline.git\",\n \"svn_url\": \"https://github.com/github-org/actionspipeline\",\n \"homepage\": null,\n \"size\": 23,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": null,\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": false,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 1,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 1,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"custom_properties\": {}\n }\n}", "type": "dql" }, - { - "builtin": false, - "description": "task.runner.name | group.name", - "dqlScript": "parse workflow_job, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{runner_name, runner_group_name} \n| fieldsRename task.runner.name = runner_name\n| fieldsRename task.runner.group.name = runner_group_name\n| fieldsRemove record_json", - "editable": true, - "enabled": true, - "id": "github:job:task.runner.name_group_name_3013", - "matcher": "isNotNull(workflow_job) ", - "sampleData": "{\n \"action\": \"in_progress\",\n \"workflow_job\": {\n \"id\": 26975944571,\n \"run_id\": 9772103168,\n \"workflow_name\": \"CI\",\n \"head_branch\": \"main\",\n \"run_url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/runs/9772103168\",\n \"run_attempt\": 1,\n \"node_id\": \"CR_kwDOKbUdvs8AAAAGR-Q_ew\",\n \"head_sha\": \"f75d1d8f0e8b140da41511997b6ad1ccd6dfc6be\",\n \"url\": \"https://api.github.com/repos/github-org/actionspipeline/actions/jobs/26975944571\",\n \"html_url\": \"https://github.com/github-org/actionspipeline/actions/runs/9772103168/job/26975944571\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"created_at\": \"2024-07-03T04:58:04Z\",\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null,\n \"name\": \"FirstJob\",\n \"steps\": [\n {\n \"name\": \"Set up job\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 1,\n \"started_at\": \"2024-07-03T04:58:09Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run actions/checkout@v3\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 2,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a one-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 3,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Run a multi-line script\",\n \"status\": \"completed\",\n \"conclusion\": \"success\",\n \"number\": 4,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": \"2024-07-03T04:58:10Z\"\n },\n {\n \"name\": \"Post Run actions/checkout@v3\",\n \"status\": \"in_progress\",\n \"conclusion\": null,\n \"number\": 8,\n \"started_at\": \"2024-07-03T04:58:10Z\",\n \"completed_at\": null\n }\n ],\n \"check_run_url\": \"https://api.github.com/repos/github-org/actionspipeline/check-runs/26975944571\",\n \"labels\": [\n \"ubuntu-latest\"\n ],\n \"runner_id\": 28,\n \"runner_name\": \"GitHub Actions 11\",\n \"runner_group_id\": 2,\n \"runner_group_name\": \"GitHub Actions\"\n }\n }", - "type": "dql" - }, { "builtin": false, "description": "Cleanup", @@ -714,7 +725,7 @@ { "builtin": false, "description": "event.status", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged, state} \n| fieldsAdd if(merged == true, \"merged\", else: if(state == \"closed\", \"closed\", else: \"open\")), alias: event.status\n| fieldsRemove record_json, merged, state", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged, state} \n| fieldsAdd if(merged == true, \"finished\", else: if(state == \"closed\", \"finished\", else: \"started\")), alias: event.status\n| fieldsRemove record_json, merged, state", "editable": true, "enabled": true, "id": "github:pull-request:event.status_8886", @@ -725,12 +736,12 @@ { "builtin": false, "description": "duration", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged_at, created_at} \n| fieldsAdd if((merged_at \u003e created_at) and event.status == \"merged\", toTimestamp(merged_at) - toTimestamp(created_at), else: toDuration(0)), alias: duration\n| fieldsRemove record_json, merged_at, created_at", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged_at, created_at} \n| fieldsAdd if((merged_at \u003e created_at) and event.status == \"finished\", toTimestamp(merged_at) - toTimestamp(created_at), else: toDuration(0)), alias: duration\n| fieldsRemove record_json, merged_at, created_at", "editable": true, "enabled": true, "id": "github:pull-request:duration_3699", "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"event.status\":\"merged\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "sampleData": "{\n \"event.status\":\"finished\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -751,8 +762,8 @@ "editable": true, "enabled": true, "id": "github:pull-request:end_time_2015", - "matcher": "isNotNull(pull_request) and (event.status == \"merged\" or event.status == \"closed\")", - "sampleData": "{\n \"event.status\": \"merged\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", + "matcher": "isNotNull(pull_request) and (event.status == \"finished\")", + "sampleData": "{\n \"event.status\": \"finished\",\n \"action\": \"closed\",\n \"number\": \"40\",\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40\",\n \"id\": 2046146154,\n \"node_id\": \"PR_kwDOJ52pds559bZq\",\n \"html_url\": \"https://github.com/cookie-base/webapp/pull/40\",\n \"diff_url\": \"https://github.com/cookie-base/webapp/pull/40.diff\",\n \"patch_url\": \"https://github.com/cookie-base/webapp/pull/40.patch\",\n \"issue_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40\",\n \"number\": 40,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"refactor appButton \u0026 domain view\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 48052206,\n \"node_id\": \"MDQ6VXNlcjQ4MDUyMjA2\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/48052206?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-08-30T11:09:46Z\",\n \"updated_at\": \"2024-09-05T10:07:02Z\",\n \"closed_at\": \"2024-09-05T10:07:02Z\",\n \"merged_at\": \"2024-09-05T10:07:02Z\",\n \"merge_commit_sha\": \"a4372955f3030b9f2bfb3baee217a3717ad4b9e7\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/40/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/cookie-base/webapp/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/cookie-base/webapp/issues/40/comments\",\n \"statuses_url\": \"https://api.github.com/repos/cookie-base/webapp/statuses/0f9c9c500ec802c75bf17ac77a318af1a5be8c94\",\n \"author_association\": \"COLLABORATOR\",\n \"auto_merge\": null,\n \"active_lock_reason\": null,\n \"merged\": true,\n \"mergeable\": null,\n \"rebaseable\": null,\n \"mergeable_state\": \"unknown\",\n \"merged_by\": {\n \"login\": \"github-user\",\n \"id\": 9966695,\n \"node_id\": \"MDQ6VXNlcjk5NjY2OTU=\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/9966695?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 771,\n \"deletions\": 628,\n \"changed_files\": 26\n }\n}", "type": "dql" }, { @@ -769,7 +780,7 @@ { "builtin": false, "description": "task.id | name", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename task.id = id\n| fieldsRename task.name = title\n| fieldsRemove record_json", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename task.id = id\n| fieldsAdd task.title = concat(\"[Change Request]\", \" \", title)\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:pull-request:task.id_name_8340", @@ -791,7 +802,7 @@ { "builtin": false, "description": "task.outcome", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged} \n| fieldsAdd if(merged == true, \"Success\"), alias: task.outcome\n| fieldsRemove record_json, merged, action", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{merged} \n| fieldsAdd if(merged == true, \"success\"), alias: task.outcome\n| fieldsRemove record_json, merged, action", "editable": true, "enabled": true, "id": "github:pull-request:task.outcome_6376", @@ -801,8 +812,8 @@ }, { "builtin": false, - "description": "vcs.change.id | title | state", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{id, title} \n| fieldsRename vcs.change.id = id\n| fieldsRename vcs.change.title = title\n| fieldsAdd action, alias: vcs.change.state\n| fieldsRemove record_json", + "description": "vcs.change.id | title | state | url.full", + "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{title, html_url} \n| fieldsRename vcs.change.id = number\n| fieldsRename vcs.change.title = title\n| fieldsRename vcs.change.state = action\n| fieldsRename vcs.change.url.full = html_url\n| fieldsRemove record_json", "editable": true, "enabled": true, "id": "github:pull-request:vcs.change.id_title_state_4660", @@ -843,32 +854,10 @@ "sampleData": "{\n \"action\": \"labeled\",\n \"number\": 27,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27\",\n \"id\": 2098930638,\n \"node_id\": \"PR_kwDOMqhVdM59GyPO\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/27.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27\",\n \"number\": 27,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"PR to Close\",\n \"user\": {\n \"login\": \"github-user\",\n \"id\": 33230145,\n \"node_id\": \"MDQ6VXNlcjMzMjMwMTQ1\",\n \"avatar_url\": \"https://avatars.githubusercontent.com/u/33230145?v=4\",\n \"gravatar_id\": \"\",\n \"url\": \"https://api.github.com/users/github-user\",\n \"html_url\": \"https://github.com/github-user\",\n \"followers_url\": \"https://api.github.com/users/github-user/followers\",\n \"following_url\": \"https://api.github.com/users/github-user/following{/other_user}\",\n \"gists_url\": \"https://api.github.com/users/github-user/gists{/gist_id}\",\n \"starred_url\": \"https://api.github.com/users/github-user/starred{/owner}{/repo}\",\n \"subscriptions_url\": \"https://api.github.com/users/github-user/subscriptions\",\n \"organizations_url\": \"https://api.github.com/users/github-user/orgs\",\n \"repos_url\": \"https://api.github.com/users/github-user/repos\",\n \"events_url\": \"https://api.github.com/users/github-user/events{/privacy}\",\n \"received_events_url\": \"https://api.github.com/users/github-user/received_events\",\n \"type\": \"User\",\n \"site_admin\": false\n },\n \"body\": null,\n \"created_at\": \"2024-09-30T11:55:54Z\",\n \"updated_at\": \"2024-10-02T06:33:54Z\",\n \"closed_at\": \"2024-09-30T12:01:38Z\",\n \"merged_at\": null,\n \"merge_commit_sha\": \"7be36c3b17b3d9714b6c57e0813972bc05ea586c\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [\n {\n \"id\": 7396719931,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Ow\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/bug\",\n \"name\": \"bug\",\n \"color\": \"d73a4a\",\n \"default\": true,\n \"description\": \"Something isn't working\"\n },\n {\n \"id\": 7396719943,\n \"node_id\": \"LA_kwDOMqhVdM8AAAABuOD9Rw\",\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/labels/good%20first%20issue\",\n \"name\": \"good first issue\",\n \"color\": \"7057ff\",\n \"default\": true,\n \"description\": \"Good for newcomers\"\n }\n ],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/27/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/27/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"base\": {\n \"label\": \"github-org:github-user-patch-7\",\n \"ref\": \"github-user-patch-7\",\n \"sha\": \"a8a375bec0beddd0d8c58fdfad4bf057d7f5fe88\",\n \"repo\": {\n \"id\": 849892724,\n \"node_id\": \"R_kgDOMqhVdA\",\n \"name\": \"SourceCodeRepo-1\",\n \"full_name\": \"github-org/SourceCodeRepo-1\",\n \"private\": false,\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"description\": null,\n \"fork\": false,\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1\",\n \"created_at\": \"2024-08-30T13:12:45Z\",\n \"updated_at\": \"2024-09-30T15:13:46Z\",\n \"pushed_at\": \"2024-09-30T11:55:50Z\",\n \"git_url\": \"git://github.com/github-org/SourceCodeRepo-1.git\",\n \"ssh_url\": \"git@github.com:github-org/SourceCodeRepo-1.git\",\n \"clone_url\": \"https://github.com/github-org/SourceCodeRepo-1.git\",\n \"svn_url\": \"https://github.com/github-org/SourceCodeRepo-1\",\n \"homepage\": null,\n \"size\": 86,\n \"stargazers_count\": 0,\n \"watchers_count\": 0,\n \"language\": \"Dockerfile\",\n \"has_issues\": true,\n \"has_projects\": true,\n \"has_downloads\": true,\n \"has_wiki\": true,\n \"has_pages\": false,\n \"has_discussions\": false,\n \"forks_count\": 0,\n \"mirror_url\": null,\n \"archived\": false,\n \"disabled\": false,\n \"open_issues_count\": 2,\n \"license\": null,\n \"allow_forking\": true,\n \"is_template\": false,\n \"web_commit_signoff_required\": false,\n \"topics\": [],\n \"visibility\": \"public\",\n \"forks\": 0,\n \"open_issues\": 2,\n \"watchers\": 0,\n \"default_branch\": \"main\",\n \"allow_squash_merge\": true,\n \"allow_merge_commit\": true,\n \"allow_rebase_merge\": true,\n \"allow_auto_merge\": false,\n \"delete_branch_on_merge\": false,\n \"allow_update_branch\": false,\n \"use_squash_pr_title_as_default\": false,\n \"squash_merge_commit_message\": \"COMMIT_MESSAGES\",\n \"squash_merge_commit_title\": \"COMMIT_OR_PR_TITLE\",\n \"merge_commit_message\": \"PR_TITLE\",\n \"merge_commit_title\": \"MERGE_MESSAGE\"\n }\n }\n } \n}", "type": "dql" }, - { - "builtin": false, - "description": "ext.vcs.change.pull_request.url | number", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{html_url}\n| fieldsAdd html_url, alias: ext.vcs.change.pull_request.url\n| fieldsRename ext.vcs.change.pull_request.number = number\n| fieldsRemove record_json, html_url", - "editable": true, - "enabled": true, - "id": "github:pull-request:ext.vcs.change.pull_request.url_number_1987", - "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", - "type": "dql" - }, - { - "builtin": false, - "description": "ext.task.merge.commits", - "dqlScript": "parse pull_request, \"JSON:record_json\" \n| fieldsFlatten record_json, fields:{commits}\n| fieldsAdd commits, alias: ext.task.merge.commits\n| fieldsRemove record_json, commits", - "editable": true, - "enabled": false, - "id": "github:pull-request:ext.task.merge.commits_4167", - "matcher": "isNotNull(pull_request)", - "sampleData": "{\n \"action\": \"closed\",\n \"number\": 20,\n \"pull_request\": {\n \"url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20\",\n \"id\": 2076377099,\n \"node_id\": \"PR_kwDOMqhVdM57wwAL\",\n \"html_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20\",\n \"diff_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.diff\",\n \"patch_url\": \"https://github.com/github-org/SourceCodeRepo-1/pull/20.patch\",\n \"issue_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20\",\n \"number\": 20,\n \"state\": \"closed\",\n \"locked\": false,\n \"title\": \"Single PR\",\n \"body\": null,\n \"created_at\": \"2024-09-17T13:07:23Z\",\n \"updated_at\": \"2024-09-17T13:07:37Z\",\n \"closed_at\": \"2024-09-17T13:07:37Z\",\n \"merged_at\": \"2024-09-17T13:07:37Z\",\n \"merge_commit_sha\": \"cd90131bc139bfd2c5ec8ad19cd45ccad43bb438\",\n \"assignee\": null,\n \"assignees\": [],\n \"requested_reviewers\": [],\n \"requested_teams\": [],\n \"labels\": [],\n \"milestone\": null,\n \"draft\": false,\n \"commits_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/commits\",\n \"review_comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/20/comments\",\n \"review_comment_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/pulls/comments{/number}\",\n \"comments_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/issues/20/comments\",\n \"statuses_url\": \"https://api.github.com/repos/github-org/SourceCodeRepo-1/statuses/3106e5d3ce7be63bc30784e98597108cda63fe98\",\n \"comments\": 0,\n \"review_comments\": 0,\n \"maintainer_can_modify\": false,\n \"commits\": 1,\n \"additions\": 1,\n \"deletions\": 1,\n \"changed_files\": 1\n }\n}", - "type": "dql" - }, { "builtin": false, "description": "Cleanup", - "dqlScript": "fieldsRemove action, number, pull_request", + "dqlScript": "fieldsRemove action, number, sender, repository", "editable": true, "enabled": true, "id": "github:pull-request:remove_fields_3747",

64-s=E?Fkg1XUl(E7A|ZG3DUl)7Bs^xI5;}@ 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 z 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