provider

package
v0.10.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 14, 2024 License: MPL-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package provider provides terraform provider registry functionality to tofutf.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FindProviderPackageOptions

type FindProviderPackageOptions struct {
	Namespace string
	Type      string
	Version   string
	OS        string
	Arch      string
}

type GetProviderVersionsOptions

type GetProviderVersionsOptions struct {
	Namespace string
	Type      string
}

type Options

type Options struct {
	Logger *slog.Logger

	*sql.Pool
	*internal.HostnameService
	*surl.Signer
	html.Renderer

	ProxyURL           string
	ProxyIsArtifactory bool
}

type ProviderPlatform

type ProviderPlatform struct {
	Os   string `json:"os"`
	Arch string `json:"arch"`
}

type ProviderVersionManifest

type ProviderVersionManifest struct {
	Protocols           []string `json:"protocols"`
	Os                  string   `json:"os"`
	Arch                string   `json:"arch"`
	Filename            string   `json:"filename"`
	DownloadURL         string   `json:"download_url"`
	ShasumsURL          string   `json:"shasums_url"`
	ShasumsSignatureURL string   `json:"shasums_signature_url"`
	Shasum              string   `json:"shasum"`
	SigningKeys         struct {
		GpgPublicKeys []struct {
			KeyID          string `json:"key_id"`
			ASCIIArmor     string `json:"ascii_armor"`
			TrustSignature string `json:"trust_signature"`
			Source         string `json:"source"`
			SourceURL      string `json:"source_url"`
		} `json:"gpg_public_keys"`
	} `json:"signing_keys"`
}

type ProviderVersions

type ProviderVersions struct {
	Versions []ProviderVersionsVersions `json:"versions"`
}

type ProviderVersionsVersions

type ProviderVersionsVersions struct {
	Version   string             `json:"version"`
	Protocols []string           `json:"protocols"`
	Platforms []ProviderPlatform `json:"platforms"`
}

type Service

type Service struct {
	// contains filtered or unexported fields
}

func NewService

func NewService(opts Options) *Service

func (*Service) AddHandlers

func (s *Service) AddHandlers(r *mux.Router)

func (Service) FindProviderPackage

func (s Service) FindProviderPackage(ctx context.Context, options FindProviderPackageOptions) (*ProviderVersionManifest, error)

func (*Service) GetProviderVersions

func (s *Service) GetProviderVersions(ctx context.Context, options GetProviderVersionsOptions) (*ProviderVersions, error)

GetProviderVersions retrieves the list of versions that exist for a given provider.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL