diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index cf99e877a9702..d3e2852a63039 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -170,7 +170,7 @@ variables:
# To use images from datadog-agent-buildimages dev branches, set the corresponding
# SUFFIX variable to _test_only
DATADOG_AGENT_BUILDIMAGES_SUFFIX: ""
- DATADOG_AGENT_BUILDIMAGES: v54965839-ff6db30b
+ DATADOG_AGENT_BUILDIMAGES: v55677206-ea52e48c
DATADOG_AGENT_WINBUILDIMAGES_SUFFIX: ""
DATADOG_AGENT_WINBUILDIMAGES: v54965839-ff6db30b
DATADOG_AGENT_ARMBUILDIMAGES_SUFFIX: ""
diff --git a/.gitlab/functional_test/static_quality_gate.yml b/.gitlab/functional_test/static_quality_gate.yml
index d47c75059715a..2ecea98388cb5 100644
--- a/.gitlab/functional_test/static_quality_gate.yml
+++ b/.gitlab/functional_test/static_quality_gate.yml
@@ -9,6 +9,16 @@ static_quality_gates:
needs:
- job: agent_deb-x64-a7
artifacts: true
+ - job: agent_deb-arm64-a7
+ artifacts: true
+ - job: agent_rpm-x64-a7
+ artifacts: true
+ - job: agent_rpm-arm64-a7
+ artifacts: true
+ - job: agent_suse-x64-a7
+ artifacts: true
+ - job: agent_suse-arm64-a7
+ artifacts: true
- job: docker_build_agent7
artifacts: true
- job: docker_build_agent7_arm64
@@ -21,6 +31,28 @@ static_quality_gates:
artifacts: true
- job: docker_build_cluster_agent_arm64
artifacts: true
+ - job: docker_build_dogstatsd_amd64
+ artifacts: true
+ - job: docker_build_dogstatsd_arm64
+ artifacts: true
+ - job: dogstatsd_deb-x64
+ artifacts: true
+ - job: dogstatsd_deb-arm64
+ artifacts: true
+ - job: dogstatsd_rpm-x64
+ artifacts: true
+ - job: dogstatsd_suse-x64
+ artifacts: true
+ - job: iot_agent_deb-x64
+ artifacts: true
+ - job: iot_agent_deb-arm64
+ artifacts: true
+ - job: iot_agent_rpm-x64
+ artifacts: true
+ - job: iot_agent_rpm-arm64
+ artifacts: true
+ - job: iot_agent_suse-x64
+ artifacts: true
# Static Quality Gates aren't enforced until Q1
allow_failure: true
script:
diff --git a/tasks/quality_gates.py b/tasks/quality_gates.py
index 539903e99d8ab..1cf1518c9cfb0 100644
--- a/tasks/quality_gates.py
+++ b/tasks/quality_gates.py
@@ -39,7 +39,7 @@ def display_pr_comment(
:return:
"""
title = f"Static quality checks {SUCCESS_CHAR if final_state else FAIL_CHAR}"
- body_info = body_pattern.format("Info")
+ body_info = "\nSuccessful checks
\n\n" + body_pattern.format("Info")
body_error = body_pattern.format("Error")
body_error_footer = body_error_footer_pattern
@@ -64,6 +64,7 @@ def getMetric(metric_name, gate_name=gate['name']):
with_error = True
body_error_footer += "\n \n"
+ body_info += "\n\n"
body = f"Please find below the results from static quality gates\n{body_error+body_error_footer if with_error else ''}\n\n{body_info if with_info else ''}"
pr_commenter(ctx, title=title, body=body)
diff --git a/tasks/static_quality_gates/lib/gates_lib.py b/tasks/static_quality_gates/lib/gates_lib.py
index 48d88fb7a0e25..c7ece6d3e9dc2 100644
--- a/tasks/static_quality_gates/lib/gates_lib.py
+++ b/tasks/static_quality_gates/lib/gates_lib.py
@@ -79,6 +79,14 @@ def find_package_path(flavor, package_os, arch):
class GateMetricHandler:
+ # All metric_name -> metric_key
+ METRICS_DICT = {
+ "datadog.agent.static_quality_gate.on_wire_size": "current_on_wire_size",
+ "datadog.agent.static_quality_gate.on_disk_size": "current_on_disk_size",
+ "datadog.agent.static_quality_gate.max_allowed_on_wire_size": "max_on_wire_size",
+ "datadog.agent.static_quality_gate.max_allowed_on_disk_size": "max_on_disk_size",
+ }
+
def __init__(self, git_ref, bucket_branch):
self.metrics = {}
self.metadata = {}
@@ -101,6 +109,18 @@ def register_gate_tags(self, gate, **kwargs):
for key in kwargs:
self.metadata[gate][key] = kwargs[key]
+ def _add_gauge(self, timestamp, common_tags, gate, metric_name, metric_key):
+ if self.metrics[gate].get(metric_key):
+ return create_gauge(
+ metric_name,
+ timestamp,
+ self.metrics[gate][metric_key],
+ tags=common_tags,
+ metric_origin=get_metric_origin(ORIGIN_PRODUCT, ORIGIN_CATEGORY, ORIGIN_SERVICE),
+ unit="byte",
+ )
+ return None
+
def _generate_series(self):
if not self.git_ref or not self.bucket_branch:
return None
@@ -120,46 +140,17 @@ def _generate_series(self):
for tag in self.metadata[gate]:
common_tags.append(f"{tag}:{self.metadata[gate][tag]}")
- series.append(
- create_gauge(
- "datadog.agent.static_quality_gate.on_wire_size",
- timestamp,
- self.metrics[gate]["current_on_wire_size"],
- tags=common_tags,
- metric_origin=get_metric_origin(ORIGIN_PRODUCT, ORIGIN_CATEGORY, ORIGIN_SERVICE),
- unit="byte",
- ),
- )
- series.append(
- create_gauge(
- "datadog.agent.static_quality_gate.on_disk_size",
- timestamp,
- self.metrics[gate]["current_on_disk_size"],
- tags=common_tags,
- metric_origin=get_metric_origin(ORIGIN_PRODUCT, ORIGIN_CATEGORY, ORIGIN_SERVICE),
- unit="byte",
- ),
- )
- series.append(
- create_gauge(
- "datadog.agent.static_quality_gate.max_allowed_on_wire_size",
- timestamp,
- self.metrics[gate]["max_on_wire_size"],
- tags=common_tags,
- metric_origin=get_metric_origin(ORIGIN_PRODUCT, ORIGIN_CATEGORY, ORIGIN_SERVICE),
- unit="byte",
- ),
- )
- series.append(
- create_gauge(
- "datadog.agent.static_quality_gate.max_allowed_on_disk_size",
- timestamp,
- self.metrics[gate]["max_on_disk_size"],
- tags=common_tags,
- metric_origin=get_metric_origin(ORIGIN_PRODUCT, ORIGIN_CATEGORY, ORIGIN_SERVICE),
- unit="byte",
- ),
- )
+ for metric_name, metric_key in self.METRICS_DICT.items():
+ gauge = self._add_gauge(timestamp, common_tags, gate, metric_name, metric_key)
+ if gauge:
+ series.append(gauge)
+ else:
+ print(
+ color_message(
+ f"[WARN] gate {gate} doesn't have the {metric_name} metric registered ! skipping metric...",
+ "orange",
+ )
+ )
return series
def send_metrics_to_datadog(self):
diff --git a/tasks/static_quality_gates/lib/package_agent_lib.py b/tasks/static_quality_gates/lib/package_agent_lib.py
new file mode 100644
index 0000000000000..10ec6521b3b2e
--- /dev/null
+++ b/tasks/static_quality_gates/lib/package_agent_lib.py
@@ -0,0 +1,72 @@
+import tempfile
+
+from tasks.libs.common.color import color_message
+from tasks.libs.package.size import directory_size, extract_package, file_size
+from tasks.static_quality_gates.lib.gates_lib import argument_extractor, find_package_path, read_byte_input
+
+
+def calculate_package_size(ctx, package_os, package_path, gate_name, metric_handler):
+ with tempfile.TemporaryDirectory() as extract_dir:
+ extract_package(ctx=ctx, package_os=package_os, package_path=package_path, extract_dir=extract_dir)
+ package_on_wire_size = file_size(path=package_path)
+ package_on_disk_size = directory_size(ctx, path=extract_dir)
+
+ metric_handler.register_metric(gate_name, "current_on_wire_size", package_on_wire_size)
+ metric_handler.register_metric(gate_name, "current_on_disk_size", package_on_disk_size)
+ return package_on_wire_size, package_on_disk_size
+
+
+def check_package_size(package_on_wire_size, package_on_disk_size, max_on_wire_size, max_on_disk_size):
+ error_message = ""
+ if package_on_wire_size > max_on_wire_size:
+ err_msg = f"Package size on wire (compressed package size) {package_on_wire_size} is higher than the maximum allowed {max_on_wire_size} by the gate !\n"
+ print(color_message(err_msg, "red"))
+ error_message += err_msg
+ else:
+ print(
+ color_message(
+ f"package_on_wire_size <= max_on_wire_size, ({package_on_wire_size}) <= ({max_on_wire_size})",
+ "green",
+ )
+ )
+ if package_on_disk_size > max_on_disk_size:
+ err_msg = f"Package size on disk (uncompressed package size) {package_on_disk_size} is higher than the maximum allowed {max_on_disk_size} by the gate !\n"
+ print(color_message(err_msg, "red"))
+ error_message += err_msg
+ else:
+ print(
+ color_message(
+ f"package_on_disk_size <= max_on_disk_size, ({package_on_disk_size}) <= ({max_on_disk_size})",
+ "green",
+ )
+ )
+ if error_message != "":
+ raise AssertionError(error_message)
+
+
+def generic_package_agent_quality_gate(gate_name, arch, os, flavor, **kwargs):
+ arguments = argument_extractor(
+ kwargs, max_on_wire_size=read_byte_input, max_on_disk_size=read_byte_input, ctx=None, metricHandler=None
+ )
+ ctx = arguments.ctx
+ metric_handler = arguments.metricHandler
+ max_on_wire_size = arguments.max_on_wire_size
+ max_on_disk_size = arguments.max_on_disk_size
+
+ metric_handler.register_gate_tags(gate_name, gate_name=gate_name, arch=arch, os=os)
+
+ metric_handler.register_metric(gate_name, "max_on_wire_size", max_on_wire_size)
+ metric_handler.register_metric(gate_name, "max_on_disk_size", max_on_disk_size)
+ package_arm = arch
+ if os == "centos" or os == "suse":
+ if arch == "arm64":
+ package_arm = "aarch64"
+ elif arch == "amd64":
+ package_arm = "x86_64"
+
+ package_path = find_package_path(flavor, os, package_arm)
+
+ package_on_wire_size, package_on_disk_size = calculate_package_size(
+ ctx, os, package_path, gate_name, metric_handler
+ )
+ check_package_size(package_on_wire_size, package_on_disk_size, max_on_wire_size, max_on_disk_size)
diff --git a/tasks/static_quality_gates/static_quality_gate_agent_deb_amd64.py b/tasks/static_quality_gates/static_quality_gate_agent_deb_amd64.py
index f3e5614e7e897..67b83483b8410 100644
--- a/tasks/static_quality_gates/static_quality_gate_agent_deb_amd64.py
+++ b/tasks/static_quality_gates/static_quality_gate_agent_deb_amd64.py
@@ -1,63 +1,7 @@
-import tempfile
-
-from tasks.libs.common.color import color_message
-from tasks.libs.package.size import directory_size, extract_package, file_size
-from tasks.static_quality_gates.lib.gates_lib import argument_extractor, find_package_path, read_byte_input
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
def entrypoint(**kwargs):
- arguments = argument_extractor(
- kwargs, max_on_wire_size=read_byte_input, max_on_disk_size=read_byte_input, ctx=None, metricHandler=None
- )
- ctx = arguments.ctx
- metric_handler = arguments.metricHandler
- max_on_wire_size = arguments.max_on_wire_size
- max_on_disk_size = arguments.max_on_disk_size
-
- metric_handler.register_gate_tags(
- "static_quality_gate_agent_deb_amd64", gate_name="static_quality_gate_agent_deb_amd64", arch="x64", os="debian"
+ generic_package_agent_quality_gate(
+ "static_quality_gate_agent_deb_amd64", "amd64", "debian", "datadog-agent", **kwargs
)
-
- metric_handler.register_metric("static_quality_gate_agent_deb_amd64", "max_on_wire_size", max_on_wire_size)
- metric_handler.register_metric("static_quality_gate_agent_deb_amd64", "max_on_disk_size", max_on_disk_size)
-
- package_os = "debian"
- package_path = find_package_path("datadog-agent", package_os, "amd64")
-
- with tempfile.TemporaryDirectory() as extract_dir:
- extract_package(ctx=ctx, package_os=package_os, package_path=package_path, extract_dir=extract_dir)
- package_on_wire_size = file_size(path=package_path)
- package_on_disk_size = directory_size(ctx, path=extract_dir)
-
- metric_handler.register_metric(
- "static_quality_gate_agent_deb_amd64", "current_on_wire_size", package_on_wire_size
- )
- metric_handler.register_metric(
- "static_quality_gate_agent_deb_amd64", "current_on_disk_size", package_on_disk_size
- )
-
- error_message = ""
- if package_on_wire_size > max_on_wire_size:
- err_msg = f"Package size on wire (compressed package size) {package_on_wire_size} is higher than the maximum allowed {max_on_wire_size} by the gate !\n"
- print(color_message(err_msg, "red"))
- error_message += err_msg
- else:
- print(
- color_message(
- f"package_on_wire_size <= max_on_wire_size, ({package_on_wire_size}) <= ({max_on_wire_size})",
- "green",
- )
- )
- if package_on_disk_size > max_on_disk_size:
- err_msg = f"Package size on disk (uncompressed package size) {package_on_disk_size} is higher than the maximum allowed {max_on_disk_size} by the gate !\n"
- print(color_message(err_msg, "red"))
- error_message += err_msg
- else:
- print(
- color_message(
- f"package_on_disk_size <= max_on_disk_size, ({package_on_disk_size}) <= ({max_on_disk_size})",
- "green",
- )
- )
- if error_message != "":
- raise AssertionError(error_message)
diff --git a/tasks/static_quality_gates/static_quality_gate_agent_deb_arm64.py b/tasks/static_quality_gates/static_quality_gate_agent_deb_arm64.py
new file mode 100644
index 0000000000000..3ab769cf3a418
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_agent_deb_arm64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_agent_deb_arm64", "arm64", "debian", "datadog-agent", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_agent_rpm_amd64.py b/tasks/static_quality_gates/static_quality_gate_agent_rpm_amd64.py
new file mode 100644
index 0000000000000..1da885fa7f589
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_agent_rpm_amd64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_agent_rpm_amd64", "amd64", "centos", "datadog-agent", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_agent_rpm_arm64.py b/tasks/static_quality_gates/static_quality_gate_agent_rpm_arm64.py
new file mode 100644
index 0000000000000..62238ee997c8e
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_agent_rpm_arm64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_agent_rpm_arm64", "arm64", "centos", "datadog-agent", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_agent_suse_amd64.py b/tasks/static_quality_gates/static_quality_gate_agent_suse_amd64.py
new file mode 100644
index 0000000000000..8956df0078b48
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_agent_suse_amd64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_agent_suse_amd64", "amd64", "suse", "datadog-agent", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_agent_suse_arm64.py b/tasks/static_quality_gates/static_quality_gate_agent_suse_arm64.py
new file mode 100644
index 0000000000000..63984cb776681
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_agent_suse_arm64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_agent_suse_arm64", "arm64", "suse", "datadog-agent", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_dogstatsd_deb_amd64.py b/tasks/static_quality_gates/static_quality_gate_dogstatsd_deb_amd64.py
new file mode 100644
index 0000000000000..900ad7b2425e0
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_dogstatsd_deb_amd64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_dogstatsd_deb_amd64", "amd64", "debian", "datadog-dogstatsd", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_dogstatsd_deb_arm64.py b/tasks/static_quality_gates/static_quality_gate_dogstatsd_deb_arm64.py
new file mode 100644
index 0000000000000..a6474c3985cbe
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_dogstatsd_deb_arm64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_dogstatsd_deb_arm64", "arm64", "debian", "datadog-dogstatsd", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_dogstatsd_rpm_amd64.py b/tasks/static_quality_gates/static_quality_gate_dogstatsd_rpm_amd64.py
new file mode 100644
index 0000000000000..bfd72b86ba095
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_dogstatsd_rpm_amd64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_dogstatsd_rpm_amd64", "amd64", "centos", "datadog-dogstatsd", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_dogstatsd_suse_amd64.py b/tasks/static_quality_gates/static_quality_gate_dogstatsd_suse_amd64.py
new file mode 100644
index 0000000000000..eb402593bbaa6
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_dogstatsd_suse_amd64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_dogstatsd_suse_amd64", "amd64", "suse", "datadog-dogstatsd", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_iot_agent_deb_amd64.py b/tasks/static_quality_gates/static_quality_gate_iot_agent_deb_amd64.py
new file mode 100644
index 0000000000000..aeff95f3cb89a
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_iot_agent_deb_amd64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_iot_agent_deb_amd64", "amd64", "debian", "datadog-iot-agent", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_iot_agent_deb_arm64.py b/tasks/static_quality_gates/static_quality_gate_iot_agent_deb_arm64.py
new file mode 100644
index 0000000000000..be45967dba941
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_iot_agent_deb_arm64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_iot_agent_deb_arm64", "arm64", "debian", "datadog-iot-agent", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_iot_agent_rpm_amd64.py b/tasks/static_quality_gates/static_quality_gate_iot_agent_rpm_amd64.py
new file mode 100644
index 0000000000000..5542088a86b47
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_iot_agent_rpm_amd64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_iot_agent_rpm_amd64", "amd64", "centos", "datadog-iot-agent", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_iot_agent_rpm_arm64.py b/tasks/static_quality_gates/static_quality_gate_iot_agent_rpm_arm64.py
new file mode 100644
index 0000000000000..b19718b3fcfd6
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_iot_agent_rpm_arm64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_iot_agent_rpm_arm64", "arm64", "centos", "datadog-iot-agent", **kwargs
+ )
diff --git a/tasks/static_quality_gates/static_quality_gate_iot_agent_suse_amd64.py b/tasks/static_quality_gates/static_quality_gate_iot_agent_suse_amd64.py
new file mode 100644
index 0000000000000..f454ed17fbd41
--- /dev/null
+++ b/tasks/static_quality_gates/static_quality_gate_iot_agent_suse_amd64.py
@@ -0,0 +1,7 @@
+from tasks.static_quality_gates.lib.package_agent_lib import generic_package_agent_quality_gate
+
+
+def entrypoint(**kwargs):
+ generic_package_agent_quality_gate(
+ "static_quality_gate_iot_agent_suse_amd64", "amd64", "suse", "datadog-iot-agent", **kwargs
+ )
diff --git a/tasks/unit_tests/quality_gates_tests.py b/tasks/unit_tests/quality_gates_tests.py
index 1cce97b7b8324..c047f1b29cc7d 100644
--- a/tasks/unit_tests/quality_gates_tests.py
+++ b/tasks/unit_tests/quality_gates_tests.py
@@ -38,7 +38,7 @@ def test_no_error(self, pr_commenter_mock):
pr_commenter_mock.assert_called_with(
ANY,
title='Static quality checks ✅',
- body='Please find below the results from static quality gates\n\n\n### Info\n\n|Result|Quality gate|On disk size|On disk size limit|On wire size|On wire size limit|\n|----|----|----|----|----|----|\n|✅|gateA|10MiB|10MiB|10MiB|10MiB|\n|✅|gateB|10MiB|10MiB|10MiB|10MiB|\n',
+ body='Please find below the results from static quality gates\n\n\n\nSuccessful checks
\n\n### Info\n\n|Result|Quality gate|On disk size|On disk size limit|On wire size|On wire size limit|\n|----|----|----|----|----|----|\n|✅|gateA|10MiB|10MiB|10MiB|10MiB|\n|✅|gateB|10MiB|10MiB|10MiB|10MiB|\n\n \n',
)
@patch.dict(
@@ -100,7 +100,7 @@ def test_one_of_each(self, pr_commenter_mock):
pr_commenter_mock.assert_called_with(
ANY,
title='Static quality checks ❌',
- body='Please find below the results from static quality gates\n### Error\n\n|Result|Quality gate|On disk size|On disk size limit|On wire size|On wire size limit|\n|----|----|----|----|----|----|\n|❌|gateA|10MiB|10MiB|10MiB|10MiB|\n\nGate failure full details
\n\n|Quality gate|Error type|Error message|\n|----|---|--------|\n|gateA|AssertionError|some_msg_A|\n\n \n\n\n### Info\n\n|Result|Quality gate|On disk size|On disk size limit|On wire size|On wire size limit|\n|----|----|----|----|----|----|\n|✅|gateB|10MiB|10MiB|10MiB|10MiB|\n',
+ body='Please find below the results from static quality gates\n### Error\n\n|Result|Quality gate|On disk size|On disk size limit|On wire size|On wire size limit|\n|----|----|----|----|----|----|\n|❌|gateA|10MiB|10MiB|10MiB|10MiB|\n\nGate failure full details
\n\n|Quality gate|Error type|Error message|\n|----|---|--------|\n|gateA|AssertionError|some_msg_A|\n\n \n\n\n\nSuccessful checks
\n\n### Info\n\n|Result|Quality gate|On disk size|On disk size limit|On wire size|On wire size limit|\n|----|----|----|----|----|----|\n|✅|gateB|10MiB|10MiB|10MiB|10MiB|\n\n \n',
)
@patch.dict(
diff --git a/test/static/static_quality_gates.yml b/test/static/static_quality_gates.yml
index ebd419af4a915..58b05003a13ae 100644
--- a/test/static/static_quality_gates.yml
+++ b/test/static/static_quality_gates.yml
@@ -1,7 +1,65 @@
+# Package gates
static_quality_gate_agent_deb_amd64:
max_on_wire_size: "214.3 MiB"
max_on_disk_size: "858.45 MiB"
+static_quality_gate_agent_deb_arm64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_agent_rpm_amd64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_agent_rpm_arm64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_agent_suse_amd64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_agent_suse_arm64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_dogstatsd_deb_amd64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_dogstatsd_deb_arm64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_dogstatsd_rpm_amd64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_dogstatsd_suse_amd64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_iot_agent_deb_amd64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_iot_agent_deb_arm64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_iot_agent_rpm_amd64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_iot_agent_rpm_arm64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+static_quality_gate_iot_agent_suse_amd64:
+ max_on_wire_size: "214.3 MiB"
+ max_on_disk_size: "858.45 MiB"
+
+# Docker images gate
static_quality_gate_docker_agent_amd64:
max_on_wire_size: "321.56 MiB"
max_on_disk_size: "942.69 MiB"