diff --git a/src/policy/util/set_version.sh b/src/policy/util/set_version.sh
new file mode 100755
index 0000000000000000000000000000000000000000..dcfdfe49696d518ef7cfb89f444b133dc4f0ced3
--- /dev/null
+++ b/src/policy/util/set_version.sh
@@ -0,0 +1,17 @@
+#!/usr/bin/env bash
+set -eu
+
+if (( $# != 1 )); then
+  echo "Usage: set_version.sh <version>" >&2
+  exit 1
+fi
+
+version="$1"
+
+if [ "$(git status --untracked-files=no --porcelain)" ]; then
+    printf "Uncommitted changes in tracked files.\nPlease commit first and then run the script!\n"
+    exit 0;
+fi
+
+./mvnw versions:set versions:commit -DnewVersion="${version}"
+git commit -am "release(policy): ${version}"