backend/remote-state/gcloud: Make gcsBackend private.
This class is only used via the "backend".Backend interface, so there is no need to export this type beyond the gcloud package.
This commit is contained in:
parent
9ec39573ee
commit
5d4e25ada4
|
@ -1,3 +1,4 @@
|
|||
// Package gcloud implements remote storage of state on Google Cloud Storage (GCS).
|
||||
package gcloud
|
||||
|
||||
import (
|
||||
|
@ -15,7 +16,10 @@ import (
|
|||
"google.golang.org/api/option"
|
||||
)
|
||||
|
||||
type Backend struct {
|
||||
// gcsBackend implements "backend".Backend for GCS.
|
||||
// Input(), Validate() and Configure() are implemented by embedding *schema.Backend.
|
||||
// State(), DeleteState() and States() are implemented explicitly.
|
||||
type gcsBackend struct {
|
||||
*schema.Backend
|
||||
|
||||
storageClient *storage.Client
|
||||
|
@ -26,7 +30,7 @@ type Backend struct {
|
|||
}
|
||||
|
||||
func New() backend.Backend {
|
||||
be := &Backend{}
|
||||
be := &gcsBackend{}
|
||||
be.Backend = &schema.Backend{
|
||||
ConfigureFunc: be.configure,
|
||||
Schema: map[string]*schema.Schema{
|
||||
|
@ -54,7 +58,7 @@ func New() backend.Backend {
|
|||
return be
|
||||
}
|
||||
|
||||
func (b *Backend) configure(ctx context.Context) error {
|
||||
func (b *gcsBackend) configure(ctx context.Context) error {
|
||||
if b.storageClient != nil {
|
||||
return nil
|
||||
}
|
||||
|
|
|
@ -21,7 +21,7 @@ const (
|
|||
|
||||
// States returns a list of names for the states found on GCS. The default
|
||||
// state is always returned as the first element in the slice.
|
||||
func (b *Backend) States() ([]string, error) {
|
||||
func (b *gcsBackend) States() ([]string, error) {
|
||||
states := []string{backend.DefaultStateName}
|
||||
|
||||
bucket := b.storageClient.Bucket(b.bucketName)
|
||||
|
@ -54,7 +54,7 @@ func (b *Backend) States() ([]string, error) {
|
|||
}
|
||||
|
||||
// DeleteState deletes the named state. The "default" state cannot be deleted.
|
||||
func (b *Backend) DeleteState(name string) error {
|
||||
func (b *gcsBackend) DeleteState(name string) error {
|
||||
if name == backend.DefaultStateName {
|
||||
return fmt.Errorf("cowardly refusing to delete the %q state", name)
|
||||
}
|
||||
|
@ -68,7 +68,7 @@ func (b *Backend) DeleteState(name string) error {
|
|||
}
|
||||
|
||||
// client returns a remoteClient for the named state.
|
||||
func (b *Backend) client(name string) (*remoteClient, error) {
|
||||
func (b *gcsBackend) client(name string) (*remoteClient, error) {
|
||||
if name == "" {
|
||||
return nil, fmt.Errorf("%q is not a valid state name", name)
|
||||
}
|
||||
|
@ -84,7 +84,7 @@ func (b *Backend) client(name string) (*remoteClient, error) {
|
|||
|
||||
// State reads and returns the named state from GCS. If the named state does
|
||||
// not yet exist, a new state file is created.
|
||||
func (b *Backend) State(name string) (state.State, error) {
|
||||
func (b *gcsBackend) State(name string) (state.State, error) {
|
||||
c, err := b.client(name)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
|
Loading…
Reference in New Issue