Programs the security group with SSH access before deploying virtualmachine @return:
(cls, apiclient, cmd)
| 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( |
no test coverage detected