pyinfra/provision.py

34 lines
659 B
Python
Raw Permalink Normal View History

2025-02-07 13:58:37 +01:00
from pyinfra import host
2023-10-04 18:05:47 +02:00
from pyinfra.operations import apt
2025-02-08 14:19:45 +01:00
from tasks.docker import deploy_docker
from tasks.k3s import deploy_k3s
from tasks.nfs import deploy_nfs
2024-04-25 15:31:13 +02:00
from tasks.ssh import setup_ssh
2025-02-08 14:19:45 +01:00
from tasks.tailscale import setup_tailscale
2024-04-25 15:31:13 +02:00
2023-10-04 18:05:47 +02:00
apt.packages(
name="Update and upgrade server",
update=True,
2024-06-08 00:53:33 +02:00
upgrade=True,
2023-10-04 18:05:47 +02:00
)
apt.packages(
name="Install useful packages",
2025-02-07 13:58:37 +01:00
packages=["htop", "curl", "ufw", "qemu-guest-agent", "nfs-common"],
2023-10-04 18:05:47 +02:00
)
setup_ssh()
2025-02-07 13:58:37 +01:00
if host.data.get("docker"):
deploy_docker()
if host.data.get("tailscale"):
2025-02-08 14:19:45 +01:00
setup_tailscale()
2024-04-25 15:31:13 +02:00
2025-02-07 13:58:37 +01:00
if host.data.get("k3s"):
2025-02-08 14:19:45 +01:00
deploy_k3s()
if host.data.get("nfs"):
deploy_nfs()