2023-01-30 20:44:48 +01:00
|
|
|
use dagger_core::{Boolean, Input, Int, Scalar};
|
2023-01-29 20:14:52 +01:00
|
|
|
|
2023-01-29 15:23:03 +01:00
|
|
|
// code generated by dagger. DO NOT EDIT.
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
/// The platform config OS and architecture in a Container.
|
|
|
|
/// The format is [os]/[platform]/[version] (e.g. darwin/arm64/v7, windows/amd64, linux/arm64).
|
|
|
|
pub struct Platform(Scalar);
|
|
|
|
|
|
|
|
/// A unique identifier for a secret.
|
|
|
|
pub struct SecretID(Scalar);
|
2023-01-29 20:14:52 +01:00
|
|
|
|
2023-01-30 20:44:48 +01:00
|
|
|
/// A global cache volume identifier.
|
|
|
|
pub struct CacheID(Scalar);
|
|
|
|
|
2023-01-29 15:23:03 +01:00
|
|
|
/// A content-addressed socket identifier.
|
|
|
|
pub struct SocketID(Scalar);
|
|
|
|
|
2023-01-30 20:44:48 +01:00
|
|
|
/// A unique container identifier. Null designates an empty container (scratch).
|
|
|
|
pub struct ContainerID(Scalar);
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
/// A file identifier.
|
|
|
|
pub struct FileID(Scalar);
|
|
|
|
|
|
|
|
/// A content-addressed directory identifier.
|
|
|
|
pub struct DirectoryID(Scalar);
|
2023-01-30 20:44:48 +01:00
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
///
|
2023-01-30 20:44:48 +01:00
|
|
|
pub struct BuildArg {
|
|
|
|
pub name: Option<String>,
|
|
|
|
|
|
|
|
pub value: Option<String>,
|
|
|
|
}
|
|
|
|
|
|
|
|
impl Input for BuildArg {}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
/// A set of scripts and/or extensions
|
|
|
|
pub struct Project {}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl Project {
|
|
|
|
|
|
|
|
/// extensions in this project
|
|
|
|
pub fn extensions(&self) -> Vec<Option<Project>> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Code files generated by the SDKs in the project
|
|
|
|
pub fn generated_code(&self) -> Option<Directory> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// install the project's schema
|
|
|
|
pub fn install(&self) -> Option<Boolean> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// name of the project
|
|
|
|
pub fn name(&self) -> Option<String> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// schema provided by the project
|
|
|
|
pub fn schema(&self) -> String {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// sdk used to generate code for and/or execute this project
|
|
|
|
pub fn sdk(&self) -> String {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
impl Input for Project {}
|
|
|
|
|
|
|
|
/// Information about the host execution environment.
|
|
|
|
pub struct Host {}
|
|
|
|
|
|
|
|
impl Host {
|
|
|
|
|
|
|
|
/// Accesses a directory on the host.
|
|
|
|
pub fn directory(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Accesses an environment variable on the host.
|
|
|
|
pub fn env_variable(&self) -> HostVariable {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Accesses a Unix socket on the host.
|
|
|
|
pub fn unix_socket(&self) -> Option<Socket> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Retrieves the current working directory on the host.
|
|
|
|
pub fn workdir(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
impl Input for Host {}
|
|
|
|
|
|
|
|
/// An environment variable on the host environment.
|
|
|
|
pub struct HostVariable {}
|
|
|
|
|
|
|
|
impl HostVariable {
|
|
|
|
|
|
|
|
/// A secret referencing the value of this variable.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn secret(&self) -> Option<Secret> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The value of this variable.
|
|
|
|
pub fn value(&self) -> Option<String> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
2023-01-30 20:53:53 +01:00
|
|
|
}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl Input for HostVariable {}
|
|
|
|
|
|
|
|
/// A git repository.
|
|
|
|
pub struct GitRepository {}
|
|
|
|
|
|
|
|
impl GitRepository {
|
|
|
|
|
|
|
|
/// Returns details on one branch.
|
|
|
|
pub fn branch(&self) -> Option<GitRef> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Lists of branches on the repository.
|
|
|
|
pub fn branches(&self) -> Option<Vec<Option<String>>> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Returns details on one commit.
|
|
|
|
pub fn commit(&self) -> Option<GitRef> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Returns details on one tag.
|
|
|
|
pub fn tag(&self) -> Option<GitRef> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Lists of tags on the repository.
|
|
|
|
pub fn tags(&self) -> Option<Vec<Option<String>>> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl Input for GitRepository {}
|
|
|
|
|
|
|
|
/// A directory.
|
|
|
|
pub struct Directory {}
|
|
|
|
|
|
|
|
impl Directory {
|
|
|
|
|
|
|
|
/// Gets the difference between this directory and an another directory.
|
|
|
|
pub fn diff(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Retrieves a directory at the given path.
|
|
|
|
pub fn directory(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Builds a new Docker container from this directory.
|
|
|
|
pub fn docker_build(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Returns a list of files and directories at the given path.
|
|
|
|
pub fn entries(&self) -> Option<Vec<Option<String>>> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Writes the contents of the directory to a path on the host.
|
|
|
|
pub fn export(&self) -> Option<Boolean> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Retrieves a file at the given path.
|
|
|
|
pub fn file(&self) -> Option<File> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// The content-addressed identifier of the directory.
|
|
|
|
pub fn id(&self) -> Option<DirectoryID> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// load a project's metadata
|
|
|
|
pub fn load_project(&self) -> Option<Project> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Creates a named sub-pipeline.
|
|
|
|
pub fn pipeline(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Retrieves this directory plus a directory written at the given path.
|
|
|
|
pub fn with_directory(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Retrieves this directory plus the contents of the given file copied to the given path.
|
|
|
|
pub fn with_file(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Retrieves this directory plus a new directory created at the given path.
|
|
|
|
pub fn with_new_directory(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Retrieves this directory plus a new file written at the given path.
|
|
|
|
pub fn with_new_file(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Retrieves this directory with all file/dir timestamps set to the given time, in seconds from the Unix epoch.
|
|
|
|
pub fn with_timestamps(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Retrieves this directory with the directory at the given path removed.
|
|
|
|
pub fn without_directory(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Retrieves this directory with the file at the given path removed.
|
|
|
|
pub fn without_file(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
impl Input for Directory {}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
|
|
|
/// An OCI-compatible container, also known as a docker container.
|
|
|
|
pub struct Container {}
|
|
|
|
|
|
|
|
impl Container {
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Initializes this container from a Dockerfile build, using the context, a dockerfile file path and some additional buildArgs.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn build(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves default arguments for future commands.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn default_args(&self) -> Vec<Option<String>> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves a directory at the given path. Mounts are included.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn directory(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves entrypoint to be prepended to the arguments of all commands.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn entrypoint(&self) -> Vec<Option<String>> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves the value of the specified environment variable.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn env_variable(&self) -> String {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves the list of environment variables passed to commands.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn env_variables(&self) -> Option<Vec<Option<EnvVariable>>> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container after executing the specified command inside it.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn exec(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Exit code of the last executed command. Zero means success.
|
|
|
|
/// Null if no command has been executed.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn exit_code(&self) -> Int {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Writes the container as an OCI tarball to the destination file path on the host for the specified platformVariants.
|
|
|
|
/// Return true on success.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn export(&self) -> Option<Boolean> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves a file at the given path. Mounts are included.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn file(&self) -> Option<File> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Initializes this container from the base image published at the given address.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn from(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container's root filesystem. Mounts are not included.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn fs(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// A unique identifier for this container.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn id(&self) -> Option<ContainerID> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves the value of the specified label.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn label(&self) -> String {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves the list of labels passed to container.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn labels(&self) -> Option<Vec<Option<Label>>> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves the list of paths where a directory is mounted.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn mounts(&self) -> Option<Vec<Option<String>>> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Creates a named sub-pipeline
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn pipeline(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The platform this container executes and publishes as.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn platform(&self) -> Option<Platform> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Publishes this container as a new image to the specified address, for the platformVariants, returning a fully qualified ref.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn publish(&self) -> Option<String> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container's root filesystem. Mounts are not included.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn rootfs(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The error stream of the last executed command.
|
|
|
|
/// Null if no command has been executed.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn stderr(&self) -> String {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The output stream of the last executed command.
|
|
|
|
/// Null if no command has been executed.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn stdout(&self) -> String {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves the user to be set for all commands.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn user(&self) -> String {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Configures default arguments for future commands.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_default_args(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus a directory written at the given path.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_directory(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container but with a different command entrypoint.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_entrypoint(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus the given environment variable.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_env_variable(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container after executing the specified command inside it.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_exec(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Initializes this container from this DirectoryID.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_fs(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus the contents of the given file copied to the given path.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_file(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus the given label.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_label(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus a cache volume mounted at the given path.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_mounted_cache(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus a directory mounted at the given path.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_mounted_directory(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus a file mounted at the given path.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_mounted_file(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus a secret mounted into a file at the given path.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_mounted_secret(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus a temporary directory mounted at the given path.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_mounted_temp(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus a new file written at the given path.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_new_file(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Initializes this container from this DirectoryID.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_rootfs(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus an env variable containing the given secret.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_secret_variable(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container plus a socket forwarded to the given Unix socket path.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_unix_socket(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this containers with a different command user.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_user(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container with a different working directory.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn with_workdir(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container minus the given environment variable.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn without_env_variable(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container minus the given environment label.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn without_label(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container after unmounting everything at the given path.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn without_mount(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this container with a previously added Unix socket removed.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn without_unix_socket(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves the working directory for all commands.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn workdir(&self) -> String {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
impl Input for Container {}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
/// A simple key value object that represents a label.
|
|
|
|
pub struct Label {}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl Label {
|
|
|
|
|
|
|
|
/// The label name.
|
|
|
|
pub fn name(&self) -> Option<String> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The label value.
|
|
|
|
pub fn value(&self) -> Option<String> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
2023-01-30 20:53:53 +01:00
|
|
|
}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl Input for Label {}
|
|
|
|
|
|
|
|
///
|
|
|
|
pub struct Socket {}
|
|
|
|
|
|
|
|
impl Socket {
|
|
|
|
|
|
|
|
/// The content-addressed identifier of the socket.
|
|
|
|
pub fn id(&self) -> Option<SocketID> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl Input for Socket {}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
|
|
|
/// A reference to a secret value, which can be handled more safely than the value itself.
|
|
|
|
pub struct Secret {}
|
|
|
|
|
|
|
|
impl Secret {
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The identifier for this secret.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn id(&self) -> Option<SecretID> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The value of this secret.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn plaintext(&self) -> Option<String> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
impl Input for Secret {}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
/// A directory whose contents persist across runs.
|
|
|
|
pub struct CacheVolume {}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl CacheVolume {
|
|
|
|
|
|
|
|
///
|
|
|
|
pub fn id(&self) -> Option<CacheID> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl Input for CacheVolume {}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
///
|
2023-01-30 20:44:48 +01:00
|
|
|
pub struct Query {}
|
|
|
|
|
|
|
|
impl Query {
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Constructs a cache volume for a given cache key.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn cache_volume(&self) -> Option<CacheVolume> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Loads a container from ID.
|
|
|
|
/// Null ID returns an empty container (scratch).
|
|
|
|
/// Optional platform argument initializes new containers to execute and publish as that platform. Platform defaults to that of the builder's host.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn container(&self) -> Option<Container> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The default platform of the builder.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn default_platform(&self) -> Option<Platform> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Load a directory by ID. No argument produces an empty directory.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn directory(&self) -> Option<Directory> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Loads a file by ID.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn file(&self) -> File {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Queries a git repository.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn git(&self) -> Option<GitRepository> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Queries the host environment.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn host(&self) -> Option<Host> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Returns a file containing an http remote url content.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn http(&self) -> Option<File> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Creates a named sub-pipeline
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn pipeline(&self) -> Option<Query> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Look up a project by name
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn project(&self) -> Option<Project> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Loads a secret from its ID.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn secret(&self) -> Option<Secret> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Loads a socket by its ID.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn socket(&self) -> Option<Socket> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
impl Input for Query {}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
/// A file.
|
|
|
|
pub struct File {}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl File {
|
|
|
|
|
|
|
|
/// Retrieves the contents of the file.
|
|
|
|
pub fn contents(&self) -> Option<String> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Writes the file to a file path on the host.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn export(&self) -> Option<Boolean> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves the content-addressed identifier of the file.
|
|
|
|
pub fn id(&self) -> Option<FileID> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves a secret referencing the contents of this file.
|
|
|
|
pub fn secret(&self) -> Option<Secret> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Gets the size of the file, in bytes.
|
|
|
|
pub fn size(&self) -> Option<Int> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// Retrieves this file with its created/modified timestamps set to the given time, in seconds from the Unix epoch.
|
|
|
|
pub fn with_timestamps(&self) -> Option<File> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl Input for File {}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
|
|
|
/// A simple key value object that represents an environment variable.
|
|
|
|
pub struct EnvVariable {}
|
|
|
|
|
|
|
|
impl EnvVariable {
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The environment variable name.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn name(&self) -> Option<String> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The environment variable value.
|
2023-01-30 20:44:48 +01:00
|
|
|
pub fn value(&self) -> Option<String> {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
impl Input for EnvVariable {}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
/// A git ref (tag, branch or commit).
|
|
|
|
pub struct GitRef {}
|
2023-01-30 20:44:48 +01:00
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl GitRef {
|
|
|
|
|
|
|
|
/// The digest of the current value of this ref.
|
|
|
|
pub fn digest(&self) -> Option<String> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
|
|
|
|
/// The filesystem tree at this ref.
|
|
|
|
pub fn tree(&self) -> Option<Directory> {
|
2023-01-30 20:44:48 +01:00
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-01-30 20:53:53 +01:00
|
|
|
impl Input for GitRef {}
|