Documentation
¶
Index ¶
- type AtmosApiResponse
- type CommitChanges
- type CommitFileAddition
- type CommitFileDeletion
- type CommitRequest
- type CommitResponse
- type ExchangeGitHubOIDCTokenRequest
- type ExchangeGitHubOIDCTokenResponse
- type GetGitHubOIDCResponse
- type InstanceStatusUploadRequest
- type InstancesUploadRequest
- type LockStackRequest
- type LockStackResponse
- type UnlockStackRequest
- type UnlockStackResponse
- type UploadAffectedStacksRequest
- type UploadInstance
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AtmosApiResponse ¶
type CommitChanges ¶ added in v1.215.0
type CommitChanges struct {
Additions []CommitFileAddition `json:"additions"`
Deletions []CommitFileDeletion `json:"deletions"`
}
CommitChanges groups file additions and deletions for a commit.
type CommitFileAddition ¶ added in v1.215.0
type CommitFileAddition struct {
Path string `json:"path"`
Contents string `json:"contents"` // base64-encoded file contents.
}
CommitFileAddition represents a file to add or modify in the commit.
type CommitFileDeletion ¶ added in v1.215.0
type CommitFileDeletion struct {
Path string `json:"path"`
}
CommitFileDeletion represents a file to delete in the commit.
type CommitRequest ¶ added in v1.215.0
type CommitRequest struct {
Branch string `json:"branch"`
Changes CommitChanges `json:"changes"`
CommitMessage string `json:"commitMessage"`
Comment string `json:"comment,omitempty"`
}
CommitRequest is the request body for POST /api/v1/git/commit.
type CommitResponse ¶ added in v1.215.0
type CommitResponse struct {
AtmosApiResponse
Data struct {
SHA string `json:"sha"`
} `json:"data"`
}
CommitResponse is the response from POST /api/v1/git/commit.
type ExchangeGitHubOIDCTokenRequest ¶
type ExchangeGitHubOIDCTokenRequest struct {
Token string `json:"token"`
WorkspaceID string `json:"workspaceId"`
}
ExchangeGitHubOIDCTokenRequest represents the request to exchange OIDC token for Atmos token.
type ExchangeGitHubOIDCTokenResponse ¶
type ExchangeGitHubOIDCTokenResponse struct {
AtmosApiResponse
Data struct {
Token string `json:"token"`
} `json:"data"`
}
ExchangeGitHubOIDCTokenResponse represents the response from Atmos Pro's OIDC auth endpoint.
type GetGitHubOIDCResponse ¶
type GetGitHubOIDCResponse struct {
Value string `json:"value"`
}
GetGitHubOIDCResponse represents the response from GitHub's OIDC token endpoint when requesting an OIDC token.
type InstanceStatusUploadRequest ¶ added in v1.192.0
type InstanceStatusUploadRequest struct {
AtmosProRunID string `json:"atmos_pro_run_id"`
AtmosVersion string `json:"atmos_version"`
AtmosOS string `json:"atmos_os"`
AtmosArch string `json:"atmos_arch"`
GitSHA string `json:"git_sha"`
RepoURL string `json:"repo_url"`
RepoName string `json:"repo_name"`
RepoOwner string `json:"repo_owner"`
RepoHost string `json:"repo_host"`
Component string `json:"component"`
Stack string `json:"stack"`
Command string `json:"command"`
ExitCode int `json:"exit_code"`
}
InstanceStatusUploadRequest represents the data structure for uploading a single instance's status.
type InstancesUploadRequest ¶ added in v1.192.0
type InstancesUploadRequest struct {
RepoURL string `json:"repo_url"`
RepoName string `json:"repo_name"`
RepoOwner string `json:"repo_owner"`
RepoHost string `json:"repo_host"`
Instances []UploadInstance `json:"instances"`
BatchID string `json:"batch_id,omitempty"`
BatchIndex *int `json:"batch_index,omitempty"`
BatchTotal *int `json:"batch_total,omitempty"`
}
InstancesUploadRequest represents the data structure for uploading components for drift detection. We call this from "atmos list instances".
type LockStackRequest ¶
type LockStackResponse ¶
type LockStackResponse struct {
AtmosApiResponse
Data struct {
ID string `json:"id,omitempty"`
WorkspaceId string `json:"workspaceId,omitempty"`
Key string `json:"key,omitempty"`
LockMessage string `json:"lockMessage,omitempty"`
ExpiresAt time.Time `json:"expiresAt,omitempty"`
CreatedAt time.Time `json:"createdAt,omitempty"`
UpdatedAt time.Time `json:"updatedAt,omitempty"`
DeletedAt time.Time `json:"deletedAt,omitempty"`
} `json:"data"`
}
type UnlockStackRequest ¶
type UnlockStackRequest struct {
Key string `json:"key"`
}
type UnlockStackResponse ¶
type UnlockStackResponse struct {
AtmosApiResponse
Data struct{} `json:"data"`
}
type UploadAffectedStacksRequest ¶
type UploadAffectedStacksRequest struct {
HeadSHA string `json:"head_sha"`
BaseSHA string `json:"base_sha"`
RepoURL string `json:"repo_url"`
RepoName string `json:"repo_name"`
RepoOwner string `json:"repo_owner"`
RepoHost string `json:"repo_host"`
Stacks []schema.Affected `json:"stacks"`
BatchID string `json:"batch_id,omitempty"`
BatchIndex *int `json:"batch_index,omitempty"`
BatchTotal *int `json:"batch_total,omitempty"`
}
type UploadInstance ¶ added in v1.214.0
type UploadInstance struct {
Component string `json:"component"`
Stack string `json:"stack"`
ComponentType string `json:"component_type"`
Settings map[string]any `json:"settings,omitempty"`
}
UploadInstance contains only the fields that Atmos Pro needs from an instance. This is an allowlist — new fields must be explicitly added here. Sensitive data (vars, env, backend) is never included.