35 lines
851 B
Terraform
35 lines
851 B
Terraform
terraform {
|
|
required_providers {
|
|
artifactapi = {
|
|
source = "artifactapi.example.com/terraform-unkin/artifactapi"
|
|
version = "0.0.1"
|
|
}
|
|
}
|
|
}
|
|
|
|
provider "artifactapi" {
|
|
endpoint = "https://artifactapi.example.com"
|
|
}
|
|
|
|
# A generic remote proxies arbitrary HTTP endpoints.
|
|
# Patterns act as an allowlist; everything matching is immutable by default.
|
|
resource "artifactapi_remote_generic" "github" {
|
|
name = "github"
|
|
base_url = "https://github.com"
|
|
description = "GitHub releases"
|
|
|
|
immutable_ttl = 0
|
|
mutable_ttl = 7200
|
|
|
|
patterns = [
|
|
"ducaale/xh/.*/xh-.*-x86_64-unknown-linux-musl.tar.gz$",
|
|
"mikefarah/yq/.*/yq_linux_amd64$",
|
|
"neovim/neovim-releases/.*/nvim-linux-x86_64.tar.gz$",
|
|
]
|
|
|
|
# Override: branch archives are mutable
|
|
mutable_patterns = [
|
|
".*/archive/refs/heads/.*\\.tar\\.gz$",
|
|
]
|
|
}
|