openjd-cli 0.1.7

Open Job Description CLI — validate, summarize, and run job templates
specificationVersion: "jobtemplate-2023-09"
name: Job
parameterDefinitions:
  - name: J
    type: STRING
jobEnvironments:
  - name: J1
    script:
      actions:
        onEnter:
          command: python
          args: ["-c", "print('J1 Enter')"]
        onExit:
          command: python
          args: ["-c", "print('J1 Exit')"]
  - name: J2
    script:
      actions:
        onEnter:
          command: python
          args: ["-c", "print('J2 Enter')"]
        onExit:
          command: python
          args: ["-c", "print('J2 Exit')"]
steps:
  - name: First
    parameterSpace:
      taskParameterDefinitions:
        - name: Foo
          type: INT
          range: "1"
        - name: Bar
          type: STRING
          range: ["Bar1", "Bar2"]
    stepEnvironments:
      - name: FirstS,
        script:
          actions:
            onEnter:
              command: python
              args: ["-c", "print('FirstS Enter')"]
            onExit:
              command: python
              args: ["-c", "print('FirstS Exit')"]
    script:
      actions:
        onRun:
          command: python
          args:
            - "-c"
            - "print('J={{Param.J}} Foo={{Task.Param.Foo}}. Bar={{Task.Param.Bar}}')"