{"id":22318,"url":"https://patchwork.libcamera.org/api/1.1/patches/22318/?format=json","web_url":"https://patchwork.libcamera.org/patch/22318/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20241215212255.20001-1-laurent.pinchart@ideasonboard.com>","date":"2024-12-15T21:22:55","name":"[libcamera-ci] Enable junit artifact generation for test-unit job","commit_ref":null,"pull_url":null,"state":"accepted","archived":false,"hash":"ef6f0e543a1382628ceb5fdc555fbeaedf9cb366","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/1.1/people/2/?format=json","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/22318/mbox/","series":[{"id":4887,"url":"https://patchwork.libcamera.org/api/1.1/series/4887/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4887","date":"2024-12-15T21:22:55","name":"[libcamera-ci] Enable junit artifact generation for test-unit job","version":1,"mbox":"https://patchwork.libcamera.org/series/4887/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/22318/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/22318/checks/","tags":{},"headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 5CC07C32F5\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSun, 15 Dec 2024 21:23:18 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 7993F67F1D;\n\tSun, 15 Dec 2024 22:23:16 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id AE76467F1C\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun, 15 Dec 2024 22:23:12 +0100 (CET)","from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi\n\t[81.175.209.231])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 770B6A57;\n\tSun, 15 Dec 2024 22:22:36 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"cwpvgQeF\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1734297756;\n\tbh=9ILWxRHc0yJG1GOF3qXUGq57sre/94L6M8RZhazzDbI=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=cwpvgQeFQKL18iqMuQFq2U32QoWpOE+sEwv5NtLM2QivULknpWdlql2CwUUVhs9zp\n\tcT5l5VusNaL5S9Lld7+KM02hsafdn1eJDJCu0wSI5USqD0vWQAPJZlq3LjHdcQGrz7\n\t4G7stPcRPwL2tCPnFohW/vVhhlCo+agPN7jMT2+c=","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"=?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= <barnabas.pocze@ideasonboard.com>","Subject":"[libcamera-ci] [PATCH] Enable junit artifact generation for\n\ttest-unit job","Date":"Sun, 15 Dec 2024 23:22:55 +0200","Message-ID":"<20241215212255.20001-1-laurent.pinchart@ideasonboard.com>","X-Mailer":"git-send-email 2.45.2","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Bump the minimum meson version to 1.2.0 to generate a proper junit\nreport, and package it in artifacts in the test-unit job.\n\nAdd the --break-system-packages to `pip3 install` for Debian bookworm\nand newer, as pip3 otherwise fails.\n\nSigned-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n---\nJunit report output for unit tests:\nhttps://gitlab.freedesktop.org/pinchartl/libcamera/-/pipelines/1330345/test_report?job_name=test-unit\n---\n .gitlab-ci/setup-container.sh | 11 ++++++++---\n gitlab-ci.yml                 | 16 ++++++----------\n 2 files changed, 14 insertions(+), 13 deletions(-)","diff":"diff --git a/.gitlab-ci/setup-container.sh b/.gitlab-ci/setup-container.sh\nindex d2909c7257d35b0d..6146bee4d55ea348 100755\n--- a/.gitlab-ci/setup-container.sh\n+++ b/.gitlab-ci/setup-container.sh\n@@ -187,17 +187,22 @@ cbuild_fixups() {\n \techo \"Applying miscellaneous fixups\"\n \n \tlocal min_version\n+\tlocal pip3_options\n \tlocal version\n \n+\tif [[ $FDO_DISTRIBUTION_VERSION != 'bullseye' ]] ; then\n+\t\tpip3_options=--break-system-packages\n+\tfi\n+\n \t# Install meson from pip.\n-\tmin_version=1.0.1\n+\tmin_version=1.2.0\n \tversion=$(dpkg_version meson)\n \tif dpkg_check_version $version $min_version ; then\n \t\techo \"meson $version too old, installing $min_version from pip\"\n \n \t\tapt remove -y meson\n \t\tapt install -y python3-pip\n-\t\tpip3 install meson==${min_version}\n+\t\tpip3 install ${pip3_options} meson==${min_version}\n \tfi\n \n \t# Install pygments from pip.\n@@ -207,7 +212,7 @@ cbuild_fixups() {\n \t\techo \"pygments $version too old, installing $min_version from pip\"\n \n \t\tapt install -y python3-pip\n-\t\tpip3 install pygments==${min_version}\n+\t\tpip3 install ${pip3_options} pygments==${min_version}\n \tfi\n \n \t# Create pybind11.pc manually if not provided by the distribution\ndiff --git a/gitlab-ci.yml b/gitlab-ci.yml\nindex 06ab27dc0af0d9df..2b37b7ed59d4fbd0 100644\n--- a/gitlab-ci.yml\n+++ b/gitlab-ci.yml\n@@ -59,17 +59,17 @@ include:\n .libcamera-ci.debian:11:\n   variables:\n     FDO_DISTRIBUTION_VERSION: 'bullseye'\n-    FDO_DISTRIBUTION_TAG: '2024-11-05.1'\n+    FDO_DISTRIBUTION_TAG: '2024-12-15.1'\n \n .libcamera-ci.debian:12:\n   variables:\n     FDO_DISTRIBUTION_VERSION: 'bookworm'\n-    FDO_DISTRIBUTION_TAG: '2024-11-05.1'\n+    FDO_DISTRIBUTION_TAG: '2024-12-15.1'\n \n .libcamera-ci.debian:13:\n   variables:\n     FDO_DISTRIBUTION_VERSION: 'trixie'\n-    FDO_DISTRIBUTION_TAG: '2024-11-05.1'\n+    FDO_DISTRIBUTION_TAG: '2024-12-15.1'\n \n .container-debian:\n   extends:\n@@ -406,10 +406,6 @@ test-unit:\n       -D qcam=disabled\n       -D test=true\n       -D v4l2=true\n-\n-  # meson prior to 1.2.0 doesn't correctly escape non-printable characters\n-  # when generating the testlog XML. This results in an unparseable file.\n-  # Skip it for now.\n-  # artifacts:\n-  #   reports:\n-  #     junit: build/meson-logs/testlog.junit.xml\n+  artifacts:\n+    reports:\n+      junit: build/meson-logs/testlog.junit.xml\n","prefixes":["libcamera-ci"]}