diff --git a/README.md b/README.md
index fb6eea5e..8e3f1056 100644
--- a/README.md
+++ b/README.md
@@ -19,7 +19,7 @@ If you wish to contribute to YOJ, see the [Notice to external contributors](CONT
tech.ydb.yoj
yoj-bom
- 2.2.3
+ 2.2.4
pom
import
diff --git a/bom/pom.xml b/bom/pom.xml
index a813d932..03016680 100644
--- a/bom/pom.xml
+++ b/bom/pom.xml
@@ -6,7 +6,7 @@
tech.ydb.yoj
yoj-bom
- 2.2.4-SNAPSHOT
+ 2.2.4
pom
YOJ - Bill of Materials
diff --git a/databind/pom.xml b/databind/pom.xml
index 8d3a055b..f6fffb91 100644
--- a/databind/pom.xml
+++ b/databind/pom.xml
@@ -10,7 +10,7 @@
tech.ydb.yoj
yoj-parent
- 2.2.4-SNAPSHOT
+ 2.2.4
../pom.xml
diff --git a/json-jackson-v2/pom.xml b/json-jackson-v2/pom.xml
index af0044e8..6c4b5436 100644
--- a/json-jackson-v2/pom.xml
+++ b/json-jackson-v2/pom.xml
@@ -10,7 +10,7 @@
tech.ydb.yoj
yoj-parent
- 2.2.4-SNAPSHOT
+ 2.2.4
../pom.xml
diff --git a/pom.xml b/pom.xml
index e6fbf124..fb926144 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
tech.ydb.yoj
yoj-parent
- 2.2.4-SNAPSHOT
+ 2.2.4
pom
YDB ORM for Java (YOJ)
diff --git a/prepare-release.sh b/prepare-release.sh
new file mode 100755
index 00000000..aab37f31
--- /dev/null
+++ b/prepare-release.sh
@@ -0,0 +1,41 @@
+#!/bin/sh
+
+set -e
+set pipefail
+
+die() {
+ echo "$@" >&2
+ exit 1
+}
+
+[ -z "$YOJ_VERSION" ] && die "Please set YOJ_VERSION before calling prepare-release.sh"
+[ -z "$MVN" ] && MVN='mvn'
+
+echo "[**] Updating YOJ artifact version to ${YOJ_VERSION}..."
+"$MVN" versions:set -DnewVersion="${YOJ_VERSION}" -DprocessAllModules -DgenerateBackupPoms=false
+
+echo
+echo "[**] Checking that YOJ ${YOJ_VERSION} builds successfully:"
+"$MVN" clean verify
+
+echo
+echo "[**] Updating README.md:"
+sed "/yoj-bom<\/artifactId>\$/ {
+ N
+ s|.*|${YOJ_VERSION}|
+}" README.md > README.md.new
+mv -- README.md.new README.md
+
+echo
+echo "[**] Committing changes to VCS:"
+git add -A
+git commit -m "Release YOJ ${YOJ_VERSION}"
+git tag "v${YOJ_VERSION}"
+
+echo
+echo "[**] Pushing changes:"
+#git push origin && git push origin --tags
+
+echo
+echo "[**] Done!"
+echo " See https://github.com/ydb-platform/yoj-project/actions"
diff --git a/repository-inmemory/pom.xml b/repository-inmemory/pom.xml
index 851638a2..424c18f4 100644
--- a/repository-inmemory/pom.xml
+++ b/repository-inmemory/pom.xml
@@ -10,7 +10,7 @@
tech.ydb.yoj
yoj-parent
- 2.2.4-SNAPSHOT
+ 2.2.4
../pom.xml
diff --git a/repository-test/pom.xml b/repository-test/pom.xml
index 6179a971..94e96f6b 100644
--- a/repository-test/pom.xml
+++ b/repository-test/pom.xml
@@ -10,7 +10,7 @@
tech.ydb.yoj
yoj-parent
- 2.2.4-SNAPSHOT
+ 2.2.4
../pom.xml
diff --git a/repository-ydb-common/pom.xml b/repository-ydb-common/pom.xml
index d42543b5..ce19049f 100644
--- a/repository-ydb-common/pom.xml
+++ b/repository-ydb-common/pom.xml
@@ -10,7 +10,7 @@
tech.ydb.yoj
yoj-parent
- 2.2.4-SNAPSHOT
+ 2.2.4
../pom.xml
diff --git a/repository-ydb-v1/pom.xml b/repository-ydb-v1/pom.xml
index 4599e241..c01ee5d6 100644
--- a/repository-ydb-v1/pom.xml
+++ b/repository-ydb-v1/pom.xml
@@ -10,7 +10,7 @@
tech.ydb.yoj
yoj-parent
- 2.2.4-SNAPSHOT
+ 2.2.4
../pom.xml
diff --git a/repository-ydb-v2/pom.xml b/repository-ydb-v2/pom.xml
index 6870505a..5ca4a439 100644
--- a/repository-ydb-v2/pom.xml
+++ b/repository-ydb-v2/pom.xml
@@ -10,7 +10,7 @@
tech.ydb.yoj
yoj-parent
- 2.2.4-SNAPSHOT
+ 2.2.4
../pom.xml
diff --git a/repository/pom.xml b/repository/pom.xml
index f0ec8fe2..89491955 100644
--- a/repository/pom.xml
+++ b/repository/pom.xml
@@ -10,7 +10,7 @@
tech.ydb.yoj
yoj-parent
- 2.2.4-SNAPSHOT
+ 2.2.4
../pom.xml
diff --git a/util/pom.xml b/util/pom.xml
index 77718280..befb87f6 100644
--- a/util/pom.xml
+++ b/util/pom.xml
@@ -10,7 +10,7 @@
tech.ydb.yoj
yoj-parent
- 2.2.4-SNAPSHOT
+ 2.2.4
../pom.xml