1.4.2 (Release Candidate 2)
Pre-release
Pre-release
Docker Images
coreoasis/model_worker:1.4.2-rc2
coreoasis/api_server:1.4.2-rc2
Components
oasislmf 1.4.7rc1
ktools 3.2.1
Changelog
- Hotfix (rc2) - Remove previous output results on run error
- Hotfix (rc2) - Fix Log and traceback storage
- #222 - Update to model settings schema
- #275 - Fixed delete operations with multipart as content type in swagger
- #274 - Fixed reverting behaviour for complex models (custom gulcalc)
- #281 - Added Task Queued state
- #268 - Store run trace on success
- #287 - Store ktools log directory in an Analyses
- #283 - Fixed Worker not releasing memory from Python process
Feature Notes
Accessing Ktools logs
On an analyses run (pass or fail) if a ktools log
directory is created the API will tar up <run-dir>/log
and store as output under /v1/analyses/{id}/run_log_file/
(GET, DELETE)
Worker Job Status Update
Added two extra analyses.status
states INPUTS_GENERATION_QUEUED and RUN_QUEUED
Analyses states overview:
- NEW - Newly created analyses Object, portfolio successfully linked to a model.
- INPUTS_GENERATION_QUEUED - Generate input files job sent to Celery queue.
- INPUTS_GENERATION_STARTED - Generate input Job accepted by a Celery worker.
- INPUTS_GENERATION_CANCELLED - Cancel signal sent, halting input files generation.
- INPUTS_GENERATION_ERROR - Error while processing Input files, see
/v1/analyses/{id}/input_generation_traceback_file/
for - READY - Input files generated, analyses ready for execution.
- RUN_QUEUED - Analyses run sent Celery queue.
- RUN_STARTED - Analyses run accepted by a Celery worker.
- RUN_CANCELLED - Cancel signal sent, halting an Analysis's execution
- RUN_ERROR - An error occurred during execution see
/v1/analyses/{id}/run_traceback_file/
for details - RUN_COMPLETED - Run complete and results available at
/v1/analyses/{id}/output_file/
Explicitly setting a custom gulcalc
From Oasislmf==1.4.7rc1
and onwards, custom models can explicitly set the drop-in component name.
The if the script/binary is not found on the current $PATH the MDK will raise an error.
CLI Example
$ oasislmf model run --model-custom-gulcalc MY_GULCALC
...
COMPLETED: oasislmf.model_execution.bin.csv_to_bin in 0.02s
STARTED: oasislmf.model_execution.bin.csv_to_bin
COMPLETED: oasislmf.model_execution.bin.csv_to_bin in 0.03s
STARTED: oasislmf.model_execution.bin.prepare_run_inputs
COMPLETED: oasislmf.model_execution.bin.prepare_run_inputs in 0.0s
STARTED: oasislmf.model_execution.runner.run
Run error: Custom Gulcalc command "MY_GULCALC" explicitly set but not found in path.
For worker deployment add the following to an oasislmf.json
file
{
...
"model_custom_gulcalc": "<MY_GULCALC>"
...
}