From 2aadd74c0f8f8c0c13e6fb5030e65d1aad9470b5 Mon Sep 17 00:00:00 2001 From: Robrecht Cannoodt Date: Fri, 21 Jun 2024 15:09:20 +0200 Subject: [PATCH] Update operational code (#63) * update readme * switch ci to toolbox * update to viash 0.9.0-RC6 * edit keywords * fix version --- .github/workflows/test.yaml | 111 +----------------------------------- README.md | 30 +++++++--- README.qmd | 25 +++++--- _viash.yaml | 4 +- 4 files changed, 43 insertions(+), 127 deletions(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 6e1fc4b3..2591978f 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -3,114 +3,7 @@ name: Component Testing on: pull_request: push: - branches: [ '**' ] jobs: - run_ci_check_job: - runs-on: ubuntu-latest - outputs: - run_ci: ${{ steps.github_cli.outputs.check }} - steps: - - name: 'Check if branch has an existing pull request and the trigger was a push' - id: github_cli - run: | - pull_request=$(gh pr list -R ${{ github.repository }} -H ${{ github.ref_name }} --json url --state open --limit 1 | jq '.[0].url') - # If the branch has a PR and this run was triggered by a push event, do not run - if [[ "$pull_request" != "null" && "$GITHUB_REF_NAME" != "main" && "${{ github.event_name == 'push' }}" == "true" && "${{ !contains(github.event.head_commit.message, 'ci force') }}" == "true" ]]; then - echo "check=false" >> $GITHUB_OUTPUT - else - echo "check=true" >> $GITHUB_OUTPUT - fi - env: - GH_TOKEN: ${{ github.token }} - - # phase 1 - list: - needs: run_ci_check_job - runs-on: ubuntu-latest - if: ${{ needs.run_ci_check_job.outputs.run_ci == 'true' }} - - outputs: - matrix: ${{ steps.set_matrix.outputs.matrix }} - - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Get head git commit message - id: get_head_commit_message - run: echo "HEAD_COMMIT_MESSAGE=$(git show -s --format=%s ${{ github.event.pull_request.head.sha || github.sha }})" >> "$GITHUB_OUTPUT" - - - uses: viash-io/viash-actions/setup@v5 - - - name: Check if all config can be parsed if there is no unicode support - run: | - LANG=C viash ns list > /dev/null - - # see https://github.com/viash-io/viash/issues/654 - # and https://github.com/viash-io/viash-actions/pull/27 - # - name: Get changed files - # id: changed-files - # uses: tj-actions/changed-files@v42 - # with: - # separator: ";" - # diff_relative: true - # - id: ns_list - # uses: viash-io/viash-actions/ns-list@v5 - # with: - # platform: docker - # format: json - # query: ^(?!workflows) - # - id: ns_list_filtered - # uses: viash-io/viash-actions/project/detect-changed-components@v5 - # with: - # input_file: "${{ steps.ns_list.outputs.output_file }}" - # - id: set_matrix - # run: | - # echo "matrix=$(jq -c '[ .[] | - # { - # "name": (.functionality.namespace + "/" + .functionality.name), - # "config": .info.config, - # "dir": .info.config | capture("^(?.*\/)").dir - # } - # ]' ${{ contains(steps.get_head_commit_message.outputs.HEAD_COMMIT_MESSAGE, 'ci force') && steps.ns_list.outputs.output_file || steps.ns_list_filtered.outputs.output_file }} )" >> $GITHUB_OUTPUT - - - - id: set_matrix - run: | - viash ns list --format json > ns_list.json - echo "matrix=$(jq -c '[ .[] | - { - "name": (.namespace + "/" + .name), - "config": .build_info.config, - "dir": .build_info.config | capture("^(?.*\/)").dir - } - ]' ns_list.json )" >> $GITHUB_OUTPUT - - # phase 2 - viash_test: - needs: list - if: ${{ needs.list.outputs.matrix != '[]' && needs.list.outputs.matrix != '' }} - runs-on: ubuntu-latest - - strategy: - fail-fast: false - matrix: - component: ${{ fromJson(needs.list.outputs.matrix) }} - - steps: - # Remove unnecessary files to free up space. Otherwise, we get 'no space left on device.' - - uses: data-intuitive/reclaim-the-bytes@v2 - - - uses: actions/checkout@v4 - - - uses: viash-io/viash-actions/setup@v5 - - - name: Run test - timeout-minutes: 30 - run: | - viash test \ - "${{ matrix.component.config }}" \ - --cpus 2 \ - --memory "6gb" \ No newline at end of file + test: + uses: viash-hub/toolbox/.github/workflows/test.yaml@main \ No newline at end of file diff --git a/README.md b/README.md index ecf807ca..29ace00b 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,24 @@ -# Base repository for reusable Viash components -This repository is a collection of reproducible and reusable Viash -components. +# biobox + +[![ViashHub](https://img.shields.io/badge/ViashHub-biobox-7a4baa.png)](https://web.viash-hub.com/packages/biobox) +[![GitHub](https://img.shields.io/badge/GitHub-viash--hub%2Fbiobox-blue.png)](https://github.com/viash-hub/biobbox) +[![GitHub +License](https://img.shields.io/github/license/viash-hub/biobox.png)](https://github.com/viash-hub/biobbox/blob/main/LICENSE) +[![GitHub +Issues](https://img.shields.io/github/issues/viash-hub/biobox.png)](https://github.com/viash-hub/biobox/issues) +[![Viash +version](https://img.shields.io/badge/Viash-v0.9.0--RC6-blue)](https://viash.io) + +A collection of bioinformatics tools for working with sequence data. ## Objectives - **Reusability**: Facilitating the use of components across various projects and contexts. -- **Reproducibility**: Guaranteeing that bioinformatics analyses can be - reliably replicated. +- **Reproducibility**: Ensuring that components are reproducible and can + be easily shared. - **Best Practices**: Adhering to established standards in software development and bioinformatics. @@ -43,18 +52,21 @@ contribute a component to this repository. 12. Create test script 13. Create a `/var/software_versions.txt` file -See the [CONTRIBUTING](CONTRIBUTING.md) file for more details. +See the +[CONTRIBUTING](https://github.com/viash-hub/biobbox/blob/main/CONTRIBUTING.md) +file for more details. ## Support and Community For support, questions, or to join our community: - **Issues**: Submit questions or issues via the [GitHub issue - tracker](https://github.com/viash-hub/base/issues). + tracker](https://github.com/viash-hub/biobox/issues). - **Discussions**: Join our discussions via [GitHub - Discussions](https://github.com/viash-hub/base/discussions). + Discussions](https://github.com/viash-hub/biobbox/discussions). ## License This repository is licensed under an MIT license. See the -[LICENSE](LICENSE) file for details. +[LICENSE](https://github.com/viash-hub/biobbox/blob/main/LICENSE) file +for details. diff --git a/README.qmd b/README.qmd index 656cdac7..33e9461b 100644 --- a/README.qmd +++ b/README.qmd @@ -1,14 +1,25 @@ --- -title: Base repository for reusable Viash components format: gfm --- +```{r setup, include=FALSE} +project <- yaml::read_yaml("_viash.yaml") +license <- paste0(project$links$repository, "/blob/main/LICENSE") +contributing <- paste0(project$links$repository, "/blob/main/CONTRIBUTING.md") +``` +# `r project$name` + +[![ViashHub](https://img.shields.io/badge/ViashHub-`r project$name`-7a4baa)](https://web.viash-hub.com/packages/`r project$name`) +[![GitHub](https://img.shields.io/badge/GitHub-viash--hub%2F`r project$name`-blue)](`r project$links$repository`) +[![GitHub License](https://img.shields.io/github/license/viash-hub/`r project$name`)](`r license`) +[![GitHub Issues](https://img.shields.io/github/issues/viash-hub/`r project$name`)](`r project$links$issue_tracker`) +[![Viash version](https://img.shields.io/badge/Viash-v`r gsub("-", "--", project$viash_version)`-blue)](https://viash.io) -This repository is a collection of reproducible and reusable Viash components. +`r project$description` ## Objectives - **Reusability**: Facilitating the use of components across various projects and contexts. -- **Reproducibility**: Guaranteeing that bioinformatics analyses can be reliably replicated. +- **Reproducibility**: Ensuring that components are reproducible and can be easily shared. - **Best Practices**: Adhering to established standards in software development and bioinformatics. ## Contributing @@ -37,15 +48,15 @@ knitr::asis_output( ) ``` -See the [CONTRIBUTING](CONTRIBUTING.md) file for more details. +See the [CONTRIBUTING](`r contributing`) file for more details. ## Support and Community For support, questions, or to join our community: -- **Issues**: Submit questions or issues via the [GitHub issue tracker](https://github.com/viash-hub/base/issues). -- **Discussions**: Join our discussions via [GitHub Discussions](https://github.com/viash-hub/base/discussions). +- **Issues**: Submit questions or issues via the [GitHub issue tracker](`r project$links$issue_tracker`). +- **Discussions**: Join our discussions via [GitHub Discussions](`r project$links$repository`/discussions). ## License -This repository is licensed under an MIT license. See the [LICENSE](LICENSE) file for details. +This repository is licensed under an MIT license. See the [LICENSE](`r license`) file for details. diff --git a/_viash.yaml b/_viash.yaml index 5b6cf3f7..12b81586 100644 --- a/_viash.yaml +++ b/_viash.yaml @@ -2,12 +2,12 @@ name: biobox description: | A collection of bioinformatics tools for working with sequence data. license: MIT -keywords: [bioinformatics, sequence, alignment, variant calling, dna, rna] +keywords: [bioinformatics, modules, sequencing] links: issue_tracker: https://github.com/viash-hub/biobox/issues repository: https://github.com/viash-hub/biobbox -viash_version: 0.9.0-RC3 +viash_version: 0.9.0-RC6 config_mods: | .requirements.commands := ['ps']