[libcamera-ci,RFC,v2,2/5] Add job to build deb package for libcamera
diff mbox series

Message ID 20260130160254.1770742-3-barnabas.pocze@ideasonboard.com
State New
Headers show
Series
  • on-device-testing proof of concept
Related show

Commit Message

Barnabás Pőcze Jan. 30, 2026, 4:02 p.m. UTC
Add a job that builds a very specific deb package for testing
purposes for the given architectures.

Signed-off-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com>
---
 gitlab-ci.yml | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

--
2.52.0

Patch
diff mbox series

diff --git a/gitlab-ci.yml b/gitlab-ci.yml
index 6cc2026..66f4b5b 100644
--- a/gitlab-ci.yml
+++ b/gitlab-ci.yml
@@ -320,6 +320,54 @@  build-package:cros:
       - build/build.ninja
       - libcamera-upstream-9999.tbz2

+#
+# Build and package libcamera for the purpose of running tests on a real device.
+#
+
+build-deb-for-lc-compliance-testing:
+  extends:
+    - .fdo.distribution-image@debian
+    - .libcamera-ci.debian:13
+    - .libcamera-ci.scripts
+  stage: build
+  needs:
+    - job: container-debian:13
+      artifacts: false
+  variables:
+    BUILD_TYPE: debug
+    MESON_OPTIONS: >-
+      -D prefix=/usr
+      -D debug=true
+      -D optimization=2
+      -D force_fallback_for="['gtest']"
+      -D auto_features=disabled
+      -D udev=enabled
+      -D lc-compliance=enabled
+      -D pipelines=rkisp1
+  script:
+    - echo "0.0.0-ci-build-$CI_COMMIT_SHA-job-$CI_JOB_ID-pipeline-$CI_PIPELINE_ID-project-$CI_PROJECT_PATH" > .tarball-version
+    - $CI_PROJECT_DIR/.gitlab-ci/build-libcamera.sh
+    - meson install -C build --destdir install
+    - fpm -s dir -t deb
+        -C build/install
+        --architecture "$ARCH"
+        --package libcamera.deb
+        --name libcamera
+        --description "$CI_COMMIT_SHA (job $CI_JOB_ID, pipeline $CI_PIPELINE_ID, project $CI_PROJECT_PATH)"
+        --version "0.0.0"
+  artifacts:
+    when: always
+    expire_in: 1 week
+    paths:
+      - build/meson-logs/
+      - build/build.ninja
+      - "*.deb"
+  parallel:
+    matrix:
+      - ARCH:
+        - arm64
+
+
 # ------------------------------------------------------------------------------
 # Lint stage - Run checkstyle.py and check merge suitability
 # ------------------------------------------------------------------------------