1 Configuration
Mathieu Broillet edited this page 2023-06-21 13:00:56 +00:00

Configuration

Before configuring your LXCs and VMs, you must decide how you'll run this program. As it requires SSH for some actions, you have two options:

  • Run it directly on the Proxmox VE host (recommended) (refered as local)
    • No configuration needed
    • You can use Git(ea)/Drone actions to run it automatically as soon as a change is pushed.
  • Run it on another machine and connect via SSH
    • You'll need to setup passwordless SSH connection between your machine and the Proxmox VE host.
    • You can also use Git Actions but it's a bit more tricky.

Run the program

usage: run.py [-h] [-v] [--host HOST] [--username USERNAME] [--port PORT] [--repo REPO] path

Deploy JSON file as LXCs and VMs to your proxmox server

positional arguments:
  path                 path where your repo is cloned or will be cloned

options:
  -h, --help           show this help message and exit
  -v, --verbose        increase output verbosity
  --host HOST          host to use for ssh
  --username USERNAME  username to use for ssh (default: root)
  --port PORT          port to use for ssh (default: 22)
  --repo REPO          git repo to clone

If you are running this program directly on the Proxmox Host, then you just have to specify to path to your repo. ./proxmoxdeplox /root/homelab-repo

If you are running this program from another host, be sure to have configured password-less ssh between your machine and the proxmox host then run it with ./proxmoxdeploy --host <ip-of-pve> --username root

You can use the --repo parameter to automatically clone the repo to the specified path if it doesn't exist. If the specified path contains a .git folder, it will automatically run a git pull to update it.