diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8135281dc1e417696f9f70fdcff30dceb47d23f5..d5faa5ee7f488c15e33593ed8671fc3aab0f23fd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -114,6 +114,33 @@ gdev_build:
     - apt-get install -y clang cmake protobuf-compiler
     - cargo build --no-default-features --features gtest
 
+gdev_srtool_build:
+  stage: build
+  rules:
+    - if: $CI_COMMIT_REF_NAME =~ /^wip*$/
+      when: manual
+    - if: $CI_COMMIT_TAG
+      when: never
+    - if: $CI_COMMIT_BRANCH =~ /^(release\/runtime-)[0-9].*/
+      when: never
+    - if: '$CI_MERGE_REQUEST_ID || $CI_COMMIT_BRANCH == "master"'
+    - when: manual
+  image: paritytech/srtool:1.73.0-0.12.0
+  variables:
+    PACKAGE: gdev-runtime
+    RUNTIME_DIR: runtime/gdev
+    SRTOOL_OUTPUT: $CI_PROJECT_DIR/release/srtool_output_gdev.json
+  script:
+    - echo "Building runtime for gdev"
+    - mkdir -p $CI_PROJECT_DIR/release
+    # Copy sources to the expected directory of srtool
+    - cp -R * /build/
+    # Build the runtime
+    - /srtool/build --app --json -cM | tee -a $SRTOOL_OUTPUT
+    - mv /build/runtime/gdev/target/srtool/release/wbuild/gdev-runtime/gdev_runtime.compact.compressed.wasm $CI_PROJECT_DIR/release/
+  tags:
+    - kepler
+
 tests:
   stage: tests
   image: rust:1-bullseye