Open
Description
Describe the bug
files.put()
does not expand ~
to the value of $HOME
To Reproduce
from pyinfra.operations import files
files.put(name='Copy file', src='README.md', dest='~/pyinfra-README.md')
pyinfra @local test.py
Observed behavior
A directory named ~
is created inside the current working directory.
Expected behavior
The file is copied to ~/pyinfra-README.md
.
Meta
System Information
System: Linux
Platform: Linux-6.1.0-26-amd64-x86_64-with-glibc2.36
Release: 6.1.0-26-amd64
Machine: x86_64
pyinfra: v3.1.1
black: v24.4.2
black: v24.4.2
click: v8.1.7
configparser: v7.1.0
coverage: v7.5.1
coverage: v7.5.1
distro: v1.9.0
flake8: v7.0.0
flake8: v7.0.0
flake8-black: v0.3.6
flake8-black: v0.3.6
flake8-isort: v6.1.1
flake8-isort: v6.1.1
flake8-spellcheck: v0.12.1
gevent: v24.10.3
importlib-metadata: v8.5.0
ipdb: v0.13.13
ipdbplugin: v1.5.0
ipython: v8.29.0
isort: v5.13.2
isort: v5.13.2
jinja2: v3.1.4
mypy: v1.13.0
mypy: v1.13.0
myst-parser: v2.0.0
myst-parser: v2.0.0
packaging: v24.1
paramiko: v3.5.0
pyinfra-guzzle-sphinx-theme: v0.16
pyinfra-guzzle-sphinx-theme: v0.16
pytest: v8.2.1
pytest: v8.2.1
pytest-cov: v5.0.0
pytest-cov: v5.0.0
python-dateutil: v2.9.0.post0
pywinrm: v0.5.0
redbaron: v0.9.2
setuptools: v66.1.1
sphinx: v6.2.1
sphinx: v6.2.1
twine: v5.1.1
typeguard: v4.4.0
types-PyYAML: v6.0.12.20240917
types-PyYAML: v6.0.12.20240917
types-cryptography: v3.3.23.2
types-cryptography: v3.3.23.2
types-paramiko: v3.5.0.20240928
types-paramiko: v3.5.0.20240928
types-python-dateutil: v2.9.0.20241003
types-python-dateutil: v2.9.0.20241003
types-setuptools: v75.2.0.20241025
types-setuptools: v75.2.0.20241025
typing-extensions: v4.12.2
wheel: v0.44.0
Executable: /data/Code/pyinfra/venv/bin/pyinfra
Python: 3.11.2 (CPython, GCC 12.2.0)