Skip to main content

A workflow depedency graph compiler and pre-automation handler

Project description

BioBlueprint

BioBlueprint is a python library designed to enable workflow language-interchangeable dependency graph compilation and development automation. It operates by compiling workflows, their dependencies, Git diff between branches, and using the modified files to trace testing paths within the dependency graph.


Install

python3 -m pip install bioblueprint


Usage

Please see the help menu for a comprehensive list of input options.

bioblueprint -i <REPO_BASE_DIR> -db <DEVELOPMENT_BRANCH>

DEVELOPMENT: -db is the dev branch; -sb is main (default)

VALIDATION: -db is main; -sb is the previous release tag


Outputs

An output directory bioblueprint_YYYYmmdd/ will be generated containing the following files:

<REPO>.pr.md

A populated pull request template with I/O modifications, WF modifications, and testing paths. If -pr is specified, the PR will be downloaded and relevant fields populated with I/O and testing information - existing testing data will be retained and unmodified if formatted as a checklist with exact workflow name matches that are the first entry following the markdown checkbox (links are permitted). This function is tailored for accounted repositories:

<REPO>_inputs.tsv & <REPO>_outputs.tsv

Updated inputs/outputs tables for Public Health Bioinformatics

<REPO>.io.json

A JSON formatted to convey inputs and outputs, including defaults and types, for workflows:

{
  <WF_NAME_1>: {
    "path": <PATH_RELATIVE_TO_REPO>,
    "inputs": {
        <INPUT_1>:
        {
            "type": <WF_LANGUAGE_TYPE>,
            "default": <DEFAULT_VAL>
        },
        ..
    },
    "outputs": {
        <OUTPUT_1>: <WF_LANGUAGE_TYPE>,
        ..
    }
  },
  ..
}

<REPO>.testing.json

A JSON formatted to convey affected workflows and the causal dependencies:

{
  <WF_NAME_1>: {
    "path": <PATH_RELATIVE_TO_REPO>,
    "modifications": [
        <TASK/WF_1>,
        ..
    ]
  },
  ..
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bioblueprint-1.0.1.tar.gz (56.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bioblueprint-1.0.1-py3-none-any.whl (45.2 kB view details)

Uploaded Python 3

File details

Details for the file bioblueprint-1.0.1.tar.gz.

File metadata

  • Download URL: bioblueprint-1.0.1.tar.gz
  • Upload date:
  • Size: 56.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for bioblueprint-1.0.1.tar.gz
Algorithm Hash digest
SHA256 5166fde88f7371fa916f74439cdb213bf88969b1786106b3a6af1aede8241eac
MD5 9e8acb872ca25daf57188d1b5d0e7887
BLAKE2b-256 7ba826d82ab2e633d0ce43e9ba753c5196d35efb0d0c6676d136c5b450616439

See more details on using hashes here.

File details

Details for the file bioblueprint-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: bioblueprint-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 45.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for bioblueprint-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 43a8fa1e51f7440141448f37afbccef238078d3b32d91e0b8f7013db58893d05
MD5 fe7e6e3cb1a14544b09ed69fc697fa61
BLAKE2b-256 be6e298af93e932f812068ca69806da53b3dae09683bbf226dd013080144c7e2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page