exoscale

package
v1.4.0-alpha.4 Latest Latest
Warning

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

Go to latest
Published: Mar 31, 2023 License: MPL-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package exoscale contains the Exoscale platform implementation.

Index

Constants

View Source
const (
	// ExoscaleMetadataEndpoint is the local Exoscale endpoint.
	ExoscaleMetadataEndpoint = "http://169.254.169.254/1.0/meta-data"
	// ExoscaleUserDataEndpoint is the local Exoscale endpoint for the config.
	ExoscaleUserDataEndpoint = "http://169.254.169.254/1.0/user-data"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Exoscale

type Exoscale struct{}

Exoscale is the concrete type that implements the runtime.Platform interface.

func (*Exoscale) Configuration

func (e *Exoscale) Configuration(ctx context.Context, r state.State) ([]byte, error)

Configuration implements the runtime.Platform interface.

func (*Exoscale) KernelArgs

func (e *Exoscale) KernelArgs() procfs.Parameters

KernelArgs implements the runtime.Platform interface.

func (*Exoscale) Mode

func (e *Exoscale) Mode() runtime.Mode

Mode implements the runtime.Platform interface.

func (*Exoscale) Name

func (e *Exoscale) Name() string

Name implements the runtime.Platform interface.

func (*Exoscale) NetworkConfiguration

func (e *Exoscale) NetworkConfiguration(ctx context.Context, _ state.State, ch chan<- *runtime.PlatformNetworkConfig) error

NetworkConfiguration implements the runtime.Platform interface.

func (*Exoscale) ParseMetadata

func (e *Exoscale) ParseMetadata(metadata *MetadataConfig) (*runtime.PlatformNetworkConfig, error)

ParseMetadata converts Exoscale platform metadata into platform network config.

type MetadataConfig

type MetadataConfig struct {
	Hostname     string `json:"local-hostname,omitempty"`
	InstanceID   string `json:"instance-id,omitempty"`
	InstanceType string `json:"service-offering,omitempty"`
	PublicIPv4   string `json:"public-ipv4,omitempty"`
	Zone         string `json:"availability-zone,omitempty"`
}

MetadataConfig represents a metadata Exoscale instance.

Jump to

Keyboard shortcuts

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