Un fournisseur de terraform pour gérer les ressources sur pignon. Pour la documentation complète du fournisseur, reportez-vous à la page du fournisseur du registre
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
}Consultez le répertoire des exemples pour divers exemples qui peuvent être exécutés localement.
Pendant le développement local, assurez-vous de définir un provider_override dans votre fichier de configuration Terraform ( ~/.terraformrc ) pour pointer vers le binaire local.
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 ./... Ce projet repose sur ./tools/tools.go pour installer tfplugindocs .
export GOBIN=$PWD/bin
export PATH=$GOBIN:$PATH
go install github.com/hashicorp/terraform-plugin-docs/cmd/tfplugindocs
which tfplugindocs Exécutez tfplugindocs pour générer des documents et prévisualisez les fichiers individuels à https://registry.terraform.io/tools/doc-preview
Il y a quelques pas de temps qui ont déjà été effectués et ne seront pas couverts dans cette lecture. Voir la note de bas de page suivante pour plus d'informations. 1
Pour publier une nouvelle version du fournisseur dans le registre, une nouvelle version GitHub doit être créée. Utilisez les étapes suivantes pour continuer.
main et avez un arbre en activité propre.git tag v0.1.2git push origin v0.1.2goreleaser : GITHUB_TOKEN=$(gh auth token) goreleaser release --cleanNote
La configuration de GoreleSer nécessite que GPG_FINGERPRINT soit définie. Peut-être essayer ce qui suit (doit être testé)
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 --cleanDocs on Publishing: https://developer.hashicorp.com/terraform/registry/providers/publishing#publishing-to-the-registry ↩