Skip to content

Move 1.7.1 to 1.7.2dev #479

Move 1.7.1 to 1.7.2dev

Move 1.7.1 to 1.7.2dev #479

Workflow file for this run

name: test_modules
on:
push:
branches: "**"
pull_request_target:
types: [opened, reopened, synchronize]
branches: "**"
jobs:
security_check:
runs-on: ubuntu-latest
steps:
- name: Get User Permission
id: checkAccess
uses: actions-cool/check-user-permission@v2
with:
require: write
username: ${{ github.triggering_actor }}
- name: Check User Permission
if: steps.checkAccess.outputs.require-result == 'false'
run: |
echo "${{ github.triggering_actor }} does not have permissions on this repo."
echo "Current permission level is ${{ steps.checkAccess.outputs.user-permission }}"
echo "Job originally triggered by ${{ github.actor }}"
exit 1
test_map:
runs-on: ubuntu-latest
strategy:
max-parallel: 2
matrix:
map_args: ["-d 'ENA' -f relecov_tools/schema/ena_schema.json", "-d 'GISAID' -f relecov_tools/schema/gisaid_schema.json"]
steps:
- name: Set up Python 3.12
uses: actions/setup-python@v3
with:
python-version: '3.12'
- name: Checkout code
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Install package and dependencies
run: |
pip install -r requirements.txt
pip install .
- name: Run each module tests
run: |
relecov-tools map -j tests/data/map_validate/processed_metadata_lab_test.json -p relecov_tools/schema/relecov_schema.json ${{ matrix.map_args }} -o .
env:
OUTPUT_LOCATION: ${{ github.workspace }}/tests/
- name: Upload output file
uses: actions/upload-artifact@v4
with:
name: test-output
path: output.txt
test_all_modules:
runs-on: ubuntu-latest
strategy:
max-parallel: 4
matrix:
modules:
- "read-lab-metadata"
- "read-bioinfo-metadata"
- "validate"
- "build-schema"
env:
OUTPUT_LOCATION: ${{ github.workspace }}/tests/
steps:
- name: Set up Python 3.12
uses: actions/setup-python@v3
with:
python-version: '3.12'
- name: Checkout code
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Install package and dependencies
run: |
pip install -r requirements.txt
pip install .
- name: Run read-lab-metadata module
if: matrix.modules == 'read-lab-metadata'
run: |
relecov-tools read-lab-metadata \
-m tests/data/read_lab_metadata/metadata_lab_test.xlsx \
-s tests/data/read_lab_metadata/samples_data_test.json \
-o $OUTPUT_LOCATION
- name: Run read-bioinfo-metadata module
if: matrix.modules == 'read-bioinfo-metadata'
run: |
relecov-tools read-bioinfo-metadata \
--json_file tests/data/read_bioinfo_metadata/validated_samples.json \
--input_folder tests/data/read_bioinfo_metadata/analysis_folder/ \
--software_name viralrecon \
--soft_validation \
-o $OUTPUT_LOCATION
- name: Run validate module with upload files (default)
if: matrix.modules == 'validate'
run: |
python3 tests/test_validate.py \
-j tests/data/map_validate/processed_metadata_lab_test.json \
-m tests/data/map_validate/metadata_lab_test.xlsx \
--upload_files \
-o tests/data/map_validate/ \
-s relecov_tools/schema/relecov_schema.json \
-l tests/data/map_validate/previous_processes_log_summary.json
env:
TEST_USER: ${{ secrets.TEST_USER }}
TEST_PASSWORD: ${{ secrets.TEST_PASSWORD }}
TEST_PORT: ${{ secrets.TEST_PORT }}
GITHUB_WORKSPACE: ${{ github.workspace }}
- name: Run build-schema module
if: matrix.modules == 'build-schema'
run: |
relecov-tools build-schema \
-i tests/data/build_schema/metadata_mapping_file.xlsx \
--version $SCHEMA_DEFAULT_VERSION \
--project $PROJECT_NAME \
--non-interactive \
-o $OUTPUT_LOCATION
env:
SCHEMA_DEFAULT_VERSION: "3.0.0"
PROJECT_NAME: "relecov"
- name: Upload output file
uses: actions/upload-artifact@v4
with:
name: test-output
path: ${{ github.workspace }}/output.txt