client

package
v0.1.7 Latest Latest
Warning

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

Go to latest
Published: Aug 21, 2022 License: MPL-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TestAccountID = "test_account"
	TestZoneID    = "test_zone"
)
View Source
const MaxItemsPerPage = 200

Variables

This section is empty.

Functions

func AccountMultiplex

func AccountMultiplex(meta schema.ClientMeta) []schema.ClientMeta

func CFMockTestHelper

func CFMockTestHelper(t *testing.T, table *schema.Table, builder func(*testing.T, *gomock.Controller) Clients)

func Configure

func Configure(logger hclog.Logger, config interface{}) (schema.ClientMeta, diag.Diagnostics)

func DeleteAccountFilter

func DeleteAccountFilter(meta schema.ClientMeta, _ *schema.Resource) []interface{}

func DeleteAccountZoneFilter

func DeleteAccountZoneFilter(meta schema.ClientMeta, _ *schema.Resource) []interface{}

func DeleteFilter

func DeleteFilter(_ schema.ClientMeta, _ *schema.Resource) []interface{}

func ErrorClassifier

func ErrorClassifier(_ schema.ClientMeta, resourceName string, err error) diag.Diagnostics

func RedactError

func RedactError(e diag.Diagnostic) diag.Diagnostic

RedactError redacts a given diagnostic and returns a RedactedDiagnostic containing both original and redacted versions

func ResolveAccountId

func ResolveAccountId(_ context.Context, meta schema.ClientMeta, r *schema.Resource, col schema.Column) error

func ResolveZoneId

func ResolveZoneId(_ context.Context, meta schema.ClientMeta, r *schema.Resource, col schema.Column) error

func ZoneMultiplex

func ZoneMultiplex(meta schema.ClientMeta) []schema.ClientMeta

Types

type AccountZones

type AccountZones map[string]struct {
	AccountId string
	Zones     []string
}

type Api

type Api interface {
	Accounts(ctx context.Context, params cloudflare.AccountsListParams) ([]cloudflare.Account, cloudflare.ResultInfo, error)
	AccountMembers(ctx context.Context, accountID string, pageOpts cloudflare.PaginationOptions) ([]cloudflare.AccountMember, cloudflare.ResultInfo, error)

	ListZonesContext(ctx context.Context, opts ...cloudflare.ReqOption) (r cloudflare.ZonesResponse, err error)

	DNSRecords(ctx context.Context, zoneID string, rr cloudflare.DNSRecord) ([]cloudflare.DNSRecord, error)

	ListWAFPackages(ctx context.Context, zoneID string) ([]cloudflare.WAFPackage, error)
	ListWAFGroups(ctx context.Context, zoneID, packageID string) ([]cloudflare.WAFGroup, error)
	ListWAFRules(ctx context.Context, zoneID, packageID string) ([]cloudflare.WAFRule, error)

	ListWorkerScripts(ctx context.Context) (cloudflare.WorkerListResponse, error)
	ListWorkerRoutes(ctx context.Context, zoneID string) (cloudflare.WorkerRoutesResponse, error)
	ListWorkerCronTriggers(ctx context.Context, accountID, scriptName string) ([]cloudflare.WorkerCronTrigger, error)
	ListWorkersSecrets(ctx context.Context, script string) (cloudflare.WorkersListSecretsResponse, error)

	ListCertificatePacks(ctx context.Context, zoneID string) ([]cloudflare.CertificatePack, error)

	ZoneLevelAccessGroups(ctx context.Context, zoneID string, pageOpts cloudflare.PaginationOptions) ([]cloudflare.AccessGroup, cloudflare.ResultInfo, error)

	ListWAFOverrides(ctx context.Context, zoneID string) ([]cloudflare.WAFOverride, error)
	ListImages(ctx context.Context, accountID string, pageOpts cloudflare.PaginationOptions) ([]cloudflare.Image, error)
}

type Client

type Client struct {
	ClientApi Api
	AccountId string
	ZoneId    string
	// contains filtered or unexported fields
}

func New

func New(logger hclog.Logger, clients Clients, clientApi Api, accountsZones AccountZones) Client

func (*Client) Logger

func (c *Client) Logger() hclog.Logger

type Clients

type Clients map[string]Api

type Config

type Config struct {
	Token    string   `yaml:"api_token,omitempty"`
	ApiKey   string   `yaml:"api_key,omitempty"`
	ApiEmail string   `yaml:"api_email,omitempty"`
	Accounts []string `yaml:"accounts,omitempty"`
	Zones    []string `yaml:"zones,omitempty"`
}

func (Config) Example

func (Config) Example() string

Directories

Path Synopsis
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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