Documentation
¶
Overview ¶
Package tools provides structures and methods for managing tool configurations, including downloading, validating, and executing tools in various environments. It supports different strategies for tool management such as upgrading, forcing installation, or skipping based on conditions and tags.
The package handles various aspects of tool setup, including resolving sources, handling aliases, managing environment variables, applying templates, and validating tool configurations. It also supports working with different platforms, allowing platform-specific handling of tools.
Package tools provides functionality for managing tool configurations.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Tools ¶
Tools represents a collection of Tool configurations.
func NewToolsFromDefaults ¶ added in v0.0.11
func NewToolsFromDefaults(d *defaults.Defaults, inherits []inherit.Inherit) (collection Tools, err error)
NewToolsFromDefaults creates a tool collection from a given tool default and length. This will enable unmarshaling the tools into the defaults, with the following default (and custom) properties: - defaults will populate the missing fields in tool - missing fields in the tool will be populated by those of the defaults - maps will be merged - slices will not be combined, and must be handled by custom logic Above is default `yaml.Unmarshal` behavior.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package aliases provides functionality for managing tool alias names.
|
Package aliases provides functionality for managing tool alias names. |
|
Package command provides utilities to manage and execute shell commands.
|
Package command provides utilities to manage and execute shell commands. |
|
Package exe provides functionality for configuring tool executables.
|
Package exe provides functionality for configuring tool executables. |
|
Package extensions provides functionality for managing tool file extensions.
|
Package extensions provides functionality for managing tool file extensions. |
|
Package fallbacks provides functionality for managing tool fallback sources.
|
Package fallbacks provides functionality for managing tool fallback sources. |
|
Package mode provides functionality for specifying tool operational modes.
|
Package mode provides functionality for specifying tool operational modes. |
|
Package result provides a Result struct to represent the outcome of a tool installation operation.
|
Package result provides a Result struct to represent the outcome of a tool installation operation. |
|
Package skip provides functionality for managing tool skip conditions.
|
Package skip provides functionality for managing tool skip conditions. |
|
Package sources provides abstractions for handling various types of installation sources, including GitHub repositories, direct URLs, Go projects, and command-based sources.
|
Package sources provides abstractions for handling various types of installation sources, including GitHub repositories, direct URLs, Go projects, and command-based sources. |
|
common
Package common provides shared utilities and types used across various modules, including functions for handling downloads, metadata management, file operations, and installation processes.
|
Package common provides shared utilities and types used across various modules, including functions for handling downloads, metadata management, file operations, and installation processes. |
|
github
Package github provides functionality for interacting with GitHub repositories, including fetching release information, matching assets to specific requirements, and downloading files from repository releases.
|
Package github provides functionality for interacting with GitHub repositories, including fetching release information, matching assets to specific requirements, and downloading files from repository releases. |
|
gitlab
Package gitlab provides functionality for interacting with GitLab repositories, including fetching release information, matching assets to specific requirements, and downloading files from repository releases.
|
Package gitlab provides functionality for interacting with GitLab repositories, including fetching release information, matching assets to specific requirements, and downloading files from repository releases. |
|
go
Package goc provides functionality for handling Go-based installations and managing Go commands using GitHub repositories.
|
Package goc provides functionality for handling Go-based installations and managing Go commands using GitHub repositories. |
|
url
Package url provides functionality to handle URLs as sources for downloading and managing files.
|
Package url provides functionality to handle URLs as sources for downloading and managing files. |
|
Package strategy provides functionality for managing tool installation strategies.
|
Package strategy provides functionality for managing tool installation strategies. |
|
Package tags provides functionality for managing tool tags and filtering.
|
Package tags provides functionality for managing tool tags and filtering. |
|
Package tool provides core functionality for managing tool configurations.
|
Package tool provides core functionality for managing tool configurations. |
|
Package values provides functionality for managing tool configuration values.
|
Package values provides functionality for managing tool configuration values. |
|
Package version provides functionality for managing tool version information.
|
Package version provides functionality for managing tool version information. |