scp
Performs copying of files and directories to and from a remote server over SCP using password or IdentityFile.Installation
dagger install github.com/seungyeop-lee/daggerverse/scp@v0.2.3
Entrypoint
Return Type
Scp
Example
dagger -m github.com/seungyeop-lee/daggerverse/scp@63f0f2d385768aa435474a9eec552750500899f2 call \
func (m *myModule) example() *Scp {
return dag.
Scp()
}
@function
def example() -> dag.Scp:
return (
dag.scp()
)
@func()
example(): Scp {
return dag
.scp()
}
Types
Scp 🔗
SCP dagger module
baseContainer() 🔗
Get the base container for the SCP module. Used when you need to inject a Service into a BaseContainer and run it.
Example:
dag.Scp().Config("admin@sshd", ScpConfigOpts{
Port: 8022,
BaseCtr: dag.Scp().BaseContainer().WithServiceBinding("sshd", sshd),
})...
Note: As of v0.11.2, passing a Service directly as a parameter to an external dagger function would not bind to the container created inside the dagger function.
Return Type
Container !
Example
dagger -m github.com/seungyeop-lee/daggerverse/scp@63f0f2d385768aa435474a9eec552750500899f2 call \
base-container
func (m *myModule) example() *Container {
return dag.
Scp().
BaseContainer()
}
@function
def example() -> dagger.Container:
return (
dag.scp()
.base_container()
)
@func()
example(): Container {
return dag
.scp()
.baseContainer()
}
config() 🔗
Set configuration for SCP connections.
Return Type
Config !
Arguments
Name | Type | Default Value | Description |
---|---|---|---|
destination | String ! | - | destination to connect ex) user@host |
port | Integer | 22 | port to connect |
baseCtr | Container | - | base container |
Example
dagger -m github.com/seungyeop-lee/daggerverse/scp@63f0f2d385768aa435474a9eec552750500899f2 call \
config --destination string
func (m *myModule) example(destination string) *ScpConfig {
return dag.
Scp().
Config(destination)
}
@function
def example(destination: str) -> dag.ScpConfig:
return (
dag.scp()
.config(destination)
)
@func()
example(destination: string): ScpConfig {
return dag
.scp()
.config(destination)
}
Config 🔗
SCP configuration
withPassword() 🔗
Set the password as the SCP connection credentials.
Return Type
Commander !
Arguments
Name | Type | Default Value | Description |
---|---|---|---|
arg | Secret ! | - | password |
Example
dagger -m github.com/seungyeop-lee/daggerverse/scp@63f0f2d385768aa435474a9eec552750500899f2 call \
config --destination string \
with-password --arg env:MYSECRET
func (m *myModule) example(destination string, arg *Secret) *ScpCommander {
return dag.
Scp().
Config(destination).
WithPassword(arg)
}
@function
def example(destination: str, arg: dagger.Secret) -> dag.ScpCommander:
return (
dag.scp()
.config(destination)
.with_password(arg)
)
@func()
example(destination: string, arg: Secret): ScpCommander {
return dag
.scp()
.config(destination)
.withPassword(arg)
}
withIdentityFile() 🔗
Set up identity file with SCP connection credentials.
Note: Tested against RSA-formatted and OPENSSH-formatted private keys.
Return Type
Commander !
Arguments
Name | Type | Default Value | Description |
---|---|---|---|
arg | Secret ! | - | identity file |
Example
dagger -m github.com/seungyeop-lee/daggerverse/scp@63f0f2d385768aa435474a9eec552750500899f2 call \
config --destination string \
with-identity-file --arg env:MYSECRET
func (m *myModule) example(destination string, arg *Secret) *ScpCommander {
return dag.
Scp().
Config(destination).
WithIdentityFile(arg)
}
@function
def example(destination: str, arg: dagger.Secret) -> dag.ScpCommander:
return (
dag.scp()
.config(destination)
.with_identity_file(arg)
)
@func()
example(destination: string, arg: Secret): ScpCommander {
return dag
.scp()
.config(destination)
.withIdentityFile(arg)
}
Commander 🔗
SCP command launcher
container() 🔗
Returns a container that is ready to launch SCP command.
Return Type
Container !
Example
dagger -m github.com/seungyeop-lee/daggerverse/scp@63f0f2d385768aa435474a9eec552750500899f2 call \
config --destination string \
with-identity-file --arg env:MYSECRET \
container
func (m *myModule) example(destination string, arg *Secret) *Container {
return dag.
Scp().
Config(destination).
WithIdentityFile(arg).
Container()
}
@function
def example(destination: str, arg: dagger.Secret) -> dagger.Container:
return (
dag.scp()
.config(destination)
.with_identity_file(arg)
.container()
)
@func()
example(destination: string, arg: Secret): Container {
return dag
.scp()
.config(destination)
.withIdentityFile(arg)
.container()
}
fileToRemote() 🔗
Copy a file to a remote server.
Return Type
Container !
Arguments
Name | Type | Default Value | Description |
---|---|---|---|
source | File ! | - | source file |
target | String | - | destination path (If not entered, '.' is used as the default) |
Example
dagger -m github.com/seungyeop-lee/daggerverse/scp@63f0f2d385768aa435474a9eec552750500899f2 call \
config --destination string \
with-identity-file --arg env:MYSECRET \
file-to-remote --source file:path
func (m *myModule) example(destination string, arg *Secret, source *File) *Container {
return dag.
Scp().
Config(destination).
WithIdentityFile(arg).
FileToRemote(source)
}
@function
def example(destination: str, arg: dagger.Secret, source: dagger.File) -> dagger.Container:
return (
dag.scp()
.config(destination)
.with_identity_file(arg)
.file_to_remote(source)
)
@func()
example(destination: string, arg: Secret, source: File): Container {
return dag
.scp()
.config(destination)
.withIdentityFile(arg)
.fileToRemote(source)
}
fileFromRemote() 🔗
Copy a file from a remote server.
Return Type
File !
Arguments
Name | Type | Default Value | Description |
---|---|---|---|
source | String ! | - | source path |
Example
dagger -m github.com/seungyeop-lee/daggerverse/scp@63f0f2d385768aa435474a9eec552750500899f2 call \
config --destination string \
with-identity-file --arg env:MYSECRET \
file-from-remote --source string
func (m *myModule) example(destination string, arg *Secret, source string) *File {
return dag.
Scp().
Config(destination).
WithIdentityFile(arg).
FileFromRemote(source)
}
@function
def example(destination: str, arg: dagger.Secret, source: str) -> dagger.File:
return (
dag.scp()
.config(destination)
.with_identity_file(arg)
.file_from_remote(source)
)
@func()
example(destination: string, arg: Secret, source: string): File {
return dag
.scp()
.config(destination)
.withIdentityFile(arg)
.fileFromRemote(source)
}
directoryToRemote() 🔗
Copy a directory to a remote server.
Return Type
Container !
Arguments
Name | Type | Default Value | Description |
---|---|---|---|
source | Directory ! | - | source directory |
target | String ! | - | destination path (If the path is an already existing directory, it will be copied to the '[path]/source-dir' location) |
Example
dagger -m github.com/seungyeop-lee/daggerverse/scp@63f0f2d385768aa435474a9eec552750500899f2 call \
config --destination string \
with-identity-file --arg env:MYSECRET \
directory-to-remote --source DIR_PATH --target string
func (m *myModule) example(destination string, arg *Secret, source *Directory, target string) *Container {
return dag.
Scp().
Config(destination).
WithIdentityFile(arg).
DirectoryToRemote(source, target)
}
@function
def example(destination: str, arg: dagger.Secret, source: dagger.Directory, target: str) -> dagger.Container:
return (
dag.scp()
.config(destination)
.with_identity_file(arg)
.directory_to_remote(source, target)
)
@func()
example(destination: string, arg: Secret, source: Directory, target: string): Container {
return dag
.scp()
.config(destination)
.withIdentityFile(arg)
.directoryToRemote(source, target)
}
directoryFromRemote() 🔗
Copy a directory from a remote server.
Return Type
Directory !
Arguments
Name | Type | Default Value | Description |
---|---|---|---|
source | String ! | - | source path |
Example
dagger -m github.com/seungyeop-lee/daggerverse/scp@63f0f2d385768aa435474a9eec552750500899f2 call \
config --destination string \
with-identity-file --arg env:MYSECRET \
directory-from-remote --source string
func (m *myModule) example(destination string, arg *Secret, source string) *Directory {
return dag.
Scp().
Config(destination).
WithIdentityFile(arg).
DirectoryFromRemote(source)
}
@function
def example(destination: str, arg: dagger.Secret, source: str) -> dagger.Directory:
return (
dag.scp()
.config(destination)
.with_identity_file(arg)
.directory_from_remote(source)
)
@func()
example(destination: string, arg: Secret, source: string): Directory {
return dag
.scp()
.config(destination)
.withIdentityFile(arg)
.directoryFromRemote(source)
}