package
11.1.0+incompatible
Repository: https://github.com/fastly/cli.git
Documentation: pkg.go.dev

# Packages

Package computeacl contains commands to inspect and manipulate Fastly compute ACLs.
Package setup contains logic for managing the creation of resources that are defined within the fastly.toml manifest file.

# Functions

ChangeProjectDirectory moves into `dir` and returns its absolute path.
CreatePackageArchive packages build artifacts as a Fastly package.
EnvironmentManifest returns the relevant manifest filename, taking into account the user passing an --env flag.
ExecuteWasmTools calls the wasm-tools binary.
ExtendStaticSecretEnvVars mutates `StaticSecretEnvVars` to include user specified environment variables.
FileNameWithoutExtension returns a filename with its extension stripped.
FilterSecretsFromBytes returns the input string modified such that any value assigned to an environment variable (identified as containing a secret) is redacted.
FilterSecretsFromSlice returns the input slice modified such that any value assigned to an environment variable (identified as containing a secret) is redacted.
FilterSecretsFromString returns the input string modified such that any value assigned to an environment variable (identified as containing a secret) is redacted.
GetIgnoredFiles reads the .fastlyignore file line-by-line and expands the glob pattern into a map containing all files it matches.
GetNonIgnoredFiles walks a filepath and returns all files that don't exist in the provided ignore files map.
GetWasmTools returns the path to the wasm-tools binary.
NewAssemblyScript constructs a new AssemblyScript toolchain.
NewBuildCommand returns a usable command registered under the parent.
NewDeployCommand returns a usable command registered under the parent.
NewGo constructs a new Go toolchain.
NewHashFilesCommand returns a usable command registered under the parent.
NewHashsumCommand returns a usable command registered under the parent.
NewInitCommand returns a usable command registered under the parent.
NewJavaScript constructs a new JavaScript toolchain.
NewLanguage constructs a new Language from a LangaugeOptions.
NewLanguages returns a list of supported programming languages.
NewMetadataCommand returns a new command registered in the parent.
NewOther constructs a new unsupported language instance.
NewPackCommand returns a usable command registered under the parent.
NewPublishCommand returns a usable command registered under the parent.
NewRootCommand returns a new command registered in the parent.
NewRust constructs a new Rust toolchain.
NewServeCommand returns a usable command registered under the parent.
NewUpdateCommand returns a usable command registered under the parent.
NewValidateCommand returns a usable command registered under the parent.

# Constants

AsSourceDirectory represents the source code directory.
CommandName is the string to be used to invoke this command.
CustomPostScriptMessage is the message displayed to a user when there is either a post_init or post_build script defined.
EnvManifestMsg informs the user that an environment manifest is being used.
GoSourceDirectory represents the source code directory.
IgnoreFilePath is the filepath name of the Fastly ignore file.
JsSourceDirectory represents the source code directory.
ProjectDirMsg informs the user that we've changed the project directory.
RustDefaultBuildCommand is a build command compiled into the CLI binary so it can be used as a fallback for customer's who have an existing Compute project and are simply upgrading their CLI version and might not be familiar with the changes in the 4.0.0 release with regards to how build logic has moved to the fastly.toml manifest.
RustDefaultPackageName is the expected binary create/package name to be built.
RustDefaultWasmWasiTarget is the expected Rust WasmWasi build target.
RustManifest is the manifest file for defining project configuration.
RustSourceDirectory represents the source code directory.

# Variables

AsDefaultBuildCommand is a build command compiled into the CLI binary so it can be used as a fallback for customer's who have an existing Compute project and are simply upgrading their CLI version and might not be familiar with the changes in the 4.0.0 release with regards to how build logic has moved to the fastly.toml manifest.
AsDefaultBuildCommandForWebpack is a build command compiled into the CLI binary so it can be used as a fallback for customer's who have an existing Compute project using the 'default' JS Starter Kit, and are simply upgrading their CLI version and might not be familiar with the changes in the 4.0.0 release with regards to how build logic has moved to the fastly.toml manifest.
AWSIDPattern is the pattern for an AWS ID.
AWSSecretPattern is the pattern for an AWS Secret.
DefaultBuildErrorRemediation is the message returned to a user when there is a build error.
ErrPackageUnchanged is an error that indicates the package hasn't changed.
ErrWasmtoolsNotFound represents an error finding the binary installed.
GitHubAppIDPattern is the pattern for a GitHub App ID.
GitHubAppKeyPattern is the pattern for a GitHub App Key.
GitHubOAuth2ClientIDPattern is the pattern for a GitHub OAuth2 ClientID.
GitHubOAuth2ClientSecretPattern is the pattern for a GitHub OAuth2 ClientID.
GitHubOAuthTokenPattern is the pattern for a GitHub OAuth token.
GitHubOldOAuthTokenPattern is the pattern for an older GitHub OAuth token format.
JsDefaultBuildCommand is a build command compiled into the CLI binary so it can be used as a fallback for customer's who have an existing Compute project and are simply upgrading their CLI version and might not be familiar with the changes in the 4.0.0 release with regards to how build logic has moved to the fastly.toml manifest.
JsDefaultBuildCommandForWebpack is a build command compiled into the CLI binary so it can be used as a fallback for customer's who have an existing Compute project using the 'default' JS Starter Kit, and are simply upgrading their CLI version and might not be familiar with the changes in the 4.0.0 release with regards to how build logic has moved to the fastly.toml manifest.
Languages is a list of supported language options.
100MB in bytes.
#nosec G101 (CWE-798).
SecretPatterns is a collection of secret identifying patterns.
StaticSecretEnvVars is a static list of env vars containing secrets.
TinyGoDefaultBuildCommand is a build command compiled into the CLI binary so it can be used as a fallback for customer's who have an existing Compute project and are simply upgrading their CLI version and might not be familiar with the changes in the 4.0.0 release with regards to how build logic has moved to the fastly.toml manifest.

# Structs

AssemblyScript implements a Toolchain for the AssemblyScript language.
BuildCommand produces a deployable artifact from files on the local disk.
BuildToolchain enables a language toolchain to compile their build script.
CargoLocateProject represents the metadata for where to find the project's Cargo.toml manifest file.
CargoLockFile represents a Rust lockfile.
CargoLockFilePackage represents a package within a Rust lockfile.
CargoManifest models the package configuration properties of a Rust Cargo manifest which we are interested in and are read from the Cargo.toml manifest file within the $PWD of the package.
CargoMetadata models information about the workspace members and resolved dependencies of the current package via `cargo metadata` command output.
CargoMetadataPackage models the package structure returned when executing the command `cargo metadata`.
CargoPackage models the package configuration properties of a Rust Cargo package which we are interested in and is embedded within CargoManifest and CargoLock.
CargoWorkspace models the [workspace] config inside Cargo.toml.
DataCollection represents data annotated onto the Wasm binary.
DataCollectionBuildInfo represents build data annotated onto the Wasm binary.
DataCollectionMachineInfo represents machine data annotated onto the Wasm binary.
DataCollectionPackageInfo represents package data annotated onto the Wasm binary.
DataCollectionScriptInfo represents script data annotated onto the Wasm binary.
DeployCommand deploys an artifact previously produced by build.
Flags represents the flags defined for the command.
Go implements a Toolchain for the TinyGo language.
HashFilesCommand produces a deployable artifact from files on the local disk.
HashsumCommand produces a deployable artifact from files on the local disk.
InitCommand initializes a Compute project package on the local machine.
JavaScript implements a Toolchain for the JavaScript language.
JavaScriptLockFile represents a JavaScript lockfile.
JavaScriptPackage represents a package within a JavaScript lockfile.
Language models a Compute source language.
LanguageOptions models configuration options for a Language.
MetadataCommand controls what metadata is collected for a Wasm binary.
NPMPackage represents a package.json manifest and its dependencies.
Other implements a Toolchain for languages without official support.
PackCommand takes a .wasm and builds the required tar/gzip package ready to be uploaded.
PublishCommand produces and deploys an artifact from files on the local disk.
RootCommand is the parent command for all subcommands in this package.
Rust implements a Toolchain for the Rust language.
RustToolchain models the rust-toolchain targets.
RustToolchainManifest models a [toolchain] from a rust-toolchain.toml manifest.
ServeCommand produces and runs an artifact from files on the local disk.
ServiceResources is a collection of backend objects created during setup.
Shell represents a subprocess shell used by `compute` environment where `[scripts.build]` has been defined within fastly.toml manifest.
UpdateCommand calls the Fastly API to update packages.
ValidateCommand validates a package archive.

# Interfaces

Toolchain abstracts a Compute source language toolchain.

# Type aliases

Activator represents a function that calls an undocumented API endpoint for activating a Compute free trial on the given customer account.