diff --git a/.github/workflows/release-tag.yml b/.github/workflows/release-tag.yml
index df743e107b71c1c426cb582e77ffe9a6e60427e0..f17e3b0f1dc44ba9eb65a6dd5c489cd11856ec68 100644
--- a/.github/workflows/release-tag.yml
+++ b/.github/workflows/release-tag.yml
@@ -28,6 +28,30 @@ on:
         description: Apply to OSS
         type: boolean
         default: true
+  workflow_call:
+    inputs:
+      version:
+        type: string
+        required: true
+      tag_name:
+        type: string
+        # options:
+        #   - nightly
+        #   - beta
+        #   - latest
+        required: true
+      tag_rollout:
+        description: Rollout % (0-100)
+        type: number
+        default: 100
+      tag_ee:
+        description: Apply to EE
+        type: boolean
+        default: true
+      tag_oss:
+        description: Apply to OSS
+        type: boolean
+        default: true
 
 jobs:
   check-version:
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index baf4950c5d7315752e951b978ec297bffbdd83a9..0f0587b15bb8f059a7bce3cb0c3322f92779ca74 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -687,6 +687,17 @@ jobs:
         --distribution-id ${{ vars.AWS_CLOUDFRONT_STATIC_ID }} \
         --paths "/version-info.json" "/version-info-ee.json"
 
+  tag-nightly:
+    if: ${{ inputs.auto }}
+    needs: [push-tags, verify-docker-pull, verify-s3-download]
+    uses: ./.github/workflows/release-tag.yml
+    with:
+      version: ${{ inputs.version }}
+      tag_name: nightly
+      tag_rollout: 100
+      tag_ee: true
+      tag_oss: true
+
   publish-complete-message:
     if: ${{ !inputs.auto }}
     runs-on: ubuntu-22.04
@@ -719,7 +730,7 @@ jobs:
   auto-publish-complete-message:
     if: ${{ inputs.auto }}
     runs-on: ubuntu-22.04
-    needs: [push-tags, verify-docker-pull, verify-s3-download]
+    needs: tag-nightly
     timeout-minutes: 5
     steps:
       - uses: actions/checkout@v4