GSoC 2025: Week 4 Report: Migrating and updating the existing CWL runners

Progress Report for Week 4 (June 23 โ€“ June 29)

1. What did I get done this week?

  • Calrissian Unit Test Added: :

    • Created test_main_runner_calrissian.py to test Calrissian runner through main_runner.py.
    • Used dummy CWL and config JSONs to simulate execution.
    • Encountered and logged $graph KeyError and missing assets/rules.yaml, which are known in the current version.
    • Despite exceptions, test passed and confirmed runner initialization.
  • Argowf Runner Debugged and Validated::

    • Updated runner.py to correctly import and instantiate Execution class.
    • Executed end-to-end simulation with dummy inputs via main_runner.py.
    • Faced missing environment variable error (ARGO_WF_TOKEN), which is expected in real deployments.
    • Confirmed successful runner invocation and initial stages of execution lifecycle.

2. Plan for Next Week (June 30 โ€“ July 6):

  • Implement full unit test support for wes_runner by invoking it via main_runner.py using dummy CWL and configuration files.
  • Create reusable DummyHandler and mock configurations to simulate WES execution logic without external dependencies.
  • Refactor common utilities (zoostub.py, ZooConf, ZooInputs, etc.) into a centralized zoo-runner-common module for cleaner imports and testability.
  • Update all runner imports to use zoo-runner-common, reducing code duplication and improving CI compatibility for future tests.

3. Am I blocked on anything?

  • No, I am not currently blocked on anything.

Links to Work Done:

1 Like