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

Progress Report for Week 9 (July 28 – Aug 3)

1. What did I get done this week?

  1. Identified and Consolidated Common Patterns

    • Finalised shared handler logic (ExecutionHandler) and STAC I/O operations (CustomStacIO) across all service templates.
    • Ensured that all service templates import these components cleanly from the zoo-template-common repository.

  1. Created and documented zoo-template-common[1]

    • Wrote a comprehensive README.md to guide developers on integrating and customising shared utilities.
    • Explained the usage of ExecutionHandler , CustomStacIO , and how to extend them in service implementations.
  2. Enhanced zoo-runner-common Documentation [2]

    • Added a detailed README.md describing core modules like ZooConf , BaseRunner , and ZooStub .
    • Authored a dedicated tutorial: “How to Implement a New CWL Runner for ZOO-Project” , guiding new contributors through runner development.
  3. Cleaned and Standardised All Repositories

    • Removed redundant handler logic from all service templates and runner repositories.
    • Ensured a modular, reusable architecture across all services and runners using shared base classes.

2. Plan for Next Week ( Aug 4 - Aug 10):

  1. Set Up GitHub Actions for zoo-cwl-runners

    • Create a continuous integration workflow under .github/workflows/test.yml .
    • Configure the workflow to perform basic validation and structure tests across all CWL runners, including Calrissian, Argo Workflows, and WES.
  2. Write Minimal Unit Tests

    • Implement lightweight import and smoke tests for the following:
      • main_runner.py
      • Each individual runner (Calrissian, ArgoWF, WES)
      • Shared components from zoo-runner-common , including BaseRunner , ZooStub , etc.
  3. Add CI Badge to README.md

    • Include a GitHub Actions build/test status badge in the README.md of the zoo-cwl-runners repository to reflect CI status and build health.

3. Am I blocked on anything?

  • No, I am not currently blocked on anything.

4. Refrences:

[1] - GitHub - Aryankhare1225/zoo-template-common

[2] - GitHub - Aryankhare1225/zoo-runner-common: Common code for ZOO runners – includes ZooStub and BaseRunner

1 Like