actions

package
v1.7.2 Latest Latest
Warning

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

Go to latest
Published: Nov 7, 2024 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Overview

Copyright 2022 Nethermind

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Constants

View Source
const SlashingImportFile string = "slashing_protection.json"

Variables

View Source
var (
	ErrUnsupportedValidatorClient   = errors.New("unsupported validator client")
	ErrCreatingContextDir           = errors.New("error creating context dir")
	ErrValidatorImportCtBadExitCode = errors.New("validator import container exited with non-zero exit code")
	ErrUnknownLodestarPreset        = errors.New("unknown lodestar preset")
	ErrNetworkNotFound              = errors.New("network not found")
)
View Source
var ErrComposeFileNotFound = errors.New("docker-compose file not found")
View Source
var ErrInterrupted = errors.New("interrupt")

Functions

This section is empty.

Types

type ContainerData added in v1.2.0

type ContainerData struct {
	Name  string `yaml:"name"`
	Image string `yaml:"image"`
	Ip    string `yaml:"internal_ip"`
}

type ContainersData added in v1.2.0

type ContainersData struct {
	Containers []ContainerData `yaml:"containers"`
}

type CreateJWTSecretOptions

type CreateJWTSecretOptions struct {
	JWTPath        string
	Network        string
	GenerationPath string
}

type DockerServiceManager added in v1.6.0

type DockerServiceManager interface {
	Image(service string) (string, error)
	Stop(service string) error
	Start(service string) error
	IsRunning(service string) (bool, error)
	Wait(service string, condition container.WaitCondition) (<-chan container.WaitResponse, <-chan error)
	ContainerID(service string) (string, error)
	ContainerLogs(ctID, service string) (string, error)
}

DockerServiceManager is an interface for managing Docker containers.

type GenerateOptions

type GenerateOptions struct {
	GenerationData generate.GenData
	GenerationPath string
}

type GetContainersDataOptions added in v1.2.0

type GetContainersDataOptions struct {
	DockerComposePath string
}

type ImportValidatorKeysCustomOptions

type ImportValidatorKeysCustomOptions struct {
	NetworkConfigPath string
	GenesisPath       string
	DeployBlockPath   string
}

type ImportValidatorKeysOptions

type ImportValidatorKeysOptions struct {
	ValidatorClient string
	Network         string
	StopValidator   bool
	StartValidator  bool
	From            string
	GenerationPath  string
	ContainerTag    string
	CustomConfig    ImportValidatorKeysCustomOptions
}

type RunContainersOptions

type RunContainersOptions struct {
	GenerationPath string
	Services       []string
	SkipDockerPs   bool
}

type SedgeActions

type SedgeActions interface {
	GetCommandRunner() commands.CommandRunner
	ImportSlashingInterchangeData(SlashingImportOptions) error
	ExportSlashingInterchangeData(SlashingExportOptions) error
	SetupContainers(SetupContainersOptions) error
	RunContainers(RunContainersOptions) error
	Generate(GenerateOptions) (generate.GenData, error)
	CreateJWTSecrets(CreateJWTSecretOptions) (string, error)
	ImportValidatorKeys(ImportValidatorKeysOptions) error
	ValidateDockerComposeFile(path string, services ...string) error
	GetContainersData(GetContainersDataOptions) (ContainersData, error)
}

func NewSedgeActions

func NewSedgeActions(options SedgeActionsOptions) SedgeActions

type SedgeActionsOptions

type SedgeActionsOptions struct {
	DockerClient         client.APIClient
	DockerServiceManager DockerServiceManager
	CommandRunner        commands.CommandRunner
	ComposeManager       compose.ComposeManager
}

type SetupContainersOptions

type SetupContainersOptions struct {
	GenerationPath string
	Services       []string
	SkipPull       bool
}

type SlashingExportOptions

type SlashingExportOptions struct {
	ValidatorClient string
	Network         string
	StopValidator   bool
	StartValidator  bool
	GenerationPath  string
	Out             string
	ContainerTag    string
}

type SlashingImportOptions

type SlashingImportOptions struct {
	ValidatorClient string
	Network         string
	StopValidator   bool
	StartValidator  bool
	GenerationPath  string
	From            string
	ContainerTag    string
}

Jump to

Keyboard shortcuts

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