mirror of
https://github.com/opentofu/opentofu.git
synced 2024-12-28 01:41:48 -06:00
346e341ff2
Updates to throw a specific error if using the defined public registry vs. another registry.
65 lines
3.1 KiB
Go
65 lines
3.1 KiB
Go
package discovery
|
|
|
|
// Error is a type used to describe situations that the caller must handle
|
|
// since they indicate some form of user error.
|
|
//
|
|
// The functions and methods that return these specialized errors indicate so
|
|
// in their documentation. The Error type should not itself be used directly,
|
|
// but rather errors should be compared using the == operator with the
|
|
// error constants in this package.
|
|
//
|
|
// Values of this type are _not_ used when the error being reported is an
|
|
// operational error (server unavailable, etc) or indicative of a bug in
|
|
// this package or its caller.
|
|
type Error string
|
|
|
|
// ErrorNoSuitableVersion indicates that a suitable version (meeting given
|
|
// constraints) is not available.
|
|
const ErrorNoSuitableVersion = Error("no suitable version is available")
|
|
|
|
// ErrorNoVersionCompatible indicates that all of the available versions
|
|
// that otherwise met constraints are not compatible with the current
|
|
// version of Terraform.
|
|
const ErrorNoVersionCompatible = Error("no available version is compatible with this version of Terraform")
|
|
|
|
// ErrorVersionIncompatible indicates that all of the versions within the
|
|
// constraints are not compatible with the current version of Terrafrom, though
|
|
// there does exist a version outside of the constaints that is compatible.
|
|
const ErrorVersionIncompatible = Error("incompatible provider version")
|
|
|
|
// ErrorNoSuchProvider indicates that no provider exists with a name given
|
|
const ErrorNoSuchProvider = Error("no provider exists with the given name")
|
|
|
|
// ErrorNoVersionCompatibleWithPlatform indicates that all of the available
|
|
// versions that otherwise met constraints are not compatible with the
|
|
// requested platform
|
|
const ErrorNoVersionCompatibleWithPlatform = Error("no available version is compatible for the requested platform")
|
|
|
|
// ErrorMissingChecksumVerification indicates that either the provider
|
|
// distribution is missing the SHA256SUMS file or the checksum file does
|
|
// not contain a checksum for the binary plugin
|
|
const ErrorMissingChecksumVerification = Error("unable to verify checksum")
|
|
|
|
// ErrorChecksumVerification indicates that the current checksum of the
|
|
// provider plugin has changed since the initial release and is not trusted
|
|
// to download
|
|
const ErrorChecksumVerification = Error("unexpected plugin checksum")
|
|
|
|
// ErrorSignatureVerification indicates that the digital signature for a
|
|
// provider distribution could not be verified for one of the following
|
|
// reasons: missing signature file, missing public key, or the signature
|
|
// was not signed by any known key for the publisher
|
|
const ErrorSignatureVerification = Error("unable to verify signature")
|
|
|
|
// ErrorServiceUnreachable indicates that the network was unable to connect
|
|
// to the registry service
|
|
const ErrorServiceUnreachable = Error("registry service is unreachable")
|
|
|
|
// ErrorPublicRegistryUnreachable indicates that the network was unable to connect
|
|
// to the public registry in particular, so we can show a link to the statuspage
|
|
const ErrorPublicRegistryUnreachable = Error("registry service is unreachable, check https://status.hashicorp.com/ for status updates")
|
|
|
|
func (err Error) Error() string {
|
|
return string(err)
|
|
}
|