Setup Requirements

Apk Requirements

Specify which apk packages should be available in order to run the component.

Example:

setup:
  - type: apk
    packages: [ sl ]

packages

Type: String / List of String

Specifies which packages to install.

Example:

packages: [ sl ]

type

Type: String

Specifies the type of the requirement specification.

Apt Requirements

Specify which apt packages should be available in order to run the component.

Example:

setup:
  - type: apt
    packages: [ sl ]

interactive

Type: Boolean

If false, the Debian frontend is set to non-interactive (recommended). Default: false.

packages

Type: String / List of String

Specifies which packages to install.

Example:

packages: [ sl ]

type

Type: String

Specifies the type of the requirement specification.

Docker Requirements

Specify which Docker commands should be run during setup.

Example:

setup:
  - type: docker
    build_args: "R_VERSION=hello_world"
    run: |
      echo 'Run a custom command'
      echo 'Foo' > /path/to/file.txt

add

Type: String / List of String

Specifies which ADD entries to add to the Dockerfile while building it.

Example:

add: [ "http://foo/bar ." ]

build_args

Type: String / List of String

Specifies which ARG entries to add to the Dockerfile while building it.

Example:

build_args: [ "R_VERSION=4.2" ]

copy

Type: String / List of String

Specifies which COPY entries to add to the Dockerfile while building it.

Example:

copy: [ "resource.txt /path/to/resource.txt" ]

env

Type: String / List of String

Specifies which ENV entries to add to the Dockerfile while building it. Unlike ARG, ENV entries are also accessible from inside the container.

Example:

env: [ "R_VERSION=4.2" ]

label

Type: String / List of String

Specifies which LABEL entries to add to the Dockerfile while building it.

Example:

label: [ component="foo" ]

resources

Type: String / List of String

Warning

Deprecated since Viash 0.6.3. Use copy instead.

Specifies which COPY entries to add to the Dockerfile while building it.

Example:

resources: [ "resource.txt /path/to/resource.txt" ]

run

Type: String / List of String

Specifies which RUN entries to add to the Dockerfile while building it.

Example:

run: |
  echo 'Run a custom command'
  echo 'Foo' > /path/to/file.txt

type

Type: String

Specifies the type of the requirement specification.

Javascript Requirements

Specify which JavaScript packages should be available in order to run the component.

Example:

setup:
  - type: javascript
    npm: packagename
    git: "https://some.git.repository/org/repo"
    github: "owner/repository"
    url: "https://github.com/org/repo/archive/HEAD.zip"

git

Type: String / List of String

Specifies which packages to install using a Git URI.

Example:

git: [ https://some.git.repository/org/repo ]

github

Type: String / List of String

Specifies which packages to install from GitHub.

Example:

github: [ owner/repository ]

npm

Type: String / List of String

Specifies which packages to install from npm.

Example:

npm: [ packagename ]

packages

Type: String / List of String

Specifies which packages to install from npm.

Example:

packages: [ packagename ]

type

Type: String

Specifies the type of the requirement specification.

url

Type: String / List of String

Specifies which packages to install using a generic URI.

Example:

url: [ https://github.com/org/repo/archive/HEAD.zip ]

Python Requirements

Specify which Python packages should be available in order to run the component.

Example:

setup:
  - type: python
    pip: numpy
    github: [ jkbr/httpie, foo/bar ]
    url: "https://github.com/some_org/some_pkg/zipball/master"

bazaar

Type: String / List of String

Specifies which packages to install using a Bazaar URI.

Example:

bazaar: [ http://bazaar.launchpad.net/some_pkg/some_pkg/release-0.1 ]

git

Type: String / List of String

Specifies which packages to install using a Git URI.

Example:

git: [ https://some.git.repository/org/repo ]

github

Type: String / List of String

Specifies which packages to install from GitHub.

Example:

github: [ jkbr/httpie ]

gitlab

Type: String / List of String

Specifies which packages to install from GitLab.

Example:

gitlab: [ foo/bar ]

mercurial

Type: String / List of String

Specifies which packages to install using a Mercurial URI.

Example:

mercurial: [ https://hg.myproject.org/MyProject/#egg=MyProject ]

packages

Type: String / List of String

Specifies which packages to install from pip.

Example:

packages: [ numpy ]

pip

Type: String / List of String

Specifies which packages to install from pip.

Example:

pip: [ numpy ]

pypi

Type: String / List of String

Specifies which packages to install from PyPI using pip.

Example:

pypi: [ numpy ]

script

Type: String / List of String

Specifies a code block to run as part of the build.

Example:

script: |
  print("Running custom code")
  x = 1 + 1 == 2

svn

Type: String / List of String

Specifies which packages to install using an SVN URI.

Example:

svn: [ http://svn.repo/some_pkg/trunk/#egg=SomePackage ]

type

Type: String

Specifies the type of the requirement specification.

upgrade

Type: Boolean

Sets the --upgrade flag when set to true. Default: true.

url

Type: String / List of String

Specifies which packages to install using a generic URI.

Example:

url: [ https://github.com/some_org/some_pkg/zipball/master ]

user

Type: Boolean

Sets the --user flag when set to true. Default: false.

R Requirements

Specify which R packages should be available in order to run the component.

Example:

setup: 
  - type: r
    cran: anndata
    bioc: [ AnnotationDbi, SingleCellExperiment ]
    github: rcannood/SCORPIUS

bioc

Type: String / List of String

Specifies which packages to install from BioConductor.

Example:

bioc: [ AnnotationDbi ]

bioc_force_install

Type: Boolean

Forces packages specified in bioc to be reinstalled, even if they are already present in the container. Default: false.

Example:

bioc_force_install: false

bitbucket

Type: String / List of String

Specifies which packages to install from Bitbucket.

Example:

bitbucket: [ org/package ]

cran

Type: String / List of String

Specifies which packages to install from CRAN.

Example:

cran: [ anndata, ggplot2 ]

git

Type: String / List of String

Specifies which packages to install using a Git URI.

Example:

git: [ https://some.git.repository/org/repo ]

github

Type: String / List of String

Specifies which packages to install from GitHub.

Example:

github: [ rcannood/SCORPIUS ]

gitlab

Type: String / List of String

Specifies which packages to install from GitLab.

Example:

gitlab: [ org/package ]

packages

Type: String / List of String

Specifies which packages to install from CRAN.

Example:

packages: [ anndata, ggplot2 ]

script

Type: String / List of String

Specifies a code block to run as part of the build.

Example:

script: |
  cat("Running custom code
")
  install.packages("anndata")

svn

Type: String / List of String

Specifies which packages to install using an SVN URI.

Example:

svn: [ https://path.to.svn/group/repo ]

type

Type: String

Specifies the type of the requirement specification.

url

Type: String / List of String

Specifies which packages to install using a generic URI.

Example:

url: [ https://github.com/hadley/stringr/archive/HEAD.zip ]

Ruby Requirements

Specify which Ruby packages should be available in order to run the component.

Example:

setup:
  - type: ruby
    packages: [ rspec ]

packages

Type: String / List of String

Specifies which packages to install.

Example:

packages: [ rspec ]

type

Type: String

Specifies the type of the requirement specification.

Yum Requirements

Specify which yum packages should be available in order to run the component.

Example:

setup:
  - type: yum
    packages: [ sl ]

packages

Type: String / List of String

Specifies which packages to install.

Example:

packages: [ sl ]

type

Type: String

Specifies the type of the requirement specification.