nuka.tasks.file

nuka.tasks.file.cat

Example:

res = await file.cat('/etc/default/useradd')
assert res.content

nuka.tasks.file.chmod

nuka.tasks.file.chown

nuka.tasks.file.exists

Example:

res = await file.exists('/tmp')
assert bool(res) is True

res = await file.exists('/nope')
assert bool(res) is False

nuka.tasks.file.mkdir

Example:

if not await file.exists('/tmp/doc'):
    await file.mkdir('/tmp/doc')

nuka.tasks.file.mkdirs

nuka.tasks.file.mv

nuka.tasks.file.put

Example:

await file.put([
    dict(src='/etc/resolv.conf', dst='/tmp/resolv.conf'),
    dict(src='docs/utils.py', dst='/tmp/utils.py', executable=True),
    # jinja2 template
    dict(src='example.j2', dst='/tmp/xx1', mod='600'),
    # symlink
    dict(linkto='/etc/hosts', dst='/etc/hosts2'),
], ctx=dict(name='example'))

nuka.tasks.file.rm

Example:

await file.rm('/tmp/doc')

nuka.tasks.file.scripts

nuka.tasks.file.update

Example:

await file.update(
    dst='/etc/default/useradd',
    replaces=[(r'^\# HOME=/home', 'HOME=/new_home')])