This is an automated email from the ASF dual-hosted git repository.

tiagobento pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-tools.git


The following commit(s) were added to refs/heads/main by this push:
     new 699877560bc NO-ISSUE: Move 
kogito-{serverless-operator/swf-devmode/swf-builder} test results and fix 
kogito-serverless-operator image name (#2300)
699877560bc is described below

commit 699877560bc022c2d20caf1b3356b72c3f3b56ce
Author: Thiago Lugli <[email protected]>
AuthorDate: Wed May 8 11:09:27 2024 -0300

    NO-ISSUE: Move kogito-{serverless-operator/swf-devmode/swf-builder} test 
results and fix kogito-serverless-operator image name (#2300)
---
 .../tests/dmnSemanticComparison.test.ts            |  2 +-
 packages/kogito-serverless-operator/Makefile       | 11 ++---
 packages/kogito-serverless-operator/env/index.js   | 16 ++++++-
 .../hack/bump-version.sh                           | 50 ++++++++++------------
 packages/kogito-serverless-operator/package.json   |  2 +-
 packages/kogito-swf-builder/install.js             | 15 +++++--
 packages/kogito-swf-builder/package.json           |  1 +
 .../tests/features/kogito-swf-builder-2.feature    |  2 +-
 .../tests/features/kogito-swf-builder.feature      |  2 +-
 packages/kogito-swf-common/resources/Makefile      | 11 +++--
 .../resources/scripts/run-bats.sh                  |  6 ++-
 packages/kogito-swf-devmode/install.js             | 15 +++++--
 packages/kogito-swf-devmode/package.json           |  1 +
 .../tests/features/kogito-swf-devmode-2.feature    |  2 +-
 .../tests/features/kogito-swf-devmode.feature      |  4 +-
 pnpm-lock.yaml                                     |  6 +++
 16 files changed, 93 insertions(+), 53 deletions(-)

diff --git a/packages/dmn-marshaller/tests/dmnSemanticComparison.test.ts 
b/packages/dmn-marshaller/tests/dmnSemanticComparison.test.ts
index 6afba933770..437e2fb63ad 100644
--- a/packages/dmn-marshaller/tests/dmnSemanticComparison.test.ts
+++ b/packages/dmn-marshaller/tests/dmnSemanticComparison.test.ts
@@ -82,7 +82,7 @@ const dmnTestingImportedModels = [
 
 export const dmnSemanticComparisonGeneratedFilesDirectory = path.join(
   __dirname,
-  "../../dist-tests/dmnSemanticComparison-generated-files"
+  "../dist-tests/dmnSemanticComparison-generated-files"
 );
 
 describe("DMN Semantic Comparison", () => {
diff --git a/packages/kogito-serverless-operator/Makefile 
b/packages/kogito-serverless-operator/Makefile
index 0e7c5ca56b4..571732413b4 100644
--- a/packages/kogito-serverless-operator/Makefile
+++ b/packages/kogito-serverless-operator/Makefile
@@ -4,7 +4,8 @@
 # - use the VERSION as arg of the bundle target (e.g make bundle VERSION=0.0.2)
 # - use environment variables to overwrite this value (e.g export 
VERSION=0.0.2)
 VERSION ?= 0.0.0
-REDUCED_VERSION ?= latest
+REDUCED_VERSION ?= 0.0
+IMAGE_TAG ?= latest
 
 # CHANNELS define the bundle channels used in the bundle.
 # Add a new line here if you would like to change its default config. (E.g 
CHANNELS = "candidate,fast,stable")
@@ -34,7 +35,7 @@ IMAGE_TAG_BASE ?= 
quay.io/kiegroup/kogito-serverless-operator-nightly
 
 # BUNDLE_IMG defines the image:tag used for the bundle.
 # You can use it as an arg. (E.g make bundle-build 
BUNDLE_IMG=<some-registry>/<project-name-bundle>:<tag>)
-BUNDLE_IMG ?= $(IMAGE_TAG_BASE)-bundle:v$(REDUCED_VERSION)
+BUNDLE_IMG ?= $(IMAGE_TAG_BASE)-bundle:v$(IMAGE_TAG)
 
 # BUNDLE_GEN_FLAGS are the flags passed to the operator-sdk generate bundle 
command
 # TODO: review this flag once we upgrade 
https://github.com/operator-framework/operator-sdk/issues/4992 
(https://issues.redhat.com/browse/KOGITO-9428)
@@ -53,7 +54,7 @@ ifeq ($(USE_IMAGE_DIGESTS), true)
 endif
 
 # Image URL to use all building/pushing image targets
-IMG ?= $(IMAGE_TAG_BASE):$(REDUCED_VERSION)
+IMG ?= $(IMAGE_TAG_BASE):$(IMAGE_TAG)
 # ENVTEST_K8S_VERSION refers to the version of kubebuilder assets to be 
downloaded by envtest binary.
 ENVTEST_K8S_VERSION = 1.24
 
@@ -334,7 +335,7 @@ generate-all: generate generate-deploy bundle addheaders 
vet fmt
 
 .PHONY: test-e2e # You will need to have a Minikube/Kind cluster up in running 
to run this target, and run container-builder before the test
 test-e2e:
-       go test ./test/e2e/* -v -ginkgo.v -ginkgo.no-color 
-ginkgo.junit-report=./e2e-test-report.xml -timeout 60m
+       go test ./test/e2e/* -v -ginkgo.v -ginkgo.no-color 
-ginkgo.junit-report=./dist-e2e-tests/junit-report-it.xml -timeout 60m
 
 .PHONY: before-pr
 before-pr: test generate-all
@@ -359,4 +360,4 @@ load-docker-image: install-kind
 .PHONY: full-test-e2e
 full-test-e2e: create-cluster load-docker-image deploy
        kubectl wait pod -A -l control-plane=sonataflow-operator --for 
condition=Ready --timeout 120s
-       go test ./test/e2e/* -v -ginkgo.v -ginkgo.no-color 
-ginkgo.junit-report=./e2e-test-report.xml -timeout 60m
+       go test ./test/e2e/* -v -ginkgo.v -ginkgo.no-color 
-ginkgo.junit-report=./dist-e2e-tests/junit-report-it.xml -timeout 60m
diff --git a/packages/kogito-serverless-operator/env/index.js 
b/packages/kogito-serverless-operator/env/index.js
index d3de48848c7..e141bd6b1f5 100644
--- a/packages/kogito-serverless-operator/env/index.js
+++ b/packages/kogito-serverless-operator/env/index.js
@@ -19,7 +19,11 @@
 
 const { varsWithName, composeEnv, getOrDefault } = 
require("@kie-tools-scripts/build-env");
 
-module.exports = composeEnv([require("@kie-tools/root-env/env")], {
+const kogitoSwfBuilderEnv = require("@kie-tools/kogito-swf-builder/env");
+const kogitoSwfDevModeEnv = require("@kie-tools/kogito-swf-devmode/env");
+const rootEnv = require("@kie-tools/root-env/env");
+
+module.exports = composeEnv([rootEnv, kogitoSwfBuilderEnv, 
kogitoSwfDevModeEnv], {
   vars: varsWithName({
     KOGITO_SERVERLESS_OPERATOR__registry: {
       default: "quay.io",
@@ -37,6 +41,14 @@ module.exports = 
composeEnv([require("@kie-tools/root-env/env")], {
       default: "latest",
       description: "The image tag",
     },
+    KOGITO_SERVERLESS_OPERATOR__kogitoSwfBuilderImage: {
+      default: 
`${kogitoSwfBuilderEnv.env.kogitoSwfBuilder.registry}/${kogitoSwfBuilderEnv.env.kogitoSwfBuilder.account}/${kogitoSwfBuilderEnv.env.kogitoSwfBuilder.name}:${kogitoSwfBuilderEnv.env.kogitoSwfBuilder.tag}`,
+      description: "Kogito SWF Builder image",
+    },
+    KOGITO_SERVERLESS_OPERATOR__kogitoSwfDevModeImage: {
+      default: 
`${kogitoSwfDevModeEnv.env.kogitoSwfDevMode.registry}/${kogitoSwfDevModeEnv.env.kogitoSwfDevMode.account}/${kogitoSwfDevModeEnv.env.kogitoSwfDevMode.name}:${kogitoSwfDevModeEnv.env.kogitoSwfDevMode.tag}`,
+      description: "Kogito SWF DevMode image",
+    },
   }),
   get env() {
     return {
@@ -46,6 +58,8 @@ module.exports = 
composeEnv([require("@kie-tools/root-env/env")], {
         name: getOrDefault(this.vars.KOGITO_SERVERLESS_OPERATOR__name),
         tag: getOrDefault(this.vars.KOGITO_SERVERLESS_OPERATOR__buildTag),
         version: require("../package.json").version,
+        kogitoSwfBuilderImage: 
getOrDefault(this.vars.KOGITO_SERVERLESS_OPERATOR__kogitoSwfBuilderImage),
+        kogitoSwfDevModeImage: 
getOrDefault(this.vars.KOGITO_SERVERLESS_OPERATOR__kogitoSwfDevModeImage),
       },
     };
   },
diff --git a/packages/kogito-serverless-operator/hack/bump-version.sh 
b/packages/kogito-serverless-operator/hack/bump-version.sh
index 5f59c10ef99..855d00575e8 100755
--- a/packages/kogito-serverless-operator/hack/bump-version.sh
+++ b/packages/kogito-serverless-operator/hack/bump-version.sh
@@ -20,48 +20,42 @@ set -e
 script_dir_path=$(dirname "${BASH_SOURCE[0]}")
 source "${script_dir_path}"/env.sh
 
-imageTag='quay.io/kiegroup/kogito-serverless-operator'
-# shellcheck disable=SC2034
-old_version=$(getOperatorVersion)
-latest_version=$(getOperatorLatestVersion)
-new_version=$1
+imageName=$(pnpm build-env kogitoServerlessOperator.registry)/$(pnpm build-env 
kogitoServerlessOperator.account)/$(pnpm build-env 
kogitoServerlessOperator.name)
+imageTag=$(pnpm build-env kogitoServerlessOperator.tag)
+version=$(pnpm build-env kogitoServerlessOperator.version)
 
-if [ -z "${new_version}" ]; then
+targetKogitoSwfBuilderImage=$(pnpm build-env 
kogitoServerlessOperator.kogitoSwfBuilderImage)
+targetKogitoSwfDevModeImage=$(pnpm build-env 
kogitoServerlessOperator.kogitoSwfDevModeImage)
+
+if [ -z "${version}" ]; then
   echo "Please inform the new version"
   exit 1
 fi
 
-imageSuffix=$(if [[ "${new_version}" == 0.0.0 ]]; then echo '-nightly'; else 
echo ''; fi)
-
-oldMajorMinorVersion=${old_version%.*}
-newMajorMinorVersion=${new_version%.*}
-if [ "${old_version}" = "${latest_version}" ]; then
-  oldMajorMinorVersion='latest'
-fi
-if [ "${new_version}" = "${latest_version}" ]; then
-  newMajorMinorVersion='latest'
-fi
+newMajorMinorVersion=${version%.*}
 
-echo "Set new version to ${new_version} (img_suffix = '${imageSuffix}', 
majorMinor = ${newMajorMinorVersion})"
+targetKogitoServerlessOperatorImage="${imageName}:${imageTag}"
 
+echo "Set new version to ${version} (majorMinor = ${newMajorMinorVersion}, 
imageName:imageTag = ${targetKogitoServerlessOperatorImage})"
 
-node -p "require('replace-in-file').sync({ from: /\bVERSION\ \?=.*\b/g, to: 
'VERSION ?= ${new_version}', files: ['./Makefile'] });"
+node -p "require('replace-in-file').sync({ from: /\bVERSION\ \?=.*\b/g, to: 
'VERSION ?= ${version}', files: ['./Makefile'] });"
 node -p "require('replace-in-file').sync({ from: /\bREDUCED_VERSION\ 
\?=.*\b/g, to: 'REDUCED_VERSION ?= ${newMajorMinorVersion}', files: 
['./Makefile'] });"
-node -p "require('replace-in-file').sync({ from: /\bIMAGE_TAG_BASE\ \?=.*\b/g, 
to: 'IMAGE_TAG_BASE ?= ${imageTag}${imageSuffix}', files: ['./Makefile'] });"
+node -p "require('replace-in-file').sync({ from: /\bIMAGE_TAG\ \?=.*\b/g, to: 
'IMAGE_TAG ?= ${imageTag}', files: ['./Makefile'] });"
+node -p "require('replace-in-file').sync({ from: /\bIMAGE_TAG_BASE\ \?=.*\b/g, 
to: 'IMAGE_TAG_BASE ?= ${imageName}', files: ['./Makefile'] });"
 
-node -p "require('replace-in-file').sync({ from: /\bnewTag:.*\b/g, to: 
'newTag: ${new_version}', files: ['./config/manager/kustomization.yaml'] });"
-node -p "require('replace-in-file').sync({ from: /\bnewName:.*\b/g, to: 
'newName: ${imageTag}${imageSuffix}', files: 
['./config/manager/kustomization.yaml'] });"
+node -p "require('replace-in-file').sync({ from: /\bnewTag:.*\b/g, to: 
'newTag: ${version}', files: ['./config/manager/kustomization.yaml'] });"
+node -p "require('replace-in-file').sync({ from: /\bnewName:.*\b/g, to: 
'newName: ${imageName}', files: ['./config/manager/kustomization.yaml'] });"
 
-node -p "require('replace-in-file').sync({ from: /\bversion: .*\b/g, to: 
'version: ${new_version}', files: ['./images/bundle.yaml'] });"
-node -p "require('replace-in-file').sync({ from: /\bversion: .*\b/g, to: 
'version: ${new_version}', files: ['./images/manager.yaml'] });"
+node -p "require('replace-in-file').sync({ from: /\bversion: .*\b/g, to: 
'version: ${version}', files: ['./images/bundle.yaml'] });"
+node -p "require('replace-in-file').sync({ from: /\bversion: .*\b/g, to: 
'version: ${version}', files: ['./images/manager.yaml'] });"
 
 # Update kogito-swf-* images
-node -p "require('replace-in-file').sync({ from: 
'quay.io/kiegroup/kogito-swf-builder${imageSuffix}:${oldMajorMinorVersion}', 
to: 
'quay.io/kiegroup/kogito-swf-builder${imageSuffix}:${newMajorMinorVersion}', 
files: ['**/*.yaml', '**/*.containerfile', '**/*.dockerfile', 
'**/*.Dockerfile', '**/*.go'] });"
-node -p "require('replace-in-file').sync({ from: 
'quay.io/kiegroup/kogito-swf-devmode${imageSuffix}:${oldMajorMinorVersion}', 
to: 
'quay.io/kiegroup/kogito-swf-devmode${imageSuffix}:${newMajorMinorVersion}', 
files: ['**/*.yaml', '**/*.containerfile', '**/*.dockerfile', 
'**/*.Dockerfile', '**/*.go'] });"
-node -p "require('replace-in-file').sync({ from: 
'quay.io/kiegroup/kogito-serverless-operator${imageSuffix}:${oldMajorMinorVersion}',
 to: 
'quay.io/kiegroup/kogito-serverless-operator${imageSuffix}:${newMajorMinorVersion}',
 files: ['**/*.yaml'] });"
+node -p "require('replace-in-file').sync({ from: 
'/quay.io\/kiegroup\/kogito-swf-builder.*/g', to: 
'${targetKogitoSwfBuilderImage}', files: ['**/*.yaml', '**/*.containerfile', 
'**/*.dockerfile', '**/*.Dockerfile', '**/*.go'] });"
+node -p "require('replace-in-file').sync({ from: 
'/quay.io\/kiegroup\/kogito-swf-devmode.*/g', to: 
'${targetKogitoSwfDevModeImage}', files: ['**/*.yaml', '**/*.containerfile', 
'**/*.dockerfile', '**/*.Dockerfile', '**/*.go'] });"
+node -p "require('replace-in-file').sync({ from: 
'/quay.io\/kiegroup\/kogito-serverless-operator.*/g', to: 
'${targetKogitoServerlessOperatorImage}', files: ['**/*.yaml'] });"
 
-node -p "require('replace-in-file').sync({ from: /\bOperatorVersion = .*/g, 
to: 'OperatorVersion = \"${new_version}\"', files: ['version/version.go'] });"
-node -p "require('replace-in-file').sync({ from: /\bcontainerImage:.*\b/g, to: 
'containerImage: ${imageTag}${imageSuffix}:${newMajorMinorVersion}', files: 
['$(getCsvFile)'] });"
+node -p "require('replace-in-file').sync({ from: /\bOperatorVersion = .*/g, 
to: 'OperatorVersion = \"${version}\"', files: ['version/version.go'] });"
+node -p "require('replace-in-file').sync({ from: /\bcontainerImage:.*\b/g, to: 
'containerImage: ${targetKogitoServerlessOperatorImage}', files: 
['$(getCsvFile)'] });"
 
 make generate-all
 make vet
diff --git a/packages/kogito-serverless-operator/package.json 
b/packages/kogito-serverless-operator/package.json
index 37d48b846f1..328bd9e66fa 100644
--- a/packages/kogito-serverless-operator/package.json
+++ b/packages/kogito-serverless-operator/package.json
@@ -20,7 +20,7 @@
     "build:prod:darwin:linux": ". 
./node_modules/@kie-tools/python-venv/venv/bin/activate && make build && pnpm 
image:build && pnpm test && pnpm test-e2e && pnpm format",
     "build:prod:win32": "echo 'Build not supported on Windows'",
     "bump-version": "run-script-os",
-    "bump-version:darwin:linux": "./hack/bump-version.sh $(pnpm build-env 
kogitoServerlessOperator.version)",
+    "bump-version:darwin:linux": "./hack/bump-version.sh",
     "bump-version:win32": "echo 'Bumping version not supported on Windows'",
     "format": "prettier --write .",
     "image:build": "run-script-os",
diff --git a/packages/kogito-swf-builder/install.js 
b/packages/kogito-swf-builder/install.js
index 360abf22804..0b8caa4b3ab 100644
--- a/packages/kogito-swf-builder/install.js
+++ b/packages/kogito-swf-builder/install.js
@@ -24,6 +24,7 @@ const buildEnv = require("./env");
 const path = require("path");
 const pythonVenvDir = 
path.dirname(require.resolve("@kie-tools/python-venv/package.json"));
 const kogitoSwfCommonDir = 
path.dirname(require.resolve("@kie-tools/kogito-swf-common/package.json"));
+const replaceInFile = require("replace-in-file");
 
 const activateCmd =
   process.platform === "win32"
@@ -46,12 +47,18 @@ if (imageYamlFiles.length !== 1) {
 const originalYamlPath = path.join(resourcesPath, imageYamlFiles[0]);
 let imageYaml = fs.readFileSync(originalYamlPath, "utf8");
 
+const imageUrl = 
`${buildEnv.env.kogitoSwfBuilder.registry}/${buildEnv.env.kogitoSwfBuilder.account}/${buildEnv.env.kogitoSwfBuilder.name}`;
+
 // Replace the whole string between quotes ("") with the image name
-imageYaml = imageYaml.replace(
-  /(?<=")(.*kogito-swf-builder.*)(?=")/gm,
-  
`${buildEnv.env.kogitoSwfBuilder.registry}/${buildEnv.env.kogitoSwfBuilder.account}/${buildEnv.env.kogitoSwfBuilder.name}`
-);
+imageYaml = imageYaml.replace(/(?<=")(.*kogito-swf-builder.*)(?=")/gm, 
imageUrl);
 
 // Write file and then rename it to match the image name
 fs.writeFileSync(originalYamlPath, imageYaml);
 fs.renameSync(originalYamlPath, path.join(resourcesPath, 
`${buildEnv.env.kogitoSwfBuilder.name}-image.yaml`));
+
+// Replace image URL in .feature files
+replaceInFile.sync({
+  files: ["**/*.feature"],
+  from: /@quay.io\/kiegroup\/.*/g,
+  to: `@${imageUrl}`,
+});
diff --git a/packages/kogito-swf-builder/package.json 
b/packages/kogito-swf-builder/package.json
index 91c3dd46cd4..d89ded6b126 100644
--- a/packages/kogito-swf-builder/package.json
+++ b/packages/kogito-swf-builder/package.json
@@ -34,6 +34,7 @@
     "@kie-tools/python-venv": "workspace:*",
     "@kie-tools/root-env": "workspace:*",
     "cross-env": "^7.0.3",
+    "replace-in-file": "^7.1.0",
     "rimraf": "^3.0.2",
     "run-script-os": "^1.1.6"
   },
diff --git 
a/packages/kogito-swf-builder/test-resources/tests/features/kogito-swf-builder-2.feature
 
b/packages/kogito-swf-builder/test-resources/tests/features/kogito-swf-builder-2.feature
index 51de9c6fdca..2535c3a0d5c 100644
--- 
a/packages/kogito-swf-builder/test-resources/tests/features/kogito-swf-builder-2.feature
+++ 
b/packages/kogito-swf-builder/test-resources/tests/features/kogito-swf-builder-2.feature
@@ -1,4 +1,4 @@
[email protected]/kiegroup/kogito-swf-builder
[email protected]/kiegroup/kogito-swf-builder-nightly
 Feature: Serverless Workflow images common
 
   Scenario: Verify if the swf and quarkus files are under 
/home/kogito/.m2/repository
diff --git 
a/packages/kogito-swf-builder/test-resources/tests/features/kogito-swf-builder.feature
 
b/packages/kogito-swf-builder/test-resources/tests/features/kogito-swf-builder.feature
index acae47c9ca3..e97ba9811cd 100644
--- 
a/packages/kogito-swf-builder/test-resources/tests/features/kogito-swf-builder.feature
+++ 
b/packages/kogito-swf-builder/test-resources/tests/features/kogito-swf-builder.feature
@@ -1,4 +1,4 @@
[email protected]/kiegroup/kogito-swf-builder
[email protected]/kiegroup/kogito-swf-builder-nightly
 Feature: Serverless Workflow builder images
 
   Scenario: Verify that the application is built and started correctly
diff --git a/packages/kogito-swf-common/resources/Makefile 
b/packages/kogito-swf-common/resources/Makefile
index 8c2303c2d4c..48d7ca9f1a0 100644
--- a/packages/kogito-swf-common/resources/Makefile
+++ b/packages/kogito-swf-common/resources/Makefile
@@ -68,11 +68,16 @@ ifneq ($(SWF_IMAGE_TAG), $(CURRENT_IMAGE_VERSION))
        ${BUILD_ENGINE} tag ${SWF_FULL_IMAGE_NAME}:${CURRENT_IMAGE_VERSION} 
${SWF_FULL_IMAGE_NAME}:${SWF_IMAGE_TAG}
 endif
 
+_create_e2e_dir:
+       rm -rf ../dist-e2e-tests
+       mkdir ../dist-e2e-tests
+
 # Trigger the image tests
-.PHONY test-image: _check_swf_image_name bats _test_image
+.PHONY test-image: _create_e2e_dir _check_swf_image_name bats _test_image
 _test_image:
-       ${CEKIT_CMD} --descriptor ${SWF_IMAGE_FILENAME} test behave
-       tests/shell/run.sh ${SWF_IMAGE_NAME} 
${SWF_FULL_IMAGE_NAME}:${SWF_IMAGE_TAG}
+       -${CEKIT_CMD} --descriptor ${SWF_IMAGE_FILENAME} test behave
+       cp -r target/test/results ../dist-e2e-tests/cekit/
+       -tests/shell/run.sh ${SWF_IMAGE_NAME} 
${SWF_FULL_IMAGE_NAME}:${SWF_IMAGE_TAG}
 
 .PHONY build: _check_swf_image_name _fix_platform_versions _cekit_build 
_tag_image
 
diff --git a/packages/kogito-swf-common/resources/scripts/run-bats.sh 
b/packages/kogito-swf-common/resources/scripts/run-bats.sh
index 3da0bf00ce8..6955434159c 100755
--- a/packages/kogito-swf-common/resources/scripts/run-bats.sh
+++ b/packages/kogito-swf-common/resources/scripts/run-bats.sh
@@ -21,6 +21,8 @@
 
 set -e
 
+script_dir_path="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
+
 if [[ $(command -v ./bats/bin/bats) ]]; then    #skip if bats already 
installed else will install the bats
     echo "---> bats already available running tests"
 else
@@ -29,5 +31,7 @@ else
     rm -rf bats-core
 fi
 
+tests_output_path="${script_dir_path}/../../dist-e2e-tests"
+
 echo "----> running bats"
-./bats/bin/bats modules/kogito-swf/common/scripts/tests/bats
+./bats/bin/bats modules/kogito-swf/common/scripts/tests/bats --formatter junit 
--report-formatter junit --output "${tests_output_path}"
diff --git a/packages/kogito-swf-devmode/install.js 
b/packages/kogito-swf-devmode/install.js
index 9a4eff75c62..33485a83de5 100644
--- a/packages/kogito-swf-devmode/install.js
+++ b/packages/kogito-swf-devmode/install.js
@@ -24,6 +24,7 @@ const buildEnv = require("./env");
 const path = require("path");
 const pythonVenvDir = 
path.dirname(require.resolve("@kie-tools/python-venv/package.json"));
 const kogitoSwfCommonDir = 
path.dirname(require.resolve("@kie-tools/kogito-swf-common/package.json"));
+const replaceInFile = require("replace-in-file");
 
 const activateCmd =
   process.platform === "win32"
@@ -46,12 +47,18 @@ if (imageYamlFiles.length !== 1) {
 const originalYamlPath = path.join(resourcesPath, imageYamlFiles[0]);
 let imageYaml = fs.readFileSync(originalYamlPath, "utf8");
 
+const imageUrl = 
`${buildEnv.env.kogitoSwfDevMode.registry}/${buildEnv.env.kogitoSwfDevMode.account}/${buildEnv.env.kogitoSwfDevMode.name}`;
+
 // Replace the whole string between quotes ("") with the image name
-imageYaml = imageYaml.replace(
-  /(?<=")(.*kogito-swf-devmode.*)(?=")/gm,
-  
`${buildEnv.env.kogitoSwfDevMode.registry}/${buildEnv.env.kogitoSwfDevMode.account}/${buildEnv.env.kogitoSwfDevMode.name}`
-);
+imageYaml = imageYaml.replace(/(?<=")(.*kogito-swf-devmode.*)(?=")/gm, 
imageUrl);
 
 // Write file and then rename it to match the image name
 fs.writeFileSync(originalYamlPath, imageYaml);
 fs.renameSync(originalYamlPath, path.join(resourcesPath, 
`${buildEnv.env.kogitoSwfDevMode.name}-image.yaml`));
+
+// Replace image URL in .feature files
+replaceInFile.sync({
+  files: ["**/*.feature"],
+  from: /@quay.io\/kiegroup\/.*/g,
+  to: `@${imageUrl}`,
+});
diff --git a/packages/kogito-swf-devmode/package.json 
b/packages/kogito-swf-devmode/package.json
index a7131d80edb..07111d79c8a 100644
--- a/packages/kogito-swf-devmode/package.json
+++ b/packages/kogito-swf-devmode/package.json
@@ -36,6 +36,7 @@
     "@kie-tools/root-env": "workspace:*",
     "@kie-tools/sonataflow-quarkus-devui": "workspace:*",
     "cross-env": "^7.0.3",
+    "replace-in-file": "^7.1.0",
     "rimraf": "^3.0.2",
     "run-script-os": "^1.1.6"
   },
diff --git 
a/packages/kogito-swf-devmode/test-resources/tests/features/kogito-swf-devmode-2.feature
 
b/packages/kogito-swf-devmode/test-resources/tests/features/kogito-swf-devmode-2.feature
index 4dae1df1cc1..e285e50cbff 100644
--- 
a/packages/kogito-swf-devmode/test-resources/tests/features/kogito-swf-devmode-2.feature
+++ 
b/packages/kogito-swf-devmode/test-resources/tests/features/kogito-swf-devmode-2.feature
@@ -1,4 +1,4 @@
[email protected]/kiegroup/kogito-swf-devmode
[email protected]/kiegroup/kogito-swf-devmode-nightly
 Feature: Serverless Workflow images common
 
   Scenario: Verify if the swf and quarkus files are under 
/home/kogito/.m2/repository
diff --git 
a/packages/kogito-swf-devmode/test-resources/tests/features/kogito-swf-devmode.feature
 
b/packages/kogito-swf-devmode/test-resources/tests/features/kogito-swf-devmode.feature
index c17ff1f9e69..2ecc7ec60c8 100644
--- 
a/packages/kogito-swf-devmode/test-resources/tests/features/kogito-swf-devmode.feature
+++ 
b/packages/kogito-swf-devmode/test-resources/tests/features/kogito-swf-devmode.feature
@@ -1,4 +1,4 @@
[email protected]/kiegroup/kogito-swf-devmode
[email protected]/kiegroup/kogito-swf-devmode-nightly
 Feature: Serverless Workflow devmode images
 
   Scenario: Verify if container starts in devmode by default
@@ -138,7 +138,7 @@ Feature: Serverless Workflow devmode images
       | request_method       | GET               |
       | expected_status_code | 200               |
     And container log should contain 
kogito-addon-microprofile-config-service-catalog-extension
-    
+
   Scenario: Verify if container have the KOGITO_CODEGEN_PROCESS_FAILONERROR 
env set to false
     When container is started with command bash
     Then run sh -c 'echo $KOGITO_CODEGEN_PROCESS_FAILONERROR' in container and 
immediately check its output for false
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 0fdc9a0ce93..e1a38d85aa0 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -6103,6 +6103,9 @@ importers:
       cross-env:
         specifier: ^7.0.3
         version: 7.0.3
+      replace-in-file:
+        specifier: ^7.1.0
+        version: 7.1.0
       rimraf:
         specifier: ^3.0.2
         version: 3.0.2
@@ -6136,6 +6139,9 @@ importers:
       cross-env:
         specifier: ^7.0.3
         version: 7.0.3
+      replace-in-file:
+        specifier: ^7.1.0
+        version: 7.1.0
       rimraf:
         specifier: ^3.0.2
         version: 3.0.2


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to