lpmintegration

package
v1.22.9 Latest Latest
Warning

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

Go to latest
Published: Jan 20, 2026 License: BSD-3-Clause Imports: 15 Imported by: 0

Documentation

Overview

Package lpmintegration provides integration with the Lux Package Manager (LPM).

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddRepo

func AddRepo(app *application.Lux, repoURL *url.URL, branch string) (string, error)

AddRepo adds a new LPM repository and returns its alias.

func GetChains added in v1.22.9

func GetChains(app *application.Lux, repoAlias string) ([]string, error)

GetChains returns a list of chains available in a repository.

func GetRepos

func GetRepos(app *application.Lux) ([]string, error)

GetRepos returns a list of all available LPM repositories.

func InstallVM

func InstallVM(app *application.Lux, chainKey string) error

InstallVM installs all VMs for a given chain from LPM.

func MakeKey

func MakeKey(alias, chain string) string

MakeKey creates an LPM key from an alias and chain name.

func SetupLpm

func SetupLpm(app *application.Lux, lpmBaseDir string) error

SetupLpm initializes the LPM client. Note: can only be called once per run.

func UpdateRepos

func UpdateRepos(app *application.Lux) error

UpdateRepos updates all LPM repositories.

Types

type Chain added in v1.22.9

type Chain struct {
	ID          string   `yaml:"id"`
	Alias       string   `yaml:"alias"`
	VM          string   `yaml:"vm"`
	VMs         []string `yaml:"vms"`
	Config      string   `yaml:"config"`
	Genesis     string   `yaml:"genesis"`
	Description string   `yaml:"description"`
}

Chain represents an LPM chain configuration.

func LoadChainFile added in v1.22.9

func LoadChainFile(app *application.Lux, chainKey string) (Chain, error)

LoadChainFile loads a chain configuration from a YAML file.

type ChainWrapper added in v1.22.9

type ChainWrapper struct {
	Chain Chain `yaml:"chain"`
}

ChainWrapper wraps a Chain for YAML parsing.

type Credential

type Credential struct {
	Username string `yaml:"username"`
	Password string `yaml:"password"`
}

Credential represents git authentication credentials

type VM

type VM struct {
	ID          string `yaml:"id"`
	Alias       string `yaml:"alias"`
	VMType      string `yaml:"vm_type"`
	Binary      string `yaml:"binary"`
	ChainConfig string `yaml:"chain_config"`
	Chain       string `yaml:"chain"`
	Genesis     string `yaml:"genesis"`
	Version     string `yaml:"version"`
	URL         string `yaml:"url"`
	Checksum    string `yaml:"checksum"`
	Runtime     string `yaml:"runtime"`
	Description string `yaml:"description"`
}

VM represents an LPM virtual machine configuration.

func LoadVMFile

func LoadVMFile(app *application.Lux, repo, vm string) (VM, error)

LoadVMFile loads a VM configuration from a YAML file.

type VMWrapper

type VMWrapper struct {
	VM VM `yaml:"vm"`
}

VMWrapper wraps a VM for YAML parsing.

Jump to

Keyboard shortcuts

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