v1

package
v0.0.0-...-e579246 Latest Latest
Warning

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

Go to latest
Published: Feb 16, 2021 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FindProviderPackageInput

type FindProviderPackageInput struct {
	Provider `json:",inline" validate:"required"`
	Platform `json:",inline" validate:"required"`
	Version  string `json:"version" validate:"required"`
}

FindProviderPackageInput describes the input to a FindProviderPackage operation

type FindProviderPackageOutput

type FindProviderPackageOutput struct {
	Platform            `json:",inline"`
	DownloadURL         string     `json:"download_url"`
	Filename            string     `json:"filename"`
	SHASum              string     `json:"shasum"`
	SHASumsSignatureURL string     `json:"shasums_signature_url"`
	SHASumsURL          string     `json:"shasums_url"`
	SigningKeys         SigningKey `json:"signing_keys"`
	Protocols           []string   `json:"protocols"`
}

FindProviderPackageOutput describes the output from a successful FindProviderPackage operation

type GPGPublicKey

type GPGPublicKey struct {
	PK         string `json:"-" dynamodbav:"pk"`
	ASCIIArmor string `json:"ascii_armor" dynamodbav:"ascii_armor" validate:"required"`
	KeyID      string `json:"key_id" dynamodbav:"sk" validate:"required"`
}

GPGPublicKey describes a gpb public key

type ListAvailableVersionsInput

type ListAvailableVersionsInput struct {
	Provider `json:",inline" validate:"required"`
}

ListAvailableVersionsInput describes the input to a ListAvailableVersions operation

type ListAvailableVersionsOutput

type ListAvailableVersionsOutput struct {
	Versions []Version `json:"versions"`
}

ListAvailableVersionsOutput describes the output from a successful ListAvailableVersions operation

type Platform

type Platform struct {
	Arch string `json:"arch" dynamodbav:"arch" validate:"required"`
	OS   string `json:"os" dynamodbav:"os" validate:"required"`
}

Platform describes a provider distribution package

type Provider

type Provider struct {
	Namespace string `json:"namespace" dynamodbav:"namespace" validate:"required"`
	Type      string `json:"type" dynamodbav:"type" validate:"required"`
}

Provider describes a terraform provider

type PublishVersionInput

type PublishVersionInput struct {
	Provider `json:",inline" validate:"required"`
	Version  `json:",inline" validate:"required,dive"`
}

PublishVersionInput describes the input to a PublishVersion operation

type PublishVersionOutput

type PublishVersionOutput struct{}

PublishVersionOutput describes the output from a successful PublishVersion operation

type RegisterGPGPublicKeyInput

type RegisterGPGPublicKeyInput struct {
	GPGPublicKey `json:",inline" validate:"required"`
}

RegisterGPGPublicKeyInput describes the input to a RegisterGPGPublicKey operation

type RegisterGPGPublicKeyOutput

type RegisterGPGPublicKeyOutput struct{}

RegisterGPGPublicKeyOutput describes the output from a successful RegisterGPGPublicKey operation

type Service

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

Service exposes a v1 terraform provider registry service

func NewService

func NewService(conf ServiceConfig) (*Service, error)

NewService initializes a new registry provider

func (*Service) FindProviderPackage

func (s *Service) FindProviderPackage(ctx context.Context, input FindProviderPackageInput) (*FindProviderPackageOutput, error)

FindProviderPackage provides download url and additional metadata for a particular provider distribution package

func (*Service) ListAvailableVersions

func (s *Service) ListAvailableVersions(ctx context.Context, input ListAvailableVersionsInput) (*ListAvailableVersionsOutput, error)

ListAvailableVersions provides a list of available versions for a particular provider

func (*Service) PublishVersion

func (s *Service) PublishVersion(ctx context.Context, input PublishVersionInput) (*PublishVersionOutput, error)

PublishVersion registers a new provider version

func (*Service) RegisterGPGPublicKey

func (s *Service) RegisterGPGPublicKey(ctx context.Context, input RegisterGPGPublicKeyInput) (*RegisterGPGPublicKeyOutput, error)

RegisterGPGPublicKey registers a new provider version

type ServiceConfig

type ServiceConfig struct {
	session.Config `json:",inline" yaml:",inline" mapstructure:",squash"`
	Bucket         string `json:"bucket" validate:"required"`
	Prefix         string `json:"prefix"`
	Table          string `json:"table" validate:"required"`
}

ServiceConfig describes runtime configuration for a Service value

type SigningKey

type SigningKey struct {
	GPGPublicKeys []GPGPublicKey `json:"gpg_public_keys" dynamodbav:"gpg_public_keys"`
}

SigningKey contains information about the keys used to sign the version

type Version

type Version struct {
	PK             string     `json:"-" dynamodbav:"pk"`
	GPGPublicKeyID string     `json:"gpg_public_key_id,omitempty" dynamodbav:"gpg_public_key_id" validate:"required"`
	Platforms      []Platform `json:"platforms" dynamodbav:"platforms" validate:"required"`
	Protocols      []string   `json:"protocols" dynamodbav:"protocols" validate:"required"`
	Version        string     `json:"version" dynamodbav:"sk" validate:"required"`
}

Version describes a provider version

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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