Package Config
A Viash package configuration file. It’s name should be _viash.yaml
.
Example:
viash_version: 0.9.0
source: src
target: target
version: 1.0
organization: viash-io
links:
repository: 'https://github.com/viash-io/viash'
docker_registry: 'ghcr.io'
config_mods: |
.runners[.type == 'nextflow'].directives.tag := '$id' .runners[.type == 'nextflow'].config.script := 'includeConfig("configs/custom.config")'
config_mods
Type: String
/ List of String
Default: Empty
Which config mods to apply.
Example:
config_mods: ".name := 'foo'"
description
Type: String
Default: Empty
A description of the package. This is only used for documentation. Multiline descriptions are supported.
Example:
description: |
A (multiline) description of the purpose of this package and the components it contains.
info
Type: Json
Default: Empty
Structured information. Can be any shape: a string, vector, map or even nested map.
Example:
info:
twitter: wizzkid
classes: [ one, two, three ]
keywords
Type: List of String
Default: Empty
The keywords of the package.
Example:
keywords: [ bioinformatics, genomics ]
label
Type: String
Default: Empty
A clean version of the package name. This is only used for documentation.
Example:
label: "My package"
license
Type: String
Default: Empty
The license of the package.
When the license
field is left empty in a component’s configuration, the value of .version
in the package config will be copied during build.
Example:
license: MIT
links
Type: Links
Default: Empty
External links of the package.
Example:
links:
repository: "https://github.com/viash-io/viash"
docker_registry: "https://ghcr.io"
homepage: "https://viash.io"
documentation: "https://viash.io/reference/"
issue_tracker: "https://github.com/viash-io/viash/issues"
name
Type: String
Default: Empty
The name of the package.
Example:
name: my_package
organization
Type: String
Default: Empty
The organization of the package.
When the organization
field is left empty in a component’s configuration, the value of .version
in the package config will be copied during build.
Example:
organization: viash-io
references
Type: References
Default: Empty
References to external resources related to the package.
Example:
references:
doi: 10.1000/xx.123456.789
bibtex: |
@article{foo,
title={Foo},
author={Bar},
journal={Baz},
year={2024} }
repositories
Type: List of RepositoryWithName
Default: Empty
Common repository definitions for component dependencies.
Any repositories defined under .repositories
in the project config will be prepended to the list of repositories defined in a component’s .repositories
field.
Example:
repositories:
- name: openpipelines-bio
type: github
uri: openpipelines-bio/modules
tag: 0.3.0
source
Type: String
Default: Empty
Which source directory to use for the viash ns
commands.
Example:
source: src
summary
Type: String
Default: Empty
A one-sentence summary of the package. This is only used for documentation.
Example:
summary: "This package is used for XYZ."
target
Type: String
Default: Empty
Which target directory to use for viash ns build
.
Example:
target: target
version
Type: String
Default: Empty
The version of the package.
When the version
field is left empty in a component’s configuration, the value of .version
in the package config will be copied during build.
Example:
version: 0.1.0
viash_version
Type: String
Default: Empty
Which version of Viash to use.
Example:
viash_versions: 0.6.4