[Feature] Add Infrastructure-as-Code playlist automated install for ProxmoxVE scripts #1009

Closed
opened 2026-02-04 22:32:11 +03:00 by OVERLORD · 3 comments
Owner

Originally created by @gshiva on GitHub (May 26, 2025).

🌟 Briefly describe the feature

Provide a declarative “playlist” manifest (e.g. YAML) so users can run proxmoxve iac apply playlist.yaml to install and configure all desired applications in one go.

📝 Detailed description

Together, we can extend the ProxmoxVE community-scripts framework to support Infrastructure as Code for your entire cluster. Users would write a simple playlist file listing script names and any required parameters:

# example playlist.yaml
- script: homeassistant
  version: latest
  options:
    network: vmbr0

- script: plex
  version: 1.25.0
  options:
    storage: /mnt/media

# …etc…

A new proxmoxve iac subcommand would:

Parse the playlist and validate script names

Execute each install script in order, passing along parameters

Log successes/failures and report a final status

Integrate with CI/CD pipelines so pushes to Git can automatically reprovision environments

We’d start by enabling the top 10 most-used scripts, then expand coverage until all 300+ community scripts can be driven from a single IaC manifest. This would live in tools/iac.sh (or a Python equivalent) and hook into the existing entry point.

💡 Why is this useful?

  • Because manual reinstallation after a node or cluster failure is time-consuming and error-prone, IaC lets you recover in minutes.
  • Notice how often teams scramble to rebuild environments from scratch—this feature standardizes and documents your installs.
  • Yet it keeps the same familiar scripts, so there’s no learning curve.
  • Curious users can fork and customize playlists for different use-cases.
  • Together, we’ll turn ProxmoxVE into a reproducible, self-documenting platform—eliminating manual steps and slashing downtime.
Originally created by @gshiva on GitHub (May 26, 2025). ### 🌟 Briefly describe the feature Provide a declarative “playlist” manifest (e.g. YAML) so users can run proxmoxve iac apply playlist.yaml to install and configure all desired applications in one go. ### 📝 Detailed description Together, we can extend the ProxmoxVE community-scripts framework to support Infrastructure as Code for your entire cluster. Users would write a simple playlist file listing script names and any required parameters: ```yaml # example playlist.yaml - script: homeassistant version: latest options: network: vmbr0 - script: plex version: 1.25.0 options: storage: /mnt/media # …etc… ``` A new proxmoxve iac subcommand would: Parse the playlist and validate script names Execute each install script in order, passing along parameters Log successes/failures and report a final status Integrate with CI/CD pipelines so pushes to Git can automatically reprovision environments We’d start by enabling the top 10 most-used scripts, then expand coverage until all 300+ community scripts can be driven from a single IaC manifest. This would live in tools/iac.sh (or a Python equivalent) and hook into the existing entry point. ### 💡 Why is this useful? - Because manual reinstallation after a node or cluster failure is time-consuming and error-prone, IaC lets you recover in minutes. - - Notice how often teams scramble to rebuild environments from scratch—this feature standardizes and documents your installs. - - Yet it keeps the same familiar scripts, so there’s no learning curve. - - Curious users can fork and customize playlists for different use-cases. - - Together, we’ll turn ProxmoxVE into a reproducible, self-documenting platform—eliminating manual steps and slashing downtime.
OVERLORD added the enhancement label 2026-02-04 22:32:11 +03:00
Author
Owner

@MickLesk commented on GitHub (May 26, 2025):

The whole thing is designed as Git and can be executed locally? Then no chance. The scripts have too many dependencies on each other that local execution is not possible. This is due to the separation of host script and install script.

@MickLesk commented on GitHub (May 26, 2025): The whole thing is designed as Git and can be executed locally? Then no chance. The scripts have too many dependencies on each other that local execution is not possible. This is due to the separation of host script and install script.
Author
Owner

@michelroegl-brunner commented on GitHub (May 26, 2025):

Also, as this project is based on homelabs and are not supposed to be used in business critical production environments, we decided againdt full automation. You can mostly do what you want wirh the config file feature anyway.

@michelroegl-brunner commented on GitHub (May 26, 2025): Also, as this project is based on homelabs and are not supposed to be used in business critical production environments, we decided againdt full automation. You can mostly do what you want wirh the config file feature anyway.
Author
Owner

@gshiva commented on GitHub (May 26, 2025):

I am using it for my homelab only :) Just that I am too lazy to even click on stuff. Didn't know about the config file feature. I think that should satisfy my need. Will take a look. Thanks @michelroegl-brunner

@gshiva commented on GitHub (May 26, 2025): I am using it for my homelab only :) Just that I am too lazy to even click on stuff. Didn't know about the config file feature. I think that should satisfy my need. Will take a look. Thanks @michelroegl-brunner
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ProxmoxVE#1009