Add local_generic rootfs-images repository
ci/woodpecker/pr/plan Pipeline failed
ci/woodpecker/pr/pre-commit Pipeline failed

Declares a local generic (raw-file) repo for bootapi's node rootfs tarballs and
wires the local_generic kind through the module. Depends on
terraform-provider-artifactapi #12 releasing v0.1.4 (adds artifactapi_local_generic);
the provider version pin is bumped to 0.1.4, so plan/validate stay red until that
release is available.

- config/local_generic/rootfs-images.yaml (new repo).
- local_generic wiring: config.hcl, module variables.tf + main.tf, env
  terragrunt.hcl inputs; provider pin 0.1.3 -> 0.1.4.

Claude-Session: https://claude.ai/code/session_015ur3i7D2azsMAWTSVABApv
This commit is contained in:
2026-07-29 21:51:10 +10:00
parent 3a0b328a6f
commit 36568ca53e
6 changed files with 24 additions and 1 deletions
+5
View File
@@ -62,6 +62,11 @@ locals {
trimsuffix(basename(file_path), ".yaml") => content trimsuffix(basename(file_path), ".yaml") => content
if startswith(file_path, "local_docker/") if startswith(file_path, "local_docker/")
} }
local_generic = {
for file_path, content in local.all_configs :
trimsuffix(basename(file_path), ".yaml") => content
if startswith(file_path, "local_generic/")
}
virtual = { virtual = {
for file_path, content in local.all_configs : for file_path, content in local.all_configs :
trimsuffix(basename(file_path), ".yaml") => content trimsuffix(basename(file_path), ".yaml") => content
+2
View File
@@ -0,0 +1,2 @@
---
description: "Prebuilt node rootfs tarballs for bootapi image-based provisioning (almalinux9-node-*.tar.zst)"
@@ -28,5 +28,6 @@ inputs = {
local_pypi = local.config.local_pypi local_pypi = local.config.local_pypi
local_rpm = local.config.local_rpm local_rpm = local.config.local_rpm
local_docker = local.config.local_docker local_docker = local.config.local_docker
local_generic = local.config.local_generic
virtual = local.config.virtual virtual = local.config.virtual
} }
+7
View File
@@ -117,6 +117,13 @@ resource "artifactapi_local_docker" "this" {
description = each.value.description description = each.value.description
} }
resource "artifactapi_local_generic" "this" {
for_each = var.local_generic
name = each.key
description = each.value.description
}
resource "artifactapi_virtual" "this" { resource "artifactapi_virtual" "this" {
for_each = var.virtual for_each = var.virtual
+8
View File
@@ -112,6 +112,14 @@ variable "local_rpm" {
default = {} default = {}
} }
variable "local_generic" {
description = "Map of local generic (raw-file) repositories"
type = map(object({
description = optional(string, "")
}))
default = {}
}
variable "local_terraform" { variable "local_terraform" {
description = "Map of local Terraform repositories" description = "Map of local Terraform repositories"
type = map(object({ type = map(object({
+1 -1
View File
@@ -3,7 +3,7 @@ terraform {
required_providers { required_providers {
artifactapi = { artifactapi = {
source = "artifactapi.k8s.syd1.au.unkin.net/terraform-unkin/artifactapi" source = "artifactapi.k8s.syd1.au.unkin.net/terraform-unkin/artifactapi"
version = "0.1.3" version = "0.1.4"
} }
} }
} }