cloudapi

package
v0.0.0-...-73246df Latest Latest
Warning

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

Go to latest
Published: May 23, 2023 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RedactedURL

func RedactedURL(s string) (string, error)

RedactedURL returns a URL string with the userinfo redacted.

Types

type Client

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

Client is a client for the Atlas Cloud API.

func New

func New(endpoint, token string) *Client

New creates a new Client for the Atlas Cloud API.

func (*Client) Dir

func (c *Client) Dir(ctx context.Context, input DirInput) (migrate.Dir, error)

Dir retrieves a directory from the Atlas Cloud API.

func (*Client) ReportMigration

func (c *Client) ReportMigration(ctx context.Context, input ReportMigrationInput) error

ReportMigration reports a migration deployment to the Atlas Cloud API.

func (*Client) ReportMigrationSet

func (c *Client) ReportMigrationSet(ctx context.Context, input ReportMigrationSetInput) error

ReportMigrationSet reports a set of migration deployments to the Atlas Cloud API.

type DeployedFileInput

type DeployedFileInput struct {
	Name      string          `json:"name"`
	Content   string          `json:"content"`
	StartTime time.Time       `json:"startTime"`
	EndTime   time.Time       `json:"endTime"`
	Skipped   int             `json:"skipped"`
	Applied   int             `json:"applied"`
	Error     *StmtErrorInput `json:"error,omitempty"`
}

DeployedFileInput represents the input type for a deployed file.

type DeployedTargetInput

type DeployedTargetInput struct {
	ID     string `json:"id"`
	Schema string `json:"schema"`
	URL    string `json:"url"` // URL string without userinfo.
}

DeployedTargetInput represents the input type for a deployed target.

type DirInput

type DirInput struct {
	Name string `json:"name"`
	Tag  string `json:"tag,omitempty"`
}

DirInput is the input type for retrieving a single directory.

type ReportMigrationInput

type ReportMigrationInput struct {
	ProjectName    string              `json:"projectName"`
	EnvName        string              `json:"envName"`
	DirName        string              `json:"dirName"`
	AtlasVersion   string              `json:"atlasVersion"`
	Target         DeployedTargetInput `json:"target"`
	StartTime      time.Time           `json:"startTime"`
	EndTime        time.Time           `json:"endTime"`
	FromVersion    string              `json:"fromVersion"`
	ToVersion      string              `json:"toVersion"`
	CurrentVersion string              `json:"currentVersion"`
	Error          *string             `json:"error,omitempty"`
	Files          []DeployedFileInput `json:"files"`
	Log            string              `json:"log"`
}

ReportMigrationInput represents an input type for reporting a migration deployments.

type ReportMigrationSetInput

type ReportMigrationSetInput struct {
	ID        string                 `json:"id"`
	Planned   int                    `json:"planned"`
	StartTime time.Time              `json:"startTime"`
	EndTime   time.Time              `json:"endTime"`
	Error     *string                `json:"error,omitempty"`
	Log       []ReportStep           `json:"log,omitempty"`
	Completed []ReportMigrationInput `json:"completed,omitempty"`
}

ReportMigrationSetInput represents the input type for reporting a set of migration deployments.

type ReportStep

type ReportStep struct {
	Text      string          `json:"text"`
	StartTime time.Time       `json:"startTime"`
	EndTime   time.Time       `json:"endTime"`
	Error     bool            `json:"error,omitempty"`
	Log       []ReportStepLog `json:"log,omitempty"`
}

ReportStep is top-level step in a report.

type ReportStepLog

type ReportStepLog struct {
	Text     string          `json:"text,omitempty"`
	Children []ReportStepLog `json:"children,omitempty"`
}

ReportStepLog is a log entry in a step.

type StmtErrorInput

type StmtErrorInput struct {
	Stmt string `json:"stmt"`
	Text string `json:"text"`
}

StmtErrorInput represents the input type for a statement error.

Jump to

Keyboard shortcuts

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