diff --git a/openstackclient/compute/v2/server_group.py b/openstackclient/compute/v2/server_group.py
index c6e2161f60..c49a552f2c 100644
--- a/openstackclient/compute/v2/server_group.py
+++ b/openstackclient/compute/v2/server_group.py
@@ -55,11 +55,12 @@ class CreateServerGroup(command.ShowOne):
         parser.add_argument(
             '--policy',
             metavar='<policy>',
-            choices=['affinity', 'anti-affinity'],
             default='affinity',
             help=_("Add a policy to <name> "
                    "('affinity' or 'anti-affinity', "
-                   "default to 'affinity')")
+                   "defaults to 'affinity'). Specify --os-compute-api-version "
+                   "2.15 or higher for the 'soft-affinity' or "
+                   "'soft-anti-affinity' policy.")
         )
         return parser
 
diff --git a/openstackclient/tests/unit/compute/v2/test_server_group.py b/openstackclient/tests/unit/compute/v2/test_server_group.py
index 088497da30..dc924e2421 100644
--- a/openstackclient/tests/unit/compute/v2/test_server_group.py
+++ b/openstackclient/tests/unit/compute/v2/test_server_group.py
@@ -63,11 +63,11 @@ class TestServerGroupCreate(TestServerGroup):
 
     def test_server_group_create(self):
         arglist = [
-            '--policy', 'anti-affinity',
+            '--policy', 'soft-anti-affinity',
             'affinity_group',
         ]
         verifylist = [
-            ('policy', 'anti-affinity'),
+            ('policy', 'soft-anti-affinity'),
             ('name', 'affinity_group'),
         ]
         parsed_args = self.check_parser(self.cmd, arglist, verifylist)