mirror of
https://github.com/GoodOlClint/PSProxmoxVE.git
synced 2026-07-26 07:58:14 +00:00
9817d30a11
Provision two PVE nodes per version (a/b) for future cluster testing, plus Docker-based iSCSI target and NFS server for shared storage tests. Multi-node changes: - Each PVE version gets two nodes: 9a/9b and 8a/8b (4 VMs total) - Parameterized answer.toml FQDN for unique hostnames per node - Per-node auto-install ISOs with unique answer files - Node name discovered from FQDN and included in test config - API token creation handles pre-existing tokens (delete + recreate) - New test env vars: PVETEST_HOST_B, PVETEST_APITOKEN_B - Removed preflight cleanup from provision (use explicit cleanup instead) Docker storage services: - New docker-compose.storage.yml with iSCSI (tgt) and NFS containers - Host networking so PVE nodes can reach storage services - Docker socket mounted into dev-infra container for host Docker access - Docker CLI added to dev-infra Dockerfile stage - New test env vars: PVETEST_STORAGE_VM_IP, PVETEST_ISCSI_IQN, PVETEST_NFS_EXPORT Other fixes: - first-boot.sh installs open-iscsi on PVE nodes - preflight-cleanup.sh handles empty ISO filename gracefully - TMPDIR set to work dir to avoid /tmp overflow during ISO uploads Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
49 lines
1.2 KiB
YAML
49 lines
1.2 KiB
YAML
## PSProxmoxVE dev/test containers
|
|
##
|
|
## Default (works on ARM Macs + x86):
|
|
## docker compose -f tests/docker-compose.test.yml up -d
|
|
## docker exec -it psproxmoxve-dev pwsh
|
|
##
|
|
## Full CI infra (x86 only — adds Terraform + PVE provisioning tools):
|
|
## docker compose -f tests/docker-compose.test.yml --profile infra up -d
|
|
## docker exec -it psproxmoxve-dev-infra bash
|
|
##
|
|
## Stop:
|
|
## docker compose -f tests/docker-compose.test.yml down
|
|
|
|
services:
|
|
dev:
|
|
build:
|
|
context: ..
|
|
dockerfile: tests/Dockerfile.test
|
|
target: dev
|
|
container_name: psproxmoxve-dev
|
|
volumes:
|
|
- ..:/repo
|
|
working_dir: /repo
|
|
stdin_open: true
|
|
tty: true
|
|
restart: unless-stopped
|
|
env_file:
|
|
- path: .env.test
|
|
required: false
|
|
|
|
dev-infra:
|
|
build:
|
|
context: ..
|
|
dockerfile: tests/Dockerfile.test
|
|
target: dev-infra
|
|
container_name: psproxmoxve-dev-infra
|
|
profiles: [infra]
|
|
volumes:
|
|
- ..:/repo
|
|
- /opt/pve-isos:/opt/pve-isos
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
working_dir: /repo
|
|
stdin_open: true
|
|
tty: true
|
|
restart: unless-stopped
|
|
env_file:
|
|
- path: .env.test
|
|
required: false
|