diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e82264fd2be577525197db9bb31c7b4a715d350c..b73a4ece3ea1238a17b15903bff916a81241f459 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -114,6 +114,11 @@ losoto_clip: allow_failure: true script: - cwl-runner --no-container steps/LoSoTo.Clip.cwl test_jobs/losoto_clip.json +losoto_flagextend: + stage: test_steps + allow_failure: true + script: + - cwl-runner --no-container steps/LoSoTo.Flagextend.cwl test_jobs/losoto_flagextend.json losoto_faraday: stage: test_steps diff --git a/steps/LoSoTo.Flagextend.cwl b/steps/LoSoTo.Flagextend.cwl new file mode 100644 index 0000000000000000000000000000000000000000..330b2fb9b127c8f8e745d259e50bfbbed312e580 --- /dev/null +++ b/steps/LoSoTo.Flagextend.cwl @@ -0,0 +1,71 @@ +#!/usr/bin/env cwl-runner + +class: CommandLineTool +cwlVersion: v1.0 +id: losoto_flagextend + +$namespaces: + lofar: https://git.astron.nl/eosc/ontologies/raw/master/schema/lofar.owl +doc: | + This operation for LoSoTo implement a extend flag procedure. + It can work in multi dimensional space and for each datum check if the + surrounding data are flagged to a certain %, then flag also that datum. + The size of the surrounding footprint can be tuned + +requirements: + InlineJavascriptRequirement: + expressionLib: + - { $include: utils.js} + InitialWorkDirRequirement: + listing: + - entryname: 'parset.config' + entry: $(get_losoto_config('FLAGEXTEND').join('\n')) + + - entryname: $(inputs.input_h5parm.basename) + entry: $(inputs.input_h5parm) + writable: true + +baseCommand: "losoto" + +arguments: + - $(inputs.input_h5parm.basename) + - parset.config + +hints: + DockerRequirement: + dockerPull: lofareosc/lofar-pipeline-ci:latest + +inputs: + - id: input_h5parm + type: File + format: lofar:#H5Parm + - id: soltab + type: string + doc: "Solution table" + - id: axesToExt + type: string[] + doc: Axes used to find close flags. + - id: size + type: int[] + doc: | + Size of the window (diameter), per axis. If 0 is given then the entire + length of the axis is assumed. + Must be a vector of same length of Axes. + - id: percent + type: float? + doc: Percent of flagged data around the point to flag it, by default 50. + - id: maxCycles + type: int? + doc: Number of independent cycles of flag expansion, by default 3. + - id: ncpu + type: int? + doc: Number of CPU used, by default all available. + +outputs: + - id: output_h5parm + type: File + format: lofar:#H5Parm + outputBinding: + glob: $(inputs.input_h5parm.basename) +$schema: + - https://git.astron.nl/eosc/ontologies/raw/master/schema/lofar.owl diff --git a/test_jobs/losoto_flagextend.json b/test_jobs/losoto_flagextend.json new file mode 100644 index 0000000000000000000000000000000000000000..a90d48b5528714458cda894ecca0cc9bebfe9f04 --- /dev/null +++ b/test_jobs/losoto_flagextend.json @@ -0,0 +1,6 @@ +{ + "input_h5parm": {"class": "File", "path": "/data/example.h5", "format": "lofar:#H5Parm"}, + "soltab": "sol000/phase000", + "axesToExt": ["time"], + "size": [0] +}