[isar-cip-core][PATCH v2 2/2] Enable CI image build and test support for forky

[email protected] Tue, 28 Jul 2026 14:25:18 +0530
Newsgroups org.cip-project.lists.cip-dev
Message-ID <[email protected]>
From: Shivanand Kunijadar <[email protected]>

Keep these jobs as scheduled and can be scheduled to run every week
just to monitor and fix if there are any issues.
Also set allow_failure:true for these jobs as forky is not officially
released and there will always be some build & test issues.

It includes SWUpdate, secure boot & RB tests.

Signed-off-by: Shivanand Kunijadar <[email protected]>
---
 .gitlab-ci.yml             | 148 +++++++++++++++++++++++++++++++++++++
 .reproducible-check-ci.yml |  72 ++++++++++++++++++
 2 files changed, 220 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b53def4..b15c5da 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -8,6 +8,7 @@
 #  Jan Kiszka <[email protected]>
 #  Quirin Gylstorff <[email protected]>
 #  Nobuhiro Iwamatsu <[email protected]>
+#  Shivanand Kunijadar <[email protected]>
 #
 # SPDX-License-Identifier: MIT
 #
@@ -63,6 +64,7 @@ default:
     - if [ "${release}" = "bullseye" ]; then base_yaml="${base_yaml}:kas/opt/bullseye.yml"; fi
     - if [ "${release}" = "bookworm" ]; then base_yaml="${base_yaml}:kas/opt/bookworm.yml"; fi
     - if [ "${release}" = "trixie" ]; then base_yaml="${base_yaml}:kas/opt/trixie.yml"; fi
+    - if [ "${release}" = "forky" ]; then base_yaml="${base_yaml}:kas/opt/forky.yml"; fi
     - if [ "${release}" = "sid" ]; then base_yaml="${base_yaml}:kas/opt/sid.yml"; fi
     - if [ "${encrypt}" = "enable" ]; then base_yaml="${base_yaml}:kas/opt/encrypt-data.yml"; fi
     - if [ "${factory_reset}" = "enable" ]; then base_yaml="${base_yaml}:kas/opt/factory-reset.yml"; fi
@@ -399,6 +401,57 @@ build:qemu-arm-base-sid:
     separate_home_partition: enable
     deploy: enable
 
+# forky image builds
+.build_base_forky:
+  extends:
+    - .build_base
+  rules:
+    - if: $CI_COMMIT_TAG
+      when: never
+    - if: '$CI_PIPELINE_SOURCE == "schedule" && $CI_RUN_UNSTABLE'
+    - if: $CI_COMMIT_BRANCH != "master"
+      when: never
+  allow_failure: true
+
+build:qemu-amd64-base-forky:
+  extends:
+    - .build_base_forky
+  variables:
+    target: qemu-amd64
+    use_rt: disable
+    release: forky
+    extension: security
+    security_test: enable
+    build_updates: enable
+    separate_home_partition: enable
+    deploy: enable
+
+build:qemu-arm64-base-forky:
+  extends:
+    - .build_base_forky
+  variables:
+    target: qemu-arm64
+    use_rt: disable
+    release: forky
+    extension: security
+    security_test: enable
+    build_updates: enable
+    separate_home_partition: enable
+    deploy: enable
+
+build:qemu-arm-base-forky:
+  extends:
+    - .build_base_forky
+  variables:
+    target: qemu-arm
+    extension: security
+    security_test: enable
+    use_rt: disable
+    release: forky
+    build_updates: enable
+    separate_home_partition: enable
+    deploy: enable
+
 .test-cip-core:
   stage: test
   image: $CI_REGISTRY_IMAGE/lavacli
@@ -764,6 +817,101 @@ test:qemu-arm-IEC-sid:
     test_function: IEC
     iec_test_timeout: 40
 
+# Tests for forky images
+.test-cip-core-forky:
+  extends:
+    - .test-cip-core
+  rules:
+    - if: $CI_COMMIT_TAG
+      when: never
+    - if: '$CI_PIPELINE_SOURCE == "schedule" && $CI_RUN_UNSTABLE'
+    - if: $CI_COMMIT_BRANCH != "master"
+      when: never
+  allow_failure: true
+
+test:qemu-amd64-swupdate-forky:
+  extends:
+    - .test-cip-core-forky
+  needs: ["build:qemu-amd64-base-forky"]
+  variables:
+    target: qemu-amd64
+    release: forky
+    test_function: swupdate
+
+test:qemu-arm64-swupdate-forky:
+  extends:
+    - .test-cip-core-forky
+  needs: ["build:qemu-arm64-base-forky"]
+  variables:
+    target: qemu-arm64
+    release: forky
+    test_function: swupdate
+
+test:qemu-arm-swupdate-forky:
+  extends:
+    - .test-cip-core-forky
+  needs: ["build:qemu-arm-base-forky"]
+  variables:
+    target: qemu-arm
+    release: forky
+    test_function: swupdate
+
+test:qemu-amd64-secure-boot-forky:
+  extends:
+    - .test-cip-core-forky
+  needs: ["build:qemu-amd64-base-forky"]
+  variables:
+    target: qemu-amd64
+    release: forky
+    test_function: secure-boot
+
+test:qemu-arm64-secure-boot-forky:
+  extends:
+    - .test-cip-core-forky
+  needs: ["build:qemu-arm64-base-forky"]
+  variables:
+    target: qemu-arm64
+    release: forky
+    test_function: secure-boot
+
+test:qemu-arm-secure-boot-forky:
+  extends:
+    - .test-cip-core-forky
+  needs: ["build:qemu-arm-base-forky"]
+  variables:
+    target: qemu-arm
+    release: forky
+    test_function: secure-boot
+
+test:qemu-amd64-IEC-forky:
+  extends:
+   - .test-cip-core-forky
+  variables:
+    target: qemu-amd64
+    release: forky
+    test_function: IEC
+    iec_test_timeout: 40
+
+test:qemu-arm64-IEC-forky:
+  extends:
+   - .test-cip-core-forky
+  needs: ["build:qemu-arm64-base-forky"]
+  variables:
+    target: qemu-arm64
+    release: forky
+    test_function: IEC
+    iec_test_timeout: 40
+
+test:qemu-arm-IEC-forky:
+  extends:
+   - .test-cip-core-forky
+  needs: ["build:qemu-arm-base-forky"]
+  variables:
+    target: qemu-arm
+    release: forky
+    test_function: IEC
+    iec_test_timeout: 40
+
 cve-checks:
   stage: cve-check
   needs: []
diff --git a/.reproducible-check-ci.yml b/.reproducible-check-ci.yml
index fb24188..1246a64 100644
--- a/.reproducible-check-ci.yml
+++ b/.reproducible-check-ci.yml
@@ -5,6 +5,8 @@
 #
 # Authors:
 #  Venkata Pyla <[email protected]>
+#  Adithya Balakumar <[email protected]>
+#  Shivanand Kunijadar <[email protected]>
 #
 # SPDX-License-Identifier: MIT
 #
@@ -130,6 +132,39 @@ build:x86-uefi-repro-build:
   variables:
     target: x86-uefi
 
+# repro build for debian forky
+build:qemu-amd64-repro-build-forky:
+  extends:
+    - .repro-build
+  variables:
+    target: qemu-amd64
+    release: forky
+  allow_failure: true
+
+build:qemu-arm64-repro-build-forky:
+  extends:
+    - .repro-build
+  variables:
+    target: qemu-arm64
+    release: forky
+  allow_failure: true
+
+build:qemu-arm-repro-build-forky:
+  extends:
+    - .repro-build
+  variables:
+    target: qemu-arm
+    release: forky
+  allow_failure: true
+
+build:x86-uefi-repro-build-forky:
+  extends:
+    - .repro-build
+  variables:
+    target: x86-uefi
+    release: forky
+  allow_failure: true
+
 # repro build test
 test:qemu-amd64-repro-test:
   extends:
@@ -166,3 +201,40 @@ test:x86-uefi-repro-test:
   variables:
     target: x86-uefi
   needs: ["build:x86-uefi-repro-build"]
+
+# repro build test for debian forky
+test:qemu-amd64-repro-test-forky:
+  extends:
+    - .repro-test
+  variables:
+    target: qemu-amd64
+    release: forky
+  allow_failure: true
+  needs: ["build:qemu-amd64-repro-build-forky"]
+
+test:qemu-arm64-repro-test-forky:
+  extends:
+    - .repro-test
+  variables:
+    target: qemu-arm64
+    release: forky
+  allow_failure: true
+  needs: ["build:qemu-arm64-repro-build-forky"]
+
+test:qemu-arm-repro-test-forky:
+  extends:
+    - .repro-test
+  variables:
+    target: qemu-arm
+    release: forky
+  allow_failure: true
+  needs: ["build:qemu-arm-repro-build-forky"]
+
+test:x86-uefi-repro-test-forky:
+  extends:
+    - .repro-test
+  variables:
+    target: x86-uefi
+    release: forky
+  allow_failure: true
+  needs: ["build:x86-uefi-repro-build-forky"]
-- 
2.39.5