sync
This commit is contained in:
parent
a0b41d168a
commit
e73fac2d0a
2 changed files with 111 additions and 0 deletions
47
pubnix.py
Normal file
47
pubnix.py
Normal file
|
@ -0,0 +1,47 @@
|
|||
import os
|
||||
import subprocess
|
||||
|
||||
PORT = 22
|
||||
USER = 'mspe'
|
||||
ROOT = 'public_html'
|
||||
PROTOCOL = 'https'
|
||||
DIR = False
|
||||
|
||||
|
||||
class PubNix:
|
||||
|
||||
def __init__(self, dn,
|
||||
ssh=None, port=PORT, user=USER,
|
||||
root=ROOT, dir=DIR, web=None, sub=None):
|
||||
self.dn = dn
|
||||
self.ssh = f'{ssh}.{self.dn}' if ssh else self.dn
|
||||
self.port = port
|
||||
self.user = user
|
||||
self.root = root
|
||||
self.web = f'{web}.{self.dn}' if web else self.dn
|
||||
if sub:
|
||||
self.fqdn = f'{self.user}.{self.web}'
|
||||
self.context = None
|
||||
else:
|
||||
self.fqdn = self.web
|
||||
self.context = f'~{self.user}'
|
||||
self.path = os.path.join(self.root, self.fqdn) if dir else self.root
|
||||
self.target = f'{self.user}@{self.ssh}:{self.path}'
|
||||
self.url = [f'{PROTOCOL}:', str(), self.fqdn]
|
||||
if self.context:
|
||||
self.url.append(self.context)
|
||||
self.url = '/'.join(self.url)
|
||||
|
||||
def run(self, *args):
|
||||
subprocess.call(['ssh',
|
||||
'-o', 'LogLevel Error',
|
||||
'-p', str(self.port),
|
||||
f'{self.user}@{self.ssh}',
|
||||
'--',
|
||||
*args])
|
||||
|
||||
def disk_free(self):
|
||||
self.run('df', '-h', os.curdir)
|
||||
|
||||
def __str__(self):
|
||||
return os.linesep.join([self.target, self.url])
|
Loading…
Add table
Add a link
Reference in a new issue