- Added short options for
projarksubcommands (#45, @kopardev):- common:
-f(--folder),-p(--projectnumber),-d(--datatype) - deposit:
-t(--tarname),-s(--split-size-gb),-k(--no-cleanup) - retrieve:
-n(--filenames),-u(--unsplit/--unspilt)
- common:
- Updated
projectnumbernormalization (#44, @kopardev):- remove repeated leading
ccbr/CCBRprefixes (with optional_/-) - accept any non-empty remainder (for example
CCBR-abcd->abcd)
- remove repeated leading
- Added absolute-path normalization for
--folderhandling inprojark(#46 @kopardev):- relative paths are resolved to absolute paths before use
- trailing slash/non-trailing slash inputs are both supported
- Hardened tar command construction with shell-safe quoting for paths containing spaces/special characters.
- Added ISO 8601 timestamps to
projarklog lines. (#47, @kopardev) - Added completion/failure email notifications for
projark(#48, @kopardev):- recipient:
$USER@nih.gov - sender:
NCICCBR@mail.nih.gov
- recipient:
- Added Open OnDemand graphical session detection in runtime checks (future-facing;
projarkstill runs only on Helix today). - Updated README/MkDocs docs with:
- new short-option usage examples
- current
projectnumberbehavior - path normalization behavior
- timestamped logging and notification behavior
- Open OnDemand availability disclaimer (Biowulf-only today; not directly available on Helix)
- Replaced legacy bash
projarkworkflow with a Python-nativeprojarkCLI (deposit,retrieve) integrated into theparkitpackage. - Archived old bash implementation at
legacy/projark_legacy.sh;src/parkit/scripts/projarknow points to the Python CLI. - Added
projark depositend-to-end archival flow with:checkapisyncpreflight gate- Helix host enforcement
tmux/screensession enforcement- project/datatype normalization
- scratch staging, tar/filelist generation, md5 generation
- transfer via
dm_register_directory - cleanup enabled by default (
--no-cleanupto retain artifacts)
- Added configurable tar split threshold/chunk size for deposit:
--split-size-gb(default500GB). - Added human-readable tar size reporting (MB/GB/TB + bytes) in
projarkoutput. - Added
projark retrieveenhancements:- selected-file retrieval with
--filenames - full-collection retrieval when
--filenamesis omitted (dm_download_collection) --unsplit/--unspiltmerge support for multiple split tar groups
- selected-file retrieval with
- Improved
projarkCLI output with stepwise status messages and consistent step numbering. - Added subcommand version support:
projark --versionprojark deposit --versionprojark retrieve --version- all return the same package-aware message
- Suppressed bootstrap Java/environment warnings for version-only invocations.
- Updated
checkapisynclogic to treat merge-history-only divergence as in-sync when local/upstream trees match. - Reworked docs to versioned MkDocs structure with
projark-first workflows and updated operational guidance. - Updated docs/README guidance:
- use
mamba activate ...directly - initialize mamba only if not already in
PATH - reference HPC_DME setup guide
- document minimum Java requirement:
HPC_DM_JAVA_VERSION >= 23 - standardize guidance to run all operations in
tmux/screen
- use
- Documentation: Improved code example readability in README. (#34, @kelly-sovacool)
- Feature: Automatic object name resolution (fix #30)
- Added logic to detect and resolve naming conflicts by appending _002, _003, etc. to object names during deposit.
- Metadata .json and .filelist files are updated accordingly to reflect new names.
- Enhancement: Java version management (fix #31)
- Introduced support for setting HPC_DM_JAVA_VERSION dynamically with a default fallback to 23.0.2 on Biowulf/Helix
- Fixed ccr partition issue (fix #32)
- fix scontrol issue on HELIX
- fix loading
parkit_devconda env (#26)
- adding
collectiontypetocreatemetadatacommand - excluding
*.tar.filelistfrom--cleanupas it may need be put alongside README - create readme with
--makereadmeargument projarksubcommand for easy CCBR project backup
- package renamed from
parkit_pkgtoparkit - reorganized package by recreating
srcfolder
- converted to python package (fix #4)
parkit_tarball2hpcdmeadded to start with tarballsupdate_collection_metadata.pyadded to add more information from AMP dump
parkitadded... built using pythonparkit_e2eadded ... usesparkitand "slurm"