You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
terraformDummyRepo2/vendor/github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource/aliases.go

143 lines
5.4 KiB
Go

package resource
import (
"context"
"time"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/id"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/retry"
)
// Deprecated: Use helper/id package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
const UniqueIdPrefix = id.UniqueIdPrefix
// Helper for a resource to generate a unique identifier w/ default prefix
//
// Deprecated: Use helper/id package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
func UniqueId() string {
return id.UniqueId()
}
// Deprecated: Use helper/id package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
const UniqueIDSuffixLength = id.UniqueIDSuffixLength
// Helper for a resource to generate a unique identifier w/ given prefix
//
// After the prefix, the ID consists of an incrementing 26 digit value (to match
// previous timestamp output). After the prefix, the ID consists of a timestamp
// and an incrementing 8 hex digit value The timestamp means that multiple IDs
// created with the same prefix will sort in the order of their creation, even
// across multiple terraform executions, as long as the clock is not turned back
// between calls, and as long as any given terraform execution generates fewer
// than 4 billion IDs.
//
// Deprecated: Use helper/id package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
func PrefixedUniqueId(prefix string) string {
return id.PrefixedUniqueId(prefix)
}
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
type NotFoundError = retry.NotFoundError
// UnexpectedStateError is returned when Refresh returns a state that's neither in Target nor Pending
//
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
type UnexpectedStateError = retry.UnexpectedStateError
// TimeoutError is returned when WaitForState times out
//
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
type TimeoutError = retry.TimeoutError
// StateRefreshFunc is a function type used for StateChangeConf that is
// responsible for refreshing the item being watched for a state change.
//
// It returns three results. `result` is any object that will be returned
// as the final object after waiting for state change. This allows you to
// return the final updated object, for example an EC2 instance after refreshing
// it. A nil result represents not found.
//
// `state` is the latest state of that object. And `err` is any error that
// may have happened while refreshing the state.
//
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
type StateRefreshFunc = retry.StateRefreshFunc
// StateChangeConf is the configuration struct used for `WaitForState`.
//
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
type StateChangeConf = retry.StateChangeConf
// RetryFunc is the function retried until it succeeds.
//
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
type RetryFunc = retry.RetryFunc
// RetryContext is a basic wrapper around StateChangeConf that will just retry
// a function until it no longer returns an error.
//
// Cancellation from the passed in context will propagate through to the
// underlying StateChangeConf
//
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
func RetryContext(ctx context.Context, timeout time.Duration, f RetryFunc) error {
return retry.RetryContext(ctx, timeout, f)
}
// Retry is a basic wrapper around StateChangeConf that will just retry
// a function until it no longer returns an error.
//
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
func Retry(timeout time.Duration, f RetryFunc) error {
return retry.Retry(timeout, f)
}
// RetryError is the required return type of RetryFunc. It forces client code
// to choose whether or not a given error is retryable.
//
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
type RetryError = retry.RetryError
// RetryableError is a helper to create a RetryError that's retryable from a
// given error. To prevent logic errors, will return an error when passed a
// nil error.
//
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
func RetryableError(err error) *RetryError {
r := retry.RetryableError(err)
return &RetryError{
Err: r.Err,
Retryable: r.Retryable,
}
}
// NonRetryableError is a helper to create a RetryError that's _not_ retryable
// from a given error. To prevent logic errors, will return an error when
// passed a nil error.
//
// Deprecated: Use helper/retry package instead. This is required for migrating acceptance
// testing to terraform-plugin-testing.
func NonRetryableError(err error) *RetryError {
r := retry.NonRetryableError(err)
return &RetryError{
Err: r.Err,
Retryable: r.Retryable,
}
}