51 lines
1.4 KiB
Plaintext
51 lines
1.4 KiB
Plaintext
/*
|
|
* Conformance Test: Replace Resource
|
|
*
|
|
* This file modifies a createOnly field to trigger resource replacement.
|
|
* Changes from resource.pkl:
|
|
* - region: changed from "us-east-1" to "us-west-2"
|
|
*
|
|
* The region field has createOnly=true, so formae should delete the
|
|
* existing resource and create a new one with the new region.
|
|
*/
|
|
amends "@formae/forma.pkl"
|
|
import "@formae/formae.pkl"
|
|
|
|
import "@proxmox/proxmox.pkl"
|
|
|
|
local stackName = "plugin-sdk-test-stack"
|
|
local testRunID = read("env:FORMAE_TEST_RUN_ID")
|
|
|
|
forma {
|
|
new formae.Stack {
|
|
label = stackName
|
|
description = "Plugin SDK conformance test stack"
|
|
}
|
|
|
|
new formae.Target {
|
|
label = "example-target"
|
|
namespace = "PROXMOX"
|
|
config = new Mapping {
|
|
["region"] = "us-west-2" // CHANGED to match resource
|
|
}
|
|
}
|
|
|
|
new example.ExampleResource {
|
|
label = "plugin-sdk-test-resource"
|
|
name = "formae-plugin-sdk-test-\(testRunID)"
|
|
description = "Test resource for plugin SDK conformance tests"
|
|
region = "us-west-2" // CHANGED - triggers replacement
|
|
|
|
endpoint = new example.Endpoint {
|
|
url = "https://api.example.com"
|
|
port = 8080
|
|
protocol = "https"
|
|
}
|
|
|
|
tags = new Listing {
|
|
new example.Tag { key = "Environment"; value = "test" }
|
|
new example.Tag { key = "ManagedBy"; value = "formae" }
|
|
}
|
|
}
|
|
}
|