def postdeploy(self): '''Do post deploy on deploy node.''' self.playbook.local_only = True self.playbook.become_user = get_admin_user() job = self.playbook.run() return job
def certificate_init(self): '''Creates a self-signed certificate''' self.playbook.local_only = True self.playbook.become_user = get_admin_user() job = self.playbook.run() return job
def set_remote(self, remote_flag): self.set_var(ANSIBLE_BECOME, 'yes') if remote_flag: # set the ssh info for all the servers in the group self.set_var(ANSIBLE_SSH_USER, get_admin_user()) self.clear_var(ANSIBLE_CONNECTION) else: # remove ssh info, add local connection type self.set_var(ANSIBLE_CONNECTION, 'local') self.clear_var(ANSIBLE_SSH_USER)
def certificate_init(verbose_level=1): '''Creates a self-signed certificate''' playbook = AnsiblePlaybook() playbook_name = 'certificates.yml' kolla_home = get_kolla_ansible_home() playbook.playbook_path = os.path.join(kolla_home, 'ansible/' + playbook_name) playbook.verbose_level = verbose_level playbook.local_only = True playbook.become_user = get_admin_user() job = playbook.run() return job
def ssh_setup_host(net_addr, password, setup_user=None): admin_user = get_admin_user() if setup_user is None: setup_user = get_setup_user() public_key = ssh_get_public_key() ssh_client = None try: ssh_client = ssh_connect(net_addr, setup_user, password) # populate authorized keys file w/ public key key_dir = os.path.join(os.path.expanduser('~%s' % admin_user), '.ssh', 'authorized_keys') cmd = ('/usr/bin/sudo su - %s -c "echo \'%s\' >> %s"' % (admin_user, public_key, key_dir)) _exec_ssh_cmd(cmd, ssh_client) except Exception as e: raise e finally: _close_ssh_client(ssh_client)