MCPcopy Create free account
hub / github.com/apache/cloudstack / ssh_access_group

Method ssh_access_group

tools/marvin/marvin/lib/base.py:408–454  ·  view source on GitHub ↗

Programs the security group with SSH access before deploying virtualmachine @return:

(cls, apiclient, cmd)

Source from the content-addressed store, hash-verified

406
407 @classmethod
408 def ssh_access_group(cls, apiclient, cmd):
409 """
410 Programs the security group with SSH
411 access before deploying virtualmachine
412 @return:
413 """
414 zone_list = Zone.list(
415 apiclient,
416 id=cmd.zoneid if cmd.zoneid else None,
417 domainid=cmd.domainid if cmd.domainid else None
418 )
419 zone = zone_list[0]
420 # check if security groups settings is enabled for the zone
421 if zone.securitygroupsenabled:
422 list_security_groups = SecurityGroup.list(
423 apiclient,
424 account=cmd.account,
425 domainid=cmd.domainid,
426 listall=True,
427 securitygroupname="basic_sec_grp"
428 )
429
430 if not isinstance(list_security_groups, list):
431 basic_mode_security_group = SecurityGroup.create(
432 apiclient,
433 {"name": "basic_sec_grp"},
434 cmd.account,
435 cmd.domainid,
436 )
437 sec_grp_services = {
438 "protocol": "TCP",
439 "startport": 22,
440 "endport": 22,
441 "cidrlist": "0.0.0.0/0"
442 }
443 # Authorize security group for above ingress rule
444 basic_mode_security_group.authorize(apiclient,
445 sec_grp_services,
446 account=cmd.account,
447 domainid=cmd.domainid)
448 else:
449 basic_mode_security_group = list_security_groups[0]
450
451 if isinstance(cmd.securitygroupids, list):
452 cmd.securitygroupids.append(basic_mode_security_group.id)
453 else:
454 cmd.securitygroupids = [basic_mode_security_group.id]
455
456 @classmethod
457 def access_ssh_over_nat(

Callers 2

createMethod · 0.80
createMethod · 0.80

Implementers 2

VMEntityVOengine/schema/src/main/java/org/apache
VMInstanceVOengine/schema/src/main/java/com/cloud/

Calls 4

listMethod · 0.65
createMethod · 0.65
authorizeMethod · 0.45
appendMethod · 0.45

Tested by

no test coverage detected