Documentation
¶
Index ¶
- Variables
- func CreateCedanaConfig(path string) error
- func CreateSSHLogger()
- func GenerateJWT(id string, skey string) (*string, error)
- func GetLogger() zerolog.Logger
- func Unzip(src, dest string) error
- type AWSConfig
- type ActionScripts
- type CedanaConfig
- type Checkpoint
- type Client
- type ConfigClient
- type Connection
- type Docker
- type PaperspaceConfig
- type SharedStorage
- type SharedStorageConfig
Constants ¶
This section is empty.
Variables ¶
View Source
var ValidProviders = []string{
"aws",
"gcp",
"azure",
"paperspace",
}
Functions ¶
func CreateCedanaConfig ¶
Used in bootstrap to create a placeholder config
func CreateSSHLogger ¶
func CreateSSHLogger()
a separate logger for SSH stdout/stderr, for finer control on output.
Types ¶
type AWSConfig ¶
type AWSConfig struct {
SSHKeyPath string `json:"ssh_key_path" mapstructure:"ssh_key_path"` // path to AWS identity key
EnabledRegions []string `json:"enabled_regions" mapstructure:"enabled_regions"`
EnabledInstanceFamilies []string `json:"enabled_instance_families" mapstructure:"enabled_instance_families"`
LaunchTemplateName string `json:"launch_template" mapstructure:"launch_template"`
ImageId string `json:"image_id" mapstructure:"image_id"` // AMI image id
User string `json:"user" mapstructure:"user"` // user if using a custom AMI
}
type ActionScripts ¶
type CedanaConfig ¶
type CedanaConfig struct {
SelfServe bool `json:"self_serve" mapstructure:"self_serve"`
EnabledProviders []string `json:"enabed_providers" mapstructure:"enabled_providers"`
// configures cedana to spin up a new instance and restore on instance failure
KeepRunning bool `json:"keep_running" mapstructure:"keep_running"`
// provider specific configurations
AWSConfig AWSConfig `json:"aws" mapstructure:"aws"`
PaperspaceConfig PaperspaceConfig `json:"paperspace" mapstructure:"paperspace"`
Checkpoint Checkpoint `json:"checkpoint" mapstructure:"checkpoint"`
Connection Connection `json:"connection" mapstructure:"connection"`
}
func InitCedanaConfig ¶
func InitCedanaConfig() (*CedanaConfig, error)
type Checkpoint ¶
type Client ¶
type Client struct {
ProcessName string `json:"process_name" mapstructure:"process_name"`
LeaveRunning bool `json:"leave_running" mapstructure:"leave_running"`
SignalProcessPreDump bool `json:"signal_process_pre_dump" mapstructure:"signal_process_pre_dump"`
SignalProcessTimeout int `json:"signal_process_timeout" mapstructure:"signal_process_timeout"`
}
type ConfigClient ¶
type ConfigClient struct {
CedanaManaged bool `json:"cedana_managed" mapstructure:"cedana_managed"`
Client Client `json:"client" mapstructure:"client"`
ActionScripts ActionScripts `json:"action_scripts" mapstructure:"action_scripts"`
Connection Connection `json:"connection" mapstructure:"connection"`
Docker Docker `json:"docker" mapstructure:"docker"`
}
func BuildClientConfig ¶
func BuildClientConfig(jobFile *cedana.JobFile) *ConfigClient
client config builder
type Connection ¶
type PaperspaceConfig ¶
type PaperspaceConfig struct {
APIKey string `json:"api_key" mapstructure:"api_key"`
SSHKeyPath string `json:"ssh_key_path" mapstructure:"ssh_key_path"`
EnabledRegions []string `json:"enabled_regions" mapstructure:"enabled_regions"`
TemplateId string `json:"template_id" mapstructure:"template_id"`
User string `json:"user" mapstructure:"user"`
}
type SharedStorage ¶
type SharedStorage struct {
// only useful for multi-machine checkpoint/restore
}
type SharedStorageConfig ¶
type SharedStorageConfig struct {
}
Click to show internal directories.
Click to hide internal directories.