Ejemplo n.º 1
0
 def exec_command(self,
                  cmd,
                  tmp_path,
                  sudo_user=None,
                  sudoable=False,
                  executable=None,
                  in_data=None,
                  su=None,
                  su_user=None):
     cmd = cmd.encode('utf-8')
     cmd_parts = shlex.split(cmd, posix=False)
     if '-EncodedCommand' in cmd_parts:
         encoded_cmd = cmd_parts[cmd_parts.index('-EncodedCommand') + 1]
         decoded_cmd = base64.b64decode(encoded_cmd)
         vvv("EXEC %s" % decoded_cmd, host=self.host)
     else:
         vvv("EXEC %s" % cmd, host=self.host)
     # For script/raw support.
     if cmd_parts and cmd_parts[0].lower().endswith('.ps1'):
         script = powershell._build_file_cmd(cmd_parts)
         cmd_parts = powershell._encode_script(script, as_list=True)
     try:
         result = self._winrm_exec(cmd_parts[0],
                                   cmd_parts[1:],
                                   from_exec=True)
     except Exception, e:
         traceback.print_exc()
         raise errors.AnsibleError("failed to exec cmd %s" % cmd)
Ejemplo n.º 2
0
    def exec_command(self,
                     cmd,
                     tmp_path,
                     become_user=None,
                     sudoable=False,
                     executable=None,
                     in_data=None):

        if sudoable and self.runner.become and self.runner.become_method not in self.become_methods_supported:
            raise errors.AnsibleError(
                "Internal Error: this module does not support running commands via %s"
                % self.runner.become_method)

        cmd = cmd.encode('utf-8')
        cmd_parts = shlex.split(cmd, posix=False)
        if '-EncodedCommand' in cmd_parts:
            encoded_cmd = cmd_parts[cmd_parts.index('-EncodedCommand') + 1]
            decoded_cmd = base64.b64decode(encoded_cmd)
            vvv("EXEC %s" % decoded_cmd, host=self.host)
        else:
            vvv("EXEC %s" % cmd, host=self.host)
        # For script/raw support.
        if cmd_parts and cmd_parts[0].lower().endswith('.ps1'):
            script = powershell._build_file_cmd(cmd_parts, quote_args=False)
            cmd_parts = powershell._encode_script(script, as_list=True)
        try:
            result = self._winrm_exec(cmd_parts[0],
                                      cmd_parts[1:],
                                      from_exec=True)
        except Exception, e:
            traceback.print_exc()
            raise errors.AnsibleError("failed to exec cmd %s" % cmd)
Ejemplo n.º 3
0
 def exec_command(self, cmd, tmp_path, sudo_user=None, sudoable=False, executable=None, in_data=None, su=None, su_user=None):
     cmd = cmd.encode('utf-8')
     cmd_parts = shlex.split(cmd, posix=False)
     if '-EncodedCommand' in cmd_parts:
         encoded_cmd = cmd_parts[cmd_parts.index('-EncodedCommand') + 1]
         decoded_cmd = base64.b64decode(encoded_cmd)
         vvv("EXEC %s" % decoded_cmd, host=self.host)
     else:
         vvv("EXEC %s" % cmd, host=self.host)
     # For script/raw support.
     if cmd_parts and cmd_parts[0].lower().endswith('.ps1'):
         script = powershell._build_file_cmd(cmd_parts)
         cmd_parts = powershell._encode_script(script, as_list=True)
     try:
         result = self._winrm_exec(cmd_parts[0], cmd_parts[1:], from_exec=True)
     except Exception, e:
         traceback.print_exc()
         raise errors.AnsibleError("failed to exec cmd %s" % cmd)
Ejemplo n.º 4
0
    def exec_command(self, cmd, tmp_path, become_user=None, sudoable=False, executable=None, in_data=None):

        if sudoable and self.runner.become and self.runner.become_method not in self.become_methods_supported:
            raise errors.AnsibleError("Internal Error: this module does not support running commands via %s" % self.runner.become_method)

        cmd = cmd.encode('utf-8')
        cmd_parts = shlex.split(cmd, posix=False)
        if '-EncodedCommand' in cmd_parts:
            encoded_cmd = cmd_parts[cmd_parts.index('-EncodedCommand') + 1]
            decoded_cmd = base64.b64decode(encoded_cmd)
            vvv("EXEC %s" % decoded_cmd, host=self.host)
        else:
            vvv("EXEC %s" % cmd, host=self.host)
        # For script/raw support.
        if cmd_parts and cmd_parts[0].lower().endswith('.ps1'):
            script = powershell._build_file_cmd(cmd_parts, quote_args=False)
            cmd_parts = powershell._encode_script(script, as_list=True)
        try:
            result = self._winrm_exec(cmd_parts[0], cmd_parts[1:], from_exec=True)
        except Exception, e:
            traceback.print_exc()
            raise errors.AnsibleError("failed to exec cmd %s" % cmd)