diff --git a/.ostc-ci/gitlab-ci.yml b/.ostc-ci/gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..bb34dd249036a0deccc9fddac25e0d056e6553e0
--- /dev/null
+++ b/.ostc-ci/gitlab-ci.yml
@@ -0,0 +1,40 @@
+# SPDX-License-Identifier: Apache-2.0
+# SPDX-FileCopyrightText: Huawei Inc.
+
+stages:
+  - compliance
+  - build
+  - test
+
+include:
+ - project: 'OSTC/infrastructure/pipelines'
+   file:
+    - 'dco.yaml'
+    - 'reuse.yaml'
+ - project: 'OSTC/OHOS/manifest'
+   file: '.ostc-ci/build-generic.yaml'
+
+dco:
+  extends: .dco
+
+reuse:
+  extends: .reuse
+  # TODO: file tracking bug
+  allow_failure: true
+
+# Customize the .workspace job to set the path of the git repository to deviate
+# from what the git-repo manifest prepares. This effectively allows testing
+# incoming changes that match the repository holding this CI pipeline.
+.workspace:
+  variables:
+    OHOS_CI_GIT_REPO_PATH: sources/meta-zephyr
+
+# Disable Linux and FreeRTOS builds that are unlikely to be affected by Zephyr
+# changes and certainly save some time. 
+.build-linux:
+  rules:
+    - when: never
+
+.build-freertos:
+  rules:
+    - when: never