stage #19
@@ -18,7 +18,6 @@ jobs:
|
|||||||
working-directory: terraform
|
working-directory: terraform
|
||||||
run: |
|
run: |
|
||||||
cat > secrets.auto.tfvars << EOF
|
cat > secrets.auto.tfvars << EOF
|
||||||
pm_api_token_id = "${{ secrets.PM_API_TOKEN_ID }}"
|
|
||||||
pm_api_token_secret = "${{ secrets.PM_API_TOKEN_SECRET }}"
|
pm_api_token_secret = "${{ secrets.PM_API_TOKEN_SECRET }}"
|
||||||
SSH_KEY_PUBLIC = "${{ secrets.SSH_KEY_PUBLIC }}"
|
SSH_KEY_PUBLIC = "${{ secrets.SSH_KEY_PUBLIC }}"
|
||||||
TS_AUTHKEY = "${{ secrets.TS_AUTHKEY }}"
|
TS_AUTHKEY = "${{ secrets.TS_AUTHKEY }}"
|
||||||
|
|||||||
@@ -18,16 +18,16 @@ jobs:
|
|||||||
- name: Create secrets.tfvars
|
- name: Create secrets.tfvars
|
||||||
working-directory: terraform
|
working-directory: terraform
|
||||||
run: |
|
run: |
|
||||||
echo "PM_API_TOKEN_ID length: $(echo -n '${{ secrets.PM_API_TOKEN_ID }}' | wc -c)"
|
|
||||||
echo "PM_API_TOKEN_SECRET length: $(echo -n '${{ secrets.PM_API_TOKEN_SECRET }}' | wc -c)"
|
echo "PM_API_TOKEN_SECRET length: $(echo -n '${{ secrets.PM_API_TOKEN_SECRET }}' | wc -c)"
|
||||||
cat > secrets.auto.tfvars << EOF
|
cat > secrets.auto.tfvars << EOF
|
||||||
pm_api_token_id = "${{ secrets.PM_API_TOKEN_ID }}"
|
|
||||||
pm_api_token_secret = "${{ secrets.PM_API_TOKEN_SECRET }}"
|
pm_api_token_secret = "${{ secrets.PM_API_TOKEN_SECRET }}"
|
||||||
SSH_KEY_PUBLIC = "${{ secrets.SSH_KEY_PUBLIC }}"
|
SSH_KEY_PUBLIC = "${{ secrets.SSH_KEY_PUBLIC }}"
|
||||||
TS_AUTHKEY = "${{ secrets.TS_AUTHKEY }}"
|
TS_AUTHKEY = "${{ secrets.TS_AUTHKEY }}"
|
||||||
EOF
|
EOF
|
||||||
echo "Created secrets.auto.tfvars:"
|
echo "Created secrets.auto.tfvars:"
|
||||||
cat secrets.auto.tfvars | sed 's/=.*/=***/'
|
cat secrets.auto.tfvars | sed 's/=.*/=***/'
|
||||||
|
echo "Using token ID from terraform.tfvars:"
|
||||||
|
grep '^pm_api_token_id' terraform.tfvars
|
||||||
|
|
||||||
- name: Set up Terraform
|
- name: Set up Terraform
|
||||||
uses: hashicorp/setup-terraform@v2
|
uses: hashicorp/setup-terraform@v2
|
||||||
|
|||||||
@@ -7,3 +7,4 @@ sockets = 1
|
|||||||
bridge = "vmbr0"
|
bridge = "vmbr0"
|
||||||
storage = "Flash"
|
storage = "Flash"
|
||||||
pm_api_url = "https://100.105.0.115:8006/api2/json"
|
pm_api_url = "https://100.105.0.115:8006/api2/json"
|
||||||
|
pm_api_token_id = "terraform-prov@pve!mytoken"
|
||||||
|
|||||||
@@ -1,12 +1,22 @@
|
|||||||
variable "pm_api_token_id" {
|
variable "pm_api_token_id" {
|
||||||
type = string
|
type = string
|
||||||
description = "Proxmox API token ID (format: user@realm!tokenid)"
|
description = "Proxmox API token ID (format: user@realm!tokenid)"
|
||||||
|
|
||||||
|
validation {
|
||||||
|
condition = can(regex(".+!.+", trimspace(var.pm_api_token_id)))
|
||||||
|
error_message = "pm_api_token_id must be in format user@realm!tokenid."
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
variable "pm_api_token_secret" {
|
variable "pm_api_token_secret" {
|
||||||
type = string
|
type = string
|
||||||
sensitive = true
|
sensitive = true
|
||||||
description = "Proxmox API token secret"
|
description = "Proxmox API token secret"
|
||||||
|
|
||||||
|
validation {
|
||||||
|
condition = length(trimspace(var.pm_api_token_secret)) > 0
|
||||||
|
error_message = "pm_api_token_secret cannot be empty. Check your Gitea secret PM_API_TOKEN_SECRET."
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
variable "target_node" {
|
variable "target_node" {
|
||||||
|
|||||||
Reference in New Issue
Block a user