Only apply pyrodigal meta mode when genome < 20kb and prevent long runs of N in predicted genes #1272
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: | |
| - master | |
| paths: | |
| # if any of this files or directory changed, trigger the CI | |
| # The only case where it is not triggerd is when docs/ is modified | |
| - 'tests/**' | |
| - 'testingDataset/**' | |
| - '.github/**' | |
| - 'ppanggolin/**' | |
| - 'MANIFEST.in' | |
| - 'VERSION' | |
| - 'ppanggolin_env.yaml' | |
| - 'pyproject.toml' | |
| - 'setup.py' | |
| pull_request: | |
| branches: | |
| - '*' | |
| paths: | |
| # if any of this files or directory changed, trigger the CI | |
| # The only case where it is not triggerd is when docs/ is modified | |
| - 'tests/**' | |
| - 'testingDataset/**' | |
| - '.github/**' | |
| - 'ppanggolin/**' | |
| - 'MANIFEST.in' | |
| - 'VERSION' | |
| - 'ppanggolin_env.yaml' | |
| - 'pyproject.toml' | |
| - 'setup.py' | |
| # Allows you to run this workflow manually from the Actions tab | |
| workflow_dispatch: | |
| concurrency: | |
| group: ci-${{ github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| NUM_CPUS: 1 | |
| # A workflow run is made up of one or more jobs that can run sequentially or in parallel | |
| jobs: | |
| test: | |
| name: test PPanGGOLiN on ${{ matrix.os }} with python ${{ matrix.python-version }} | |
| # The type of runner that the job will run on | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: ['ubuntu-latest', 'macos-latest'] | |
| python-version: ['3.9', '3.12'] | |
| steps: | |
| # Get number of cpu available on the current runner | |
| - name: Get core number on linux | |
| if: matrix.os == 'ubuntu-latest' | |
| run: | | |
| nb_cpu_linux=`nproc` | |
| echo "Number of cores avalaible on the current linux runner $nb_cpu_linux" | |
| echo "NUM_CPUS=$nb_cpu_linux" >> "$GITHUB_ENV" | |
| - name: Get core number on macos | |
| if: matrix.os == 'macos-latest' | |
| run: | | |
| nb_cpu_macos=`sysctl -n hw.ncpu` | |
| echo "Number of cores avalaible on the current macos runner $nb_cpu_macos" | |
| echo "NUM_CPUS=$nb_cpu_macos" >> "$GITHUB_ENV" | |
| # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | |
| - uses: actions/checkout@v4 | |
| # Install requirements with miniconda | |
| - uses: conda-incubator/setup-miniconda@v3 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| channels: conda-forge,bioconda,defaults | |
| environment-file: ppanggolin_env.yaml | |
| activate-environment: ppanggolin | |
| - name: Install ppanggolin | |
| shell: bash -l {0} | |
| run: | | |
| pip install .[test] | |
| mmseqs version | |
| # Check that it is installed and displays help without error | |
| - name: Check that PPanGGOLiN is installed | |
| shell: bash -l {0} | |
| run: | | |
| ppanggolin --version | |
| ppanggolin --help | |
| # Check that unit tests are all passing | |
| - name: Unit and functional tests | |
| shell: bash -l {0} | |
| run: pytest --full --cov=ppanggolin --cov-report=term --cpu $NUM_CPUS | |
| - name: Archive diff files | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: comparison-results_${{ matrix.os }}_python${{ matrix.python-version }} | |
| path: testingDataset/info_to_test/* | |