You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Follow-up to #119 (Phase A: port CARLISLE's progress monitor +
enriched pipeline.status.json fields into aspen). Once that lands and the
ported implementation is stable, replace ASPEN's locally-duplicated logging/
state-marker bash functions with a shared library sourced from ccbr_tools,
so ASPEN and CARLISLE stop maintaining two independent copies of the same
code.
Tracked centrally in CCBR/Tools#230 (adds scripts/ccbr_pipeline_logging.sh
to ccbr_tools, installed onto PATH via module load ccbrpipeliner).
Proposed work (ASPEN side)
Once Add shared pipeline logging/state-marker bash library for ASPEN/CARLISLE Tools#230 publishes ccbr_pipeline_logging.sh, replace the
inline definitions of log_info/log_step/log_ok/log_warn/log_error/ log_next/log_divider, json_escape, print_versions, write_pipeline_state_marker, run_jobby_best_effort, and _progress_monitor in aspen with a sourcing shim:
mirroring the existing run_jobby_best_effort module-load-if-missing
fallback pattern already used in aspen.
Set ASPEN-specific env vars (PIPELINE_NAME=ASPEN, snakemake log path ${WORKDIR}/snakemake.log — note ASPEN keeps this at the workdir root, NOT
under a logs/ subfolder like CARLISLE) before sourcing.
Prerequisite: extend ASPEN's check_essential_files() to also verify ESSENTIAL_FOLDERS (currently only checks config.yaml/samples.tsv/ cluster.json/tools.yaml, unlike CARLISLE's version which checks both ESSENTIAL_FILES and ESSENTIAL_FOLDERS) — needed so syncscripts can
safely assume the scripts/ folder exists in WORKDIR.
Verify end-to-end on ASPEN's .test/ dataset: no behavioral/log-format
regressions vs. the pre-refactor wrapper.
Summary
Follow-up to #119 (Phase A: port CARLISLE's progress monitor +
enriched
pipeline.status.jsonfields intoaspen). Once that lands and theported implementation is stable, replace ASPEN's locally-duplicated logging/
state-marker bash functions with a shared library sourced from
ccbr_tools,so ASPEN and CARLISLE stop maintaining two independent copies of the same
code.
Tracked centrally in CCBR/Tools#230 (adds
scripts/ccbr_pipeline_logging.shto
ccbr_tools, installed ontoPATHviamodule load ccbrpipeliner).Proposed work (ASPEN side)
ccbr_pipeline_logging.sh, replace theinline definitions of
log_info/log_step/log_ok/log_warn/log_error/log_next/log_divider,json_escape,print_versions,write_pipeline_state_marker,run_jobby_best_effort, and_progress_monitorinaspenwith a sourcing shim:run_jobby_best_effortmodule-load-if-missingfallback pattern already used in
aspen.PIPELINE_NAME=ASPEN, snakemake log path${WORKDIR}/snakemake.log— note ASPEN keeps this at the workdir root, NOTunder a
logs/subfolder like CARLISLE) before sourcing.syncscripts/rescriptrunmode toaspen'smain()case statementusing the new shared helper from Add shared pipeline logging/state-marker bash library for ASPEN/CARLISLE Tools#230, to re-sync
workflow/scriptsinto an existing workdir without a fullreset.check_essential_files()to also verifyESSENTIAL_FOLDERS(currently only checksconfig.yaml/samples.tsv/cluster.json/tools.yaml, unlike CARLISLE's version which checks bothESSENTIAL_FILESandESSENTIAL_FOLDERS) — needed sosyncscriptscansafely assume the
scripts/folder exists in WORKDIR..test/dataset: no behavioral/log-formatregressions vs. the pre-refactor wrapper.
Related
carlisle)⚡ Generated using AI ⚡