MartinSolie / mcduck

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

McDuck

Stuff to execute commands:

  • locally
  • via ssh
  • via telnet

Execute commands locally

From code:

from executors.local import LocalExecutor

executor = LocalExecutor()
return_code, stdout, stderr = executor.execute('ls', ('-a', '/etc'))

From command line:

$ python3 main.py local ls -a /etc

Execute commands via ssh

From code

from executors.ssh import SSHExecutor

executor = SSHExecutor('127.0.0.1', user='admin', password='sIcretandsecYre')
with executor:
    return_code, stdout, stderr = executor.execute('ls', ('-a', '/etc'))

From command line

$ python3 main.py ssh admin:sIcretandsecYre@127.0.0.1 ls -a /etc

Execute commands via telnet

From code

from executors.telnet import TelnetExecutor

executor = TelnetExecutor('127.0.0.1', 'admin', 'sIcretandsecYre')
return_code, stdout, stderr = executor.execute('pwd')

From command line

# Password will be prompted interactively
$ python3 main.py telnet admin@127.0.0.1 ls -a /etc

Testing

Please, install docker, tests are running inside docker container

docker build -t martinsolie/mcduck-test -f .ci/self_contained_test.dockerfile .
docker run --rm martinsolie/mcduck-test

About


Languages

Language:Python 92.5%Language:Dockerfile 6.7%Language:Shell 0.8%