Skip to content

Commit 247ca75

Browse files
Zuulopenstack-gerrit
authored andcommitted
Merge "compute: Add --password option for openstack server create"
2 parents 2eeab20 + fd9a235 commit 247ca75

3 files changed

Lines changed: 36 additions & 0 deletions

File tree

openstackclient/compute/v2/server.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -606,6 +606,11 @@ def get_parser(self, prog_name):
606606
'duplicate mapping using --block-device-mapping for this '
607607
'volume.'),
608608
)
609+
parser.add_argument(
610+
'--password',
611+
metavar='<password>',
612+
help=_("Set the password to this server"),
613+
)
609614
parser.add_argument(
610615
'--flavor',
611616
metavar='<flavor>',
@@ -1105,6 +1110,7 @@ def _match_image(image_api, wanted_properties):
11051110
userdata=userdata,
11061111
key_name=parsed_args.key_name,
11071112
availability_zone=parsed_args.availability_zone,
1113+
admin_pass=parsed_args.password,
11081114
block_device_mapping_v2=block_device_mapping_v2,
11091115
nics=nics,
11101116
scheduler_hints=hints,

openstackclient/tests/unit/compute/v2/test_server.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -972,6 +972,7 @@ def test_server_create_minimal(self):
972972
userdata=None,
973973
key_name=None,
974974
availability_zone=None,
975+
admin_pass=None,
975976
block_device_mapping_v2=[],
976977
nics=[],
977978
scheduler_hints={},
@@ -998,6 +999,7 @@ def test_server_create_with_options(self):
998999
'--property', 'Beta=b',
9991000
'--security-group', 'securitygroup',
10001001
'--use-config-drive',
1002+
'--password', 'passw0rd',
10011003
'--hint', 'a=b',
10021004
'--hint', 'a=c',
10031005
self.new_server.name,
@@ -1010,6 +1012,7 @@ def test_server_create_with_options(self):
10101012
('security_group', ['securitygroup']),
10111013
('hint', {'a': ['b', 'c']}),
10121014
('config_drive', True),
1015+
('password', 'passw0rd'),
10131016
('server_name', self.new_server.name),
10141017
]
10151018
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -1038,6 +1041,7 @@ def test_server_create_with_options(self):
10381041
userdata=None,
10391042
key_name='keyname',
10401043
availability_zone=None,
1044+
admin_pass='passw0rd',
10411045
block_device_mapping_v2=[],
10421046
nics=[],
10431047
scheduler_hints={'a': ['b', 'c']},
@@ -1124,6 +1128,7 @@ def test_server_create_with_security_group_in_nova_network(self):
11241128
userdata=None,
11251129
key_name='keyname',
11261130
availability_zone=None,
1131+
admin_pass=None,
11271132
block_device_mapping_v2=[],
11281133
nics=[],
11291134
scheduler_hints={},
@@ -1210,6 +1215,7 @@ def test_server_create_with_network(self):
12101215
userdata=None,
12111216
key_name=None,
12121217
availability_zone=None,
1218+
admin_pass=None,
12131219
block_device_mapping_v2=[],
12141220
nics=[{'net-id': 'net1_uuid',
12151221
'v4-fixed-ip': '',
@@ -1274,6 +1280,7 @@ def test_server_create_with_auto_network(self):
12741280
userdata=None,
12751281
key_name=None,
12761282
availability_zone=None,
1283+
admin_pass=None,
12771284
block_device_mapping_v2=[],
12781285
nics='auto',
12791286
scheduler_hints={},
@@ -1323,6 +1330,7 @@ def test_server_create_with_auto_network_default_v2_37(self):
13231330
userdata=None,
13241331
key_name=None,
13251332
availability_zone=None,
1333+
admin_pass=None,
13261334
block_device_mapping_v2=[],
13271335
nics='auto',
13281336
scheduler_hints={},
@@ -1368,6 +1376,7 @@ def test_server_create_with_none_network(self):
13681376
userdata=None,
13691377
key_name=None,
13701378
availability_zone=None,
1379+
admin_pass=None,
13711380
block_device_mapping_v2=[],
13721381
nics='none',
13731382
scheduler_hints={},
@@ -1533,6 +1542,7 @@ def test_server_create_with_wait_ok(self, mock_wait_for_status):
15331542
userdata=None,
15341543
key_name=None,
15351544
availability_zone=None,
1545+
admin_pass=None,
15361546
block_device_mapping_v2=[],
15371547
nics=[],
15381548
scheduler_hints={},
@@ -1583,6 +1593,7 @@ def test_server_create_with_wait_fails(self, mock_wait_for_status):
15831593
userdata=None,
15841594
key_name=None,
15851595
availability_zone=None,
1596+
admin_pass=None,
15861597
block_device_mapping_v2=[],
15871598
nics=[],
15881599
scheduler_hints={},
@@ -1638,6 +1649,7 @@ def test_server_create_userdata(self, mock_open):
16381649
userdata=mock_file,
16391650
key_name=None,
16401651
availability_zone=None,
1652+
admin_pass=None,
16411653
block_device_mapping_v2=[],
16421654
nics=[],
16431655
scheduler_hints={},
@@ -1684,6 +1696,7 @@ def test_server_create_with_block_device_mapping(self):
16841696
userdata=None,
16851697
key_name=None,
16861698
availability_zone=None,
1699+
admin_pass=None,
16871700
block_device_mapping_v2=[{
16881701
'device_name': 'vda',
16891702
'uuid': self.volume.id,
@@ -1736,6 +1749,7 @@ def test_server_create_with_block_device_mapping_min_input(self):
17361749
userdata=None,
17371750
key_name=None,
17381751
availability_zone=None,
1752+
admin_pass=None,
17391753
block_device_mapping_v2=[{
17401754
'device_name': 'vdf',
17411755
'uuid': self.volume.id,
@@ -1787,6 +1801,7 @@ def test_server_create_with_block_device_mapping_default_input(self):
17871801
userdata=None,
17881802
key_name=None,
17891803
availability_zone=None,
1804+
admin_pass=None,
17901805
block_device_mapping_v2=[{
17911806
'device_name': 'vdf',
17921807
'uuid': self.volume.id,
@@ -1840,6 +1855,7 @@ def test_server_create_with_block_device_mapping_full_input(self):
18401855
userdata=None,
18411856
key_name=None,
18421857
availability_zone=None,
1858+
admin_pass=None,
18431859
block_device_mapping_v2=[{
18441860
'device_name': 'vde',
18451861
'uuid': self.volume.id,
@@ -1895,6 +1911,7 @@ def test_server_create_with_block_device_mapping_snapshot(self):
18951911
userdata=None,
18961912
key_name=None,
18971913
availability_zone=None,
1914+
admin_pass=None,
18981915
block_device_mapping_v2=[{
18991916
'device_name': 'vds',
19001917
'uuid': self.snapshot.id,
@@ -1950,6 +1967,7 @@ def test_server_create_with_block_device_mapping_multiple(self):
19501967
userdata=None,
19511968
key_name=None,
19521969
availability_zone=None,
1970+
admin_pass=None,
19531971
block_device_mapping_v2=[
19541972
{
19551973
'device_name': 'vdb',
@@ -2086,6 +2104,7 @@ def test_server_create_image_property(self):
20862104
userdata=None,
20872105
key_name=None,
20882106
availability_zone=None,
2107+
admin_pass=None,
20892108
block_device_mapping_v2=[],
20902109
nics='none',
20912110
meta=None,
@@ -2141,6 +2160,7 @@ def test_server_create_image_property_multi(self):
21412160
userdata=None,
21422161
key_name=None,
21432162
availability_zone=None,
2163+
admin_pass=None,
21442164
block_device_mapping_v2=[],
21452165
nics='none',
21462166
meta=None,
@@ -2230,6 +2250,7 @@ def test_server_create_image_property_with_image_list(self):
22302250
userdata=None,
22312251
key_name=None,
22322252
availability_zone=None,
2253+
admin_pass=None,
22332254
block_device_mapping_v2=[],
22342255
nics='none',
22352256
meta=None,
@@ -2310,6 +2331,7 @@ def test_server_create_with_description_api_newer(self):
23102331
userdata=None,
23112332
key_name=None,
23122333
availability_zone=None,
2334+
admin_pass=None,
23132335
block_device_mapping_v2=[],
23142336
nics='auto',
23152337
scheduler_hints={},
@@ -2394,6 +2416,7 @@ def test_server_create_with_host_v274(self):
23942416
userdata=None,
23952417
key_name=None,
23962418
availability_zone=None,
2419+
admin_pass=None,
23972420
block_device_mapping_v2=[],
23982421
nics='auto',
23992422
scheduler_hints={},
@@ -2479,6 +2502,7 @@ def test_server_create_with_hypervisor_hostname_v274(self):
24792502
userdata=None,
24802503
key_name=None,
24812504
availability_zone=None,
2505+
admin_pass=None,
24822506
block_device_mapping_v2=[],
24832507
nics='auto',
24842508
scheduler_hints={},
@@ -2566,6 +2590,7 @@ def test_server_create_with_host_and_hypervisor_hostname_v274(self):
25662590
userdata=None,
25672591
key_name=None,
25682592
availability_zone=None,
2593+
admin_pass=None,
25692594
block_device_mapping_v2=[],
25702595
nics='auto',
25712596
scheduler_hints={},
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
features:
3+
- |
4+
Add ``--password`` option to ``server create`` command, allowing users to
5+
set the admin password when creating a new instance.

0 commit comments

Comments
 (0)