Поставщик терраформ для управления ресурсами в Pinecone. Для полной документации по провайдеру обратитесь к странице поставщика реестра
terraform {
required_providers {
pinecone = {
source = " thiskevinwang/pinecone "
version = " 0.1.2 "
}
}
}
provider "pinecone" {
apikey = var . pinecone_api_key # optional; PINECONE_API_KEY
environment = var . pinecone_environment # optional; PINECONE_ENVIRONMENT
}
data "pinecone_collection" "existing-collection" {
name = " my-existing-collection "
}
resource "pinecone_index" "my-first-index" {
name = " index-to-be-managed "
metric = " cosine "
pods = 1
source_collection = data . pinecone_collection . existing-collection . name
dimension = data . pinecone_collection . existing-collection . dimension
}Проверьте каталог примеров для различных примеров, которые можно запускать локально.
Во время локальной разработки обязательно установите provider_override в файле конфигурации Terraform ( ~/.terraformrc ), чтобы указать на локальный бинар.
provider_installation {
dev_overrides {
# Adjust this path to point to the directory where the local provider
# binary is present. It is likely your $GOPATH/bin directory.
" thekevinwang.com/terraform-providers/pinecone " = " /Users/kevin/go/bin "
}
# For all other providers, install them directly from their origin provider
# registries as normal. If you omit this, Terraform will _only_ use
# the dev_overrides block, and so no other providers will be available.
direct {}
} terraform {
required_providers {
pinecone = {
source = " thekevinwang.com/terraform-providers/pinecone "
}
}
} cp .env.example .env
go test -v ./... Этот проект полагается на ./tools/tools.go для установки tfplugindocs .
export GOBIN=$PWD/bin
export PATH=$GOBIN:$PATH
go install github.com/hashicorp/terraform-plugin-docs/cmd/tfplugindocs
which tfplugindocs Запустите tfplugindocs для генерации документов и предварительно просмотреть отдельные файлы по адресу https://registry.terraform.io/tools/doc-preview
Есть несколько временных шагов, которые уже были сделаны и не будут рассмотрены в этом чтении. Смотрите следующую сноску для получения дополнительной информации. 1
Чтобы выпустить новую версию поставщика в реестр, необходимо создать новый релиз Github. Используйте следующие шаги, чтобы продолжить.
main , и у вас есть чистое рабочее дерево.git tag v0.1.2git push origin v0.1.2goreleaser : GITHUB_TOKEN=$(gh auth token) goreleaser release --cleanПримечание
Конфигурация GoreAser требует установки GPG_FINGERPRINT . Может быть, попробуйте следующее (нужно проверить)
export GPG_FINGERPRINT= $( gpg --list-keys --with-colons | awk -F: ' $1 == "fpr" || $1 == "fp2" {print $10} ' | head -n 1 )
export GITHUB_TOKEN= $( gh auth token )
goreleaser release --cleanДокументы на публикации: https://developer.hashicorp.com/terraform/registry/providers/publishing#publishing-the-registry ↩ ↩