From a5c9ad2acc69d8b7f32a02e8cca33e7a265b7fbc Mon Sep 17 00:00:00 2001 From: MariamKhalatova Date: Wed, 3 Jul 2024 01:39:49 +0400 Subject: [PATCH 1/5] feat(manifests): replaced input manifests with output manifests --- .../bugs/aggregation-error-wrong-metric.yml | 178 ----- .../bugs/azure-importer-ignoring-defaults.yml | 64 -- .../azure-importer-incorrect-calculation.yml | 59 -- manifests/bugs/initialize-error-no-config.yml | 26 - manifests/bugs/initialize-error-no-path.yml | 32 - .../bugs/input-error-missing-duration.yml | 25 - ...-observations-failure-duration-is-zero.yml | 34 - .../bugs/pipeline-error-naming-mismatch.yml | 32 - .../pipeline-error-uninitialized-plugin.yml | 33 - manifests/bugs/pipeline-ordering-error.yml | 91 --- .../sci-embodied-missing-resources-total.yml | 23 - .../failure-invalid-config-input-param.yml | 0 .../failure-output-param-is-null.yaml | 0 .../builtins}/coefficient/success.yml | 0 .../csv-lookup}/failure-missing-column.yml | 0 .../csv-lookup}/failure-missing-output.yml | 0 .../builtins/csv-lookup/success-renaming.yaml | 83 +++ .../examples/builtins/csv-lookup/success.yaml | 95 +++ .../divide/failure-denominator-equal-zero.yml | 17 +- .../failure-invalid-config-denominator.yml | 17 +- .../divide/failure-missing-numerator.yml | 17 +- .../builtins}/divide/success.yml | 19 +- .../groupby/failure-invalid-config-group.yml | 0 .../failure-missing-cloud-instance-type.yml | 0 .../builtins}/groupby/success.yml | 2 +- .../builtins}/interpolation/interpolation.yml | 0 .../failure-invalid-config-cpu-range.yml | 0 ...ilure-invalid-memory-utilization-range.yml | 0 .../failure-missing-timestamp-from-param.yml | 0 .../builtins}/mock-observations/success.yml | 2 +- .../failure-input-parameter-is-missing.yml | 0 .../multiply/success-with-multiple-inputs.yml | 0 .../builtins}/multiply/success.yml | 0 .../regex/failure-missing-input-param.yml | 0 .../regex/failure-not-matching-with-regex.yml | 0 .../builtins}/regex/success.yml | 0 ...failure-invalid-default-emission-value.yml | 0 .../failure-missing-expected-lifespan.yml | 0 .../builtins}/sci-embodied/success.yml | 0 .../sci/failure-invalid-config-value.yml | 0 .../sci/failure-missing-input-param.yml | 8 +- .../builtins}/sci/success.yml | 3 + .../shell/failure-invalid-command.yml | 0 .../builtins}/shell/success.yml | 0 .../sum/failure-missing-input-param.yml | 0 .../sum/failure-missing-output-param.yml | 0 .../builtins}/sum/success.yml | 2 +- .../failure-config-start-later-end.yml | 0 .../failure-missing-global-config.yml | 0 .../builtins}/time-sync/success.yml | 0 manifests/examples/copy.yaml | 20 - manifests/examples/generics.yml | 106 --- .../pipelines/basic.yml} | 10 +- manifests/examples/pipelines/generics.yml | 45 ++ .../{ => pipelines}/instance-metadata.yml | 8 +- .../mock-cpu-util-to-carbon.yml | 10 +- .../examples/{ => pipelines}/nesting.yml | 117 +--- .../{ => pipelines}/pipeline-teads-sci.yml | 72 +- .../pipeline-with-aggregate.yml | 90 +-- .../{ => pipelines}/pipeline-with-mocks.yml | 87 +-- manifests/examples/{ => pipelines}/sci.yml | 0 .../examples/{ => pipelines}/teads-curve.yml | 0 manifests/examples/region-metadata.yml | 26 - manifests/examples/tdp-finder.yml | 23 - manifests/examples/zeros.yaml | 130 ---- .../aggregate-failure-invalid-metrics.yml | 49 -- ...egate-failure-missing-metric-in-inputs.yml | 49 -- manifests/features/aggregate-horizontal.yml | 50 -- manifests/features/aggregate-vertical.yml | 50 -- manifests/features/aggregate.yml | 50 -- .../integrations/cloud-metadata-divide.yml | 37 - .../failure-invalid-instance-type.yaml | 33 - .../failure-invalid-provider.yaml | 33 - .../failure-missing-queried-input.yml | 33 - .../instance-metadata/success.yml | 33 - .../mock-obs-group-by-cloud-meta.yml | 57 -- manifests/integrations/mock-obs-groupby.yml | 39 -- manifests/integrations/mock-obs-time-sync.yml | 110 --- .../bugs/aggregation-error-wrong-metric.yaml | 243 +++++++ .../bugs/initialize-error-no-config.yaml | 81 +++ .../bugs/initialize-error-no-path.yaml | 94 +++ .../bugs/initialize-error-no-plugins.yaml | 77 +++ .../bugs/input-error-missing-duration.yaml | 87 +++ ...observations-failure-duration-is-zero.yaml | 84 +++ .../bugs/pipeline-error-naming-mismatch.yaml | 94 +++ .../pipeline-error-uninitialized-plugin.yaml | 95 +++ .../outputs/bugs/pipeline-ordering-error.yaml | 158 +++++ .../sci-embodied-missing-resources-total.yaml | 76 ++ .../aggregate-failure-invalid-metrics.yaml | 104 +++ ...gate-failure-missing-metric-in-inputs.yaml | 103 +++ .../features/aggregate-horizontal.yaml | 131 ++++ .../outputs/features/aggregate-vertical.yaml | 154 +++++ manifests/outputs/features/aggregate.yaml | 158 +++++ .../pipelines/cloud-metadata-divide.yaml | 98 +++ .../mock-obs-group-by-cloud-meta.yaml | 648 ++++++++++++++++++ .../outputs/pipelines/mock-obs-groupby.yaml | 181 +++++ .../outputs/pipelines/mock-obs-time-sync.yaml | 353 ++++++++++ .../failure-invalid-config-input-param.yaml | 76 ++ .../failure-output-param-is-null.yaml | 76 ++ .../outputs/plugins/coefficient/success.yaml | 78 +++ .../failure-invalid-instance-type.yaml | 0 .../failure-invalid-vendor.yaml | 0 .../failure-missing-cloud-vendor.yaml | 80 +++ .../csv-lookup/cloud-metadata/success.yaml | 85 +++ .../failure-missing-column.yaml | 79 +++ .../failure-missing-output.yaml | 78 +++ .../region-metadata/success-renaming.yaml | 83 +++ .../csv-lookup/region-metadata/success.yaml | 95 +++ .../failure-missing-input-param.yaml | 77 +++ ...ailure-unsupported-physical-processor.yaml | 78 +++ .../csv-lookup/tdp-finder/success.yaml | 79 +++ .../failure-invalid-config-denominator.yaml | 76 ++ .../divide/failure-missing-numerator.yaml | 80 +++ .../success-denominator-equal-zero.yaml | 98 +++ manifests/outputs/plugins/divide/success.yaml | 98 +++ .../outputs/plugins/exponent/success.yaml | 80 +++ .../groupby/failure-invalid-config-group.yaml | 99 +++ .../failure-missing-cloud-instance-type.yaml | 98 +++ .../outputs/plugins/groupby/success.yaml | 104 +++ .../plugins/interpolation/interpolation.yaml | 86 +++ .../plugins/interpolation/success.yaml | 86 +++ .../failure-invalid-config-cpu-range.yaml | 89 +++ ...lure-invalid-memory-utilization-range.yaml | 87 +++ .../failure-missing-timestamp-from-param.yaml | 86 +++ .../plugins/mock-observations/success.yaml | 223 ++++++ .../failure-input-parameter-is-missing.yaml | 78 +++ .../success-with-multiple-inputs.yaml | 99 +++ .../outputs/plugins/multiply/success.yaml | 81 +++ .../regex/failure-missing-input-param.yaml | 78 +++ .../failure-not-matching-with-regex.yaml | 79 +++ manifests/outputs/plugins/regex/success.yaml | 84 +++ ...ailure-invalid-default-emission-value.yaml | 78 +++ .../failure-missing-expected-lifespan.yaml | 74 ++ .../outputs/plugins/sci-embodied/success.yaml | 81 +++ .../sci/failure-invalid-config-value.yaml | 75 ++ .../sci/failure-missing-input-param.yaml | 75 ++ .../outputs/plugins/sci/success.yml.yaml | 83 +++ .../shell/failure-invalid-command.yaml | 73 ++ manifests/outputs/plugins/shell/success.yaml | 71 ++ .../outputs/plugins/subtract/success.yaml | 81 +++ .../sum/failure-missing-input-param.yaml | 78 +++ .../sum/failure-missing-output-param.yaml | 81 +++ manifests/outputs/plugins/sum/success.yaml | 81 +++ .../failure-config-start-later-end.yaml | 85 +++ .../failure-missing-global-config.yaml | 81 +++ .../outputs/plugins/time-sync/success.yaml | 122 ++++ .../failure-missing-cloud-vendor.yml | 27 - .../csv-lookup/cloud-metadata/success.yml | 27 - .../region-metadata/success-renaming.yml | 26 - .../csv-lookup/region-metadata/success.yml | 26 - .../failure-missing-input-param.yml | 23 - ...failure-unsupported-physical-processor.yml | 24 - .../plugins/csv-lookup/tdp-finder/success.yml | 24 - manifests/plugins/exponent/success.yml | 26 - manifests/plugins/interpolation/success.yml | 24 - manifests/plugins/subtract/success.yml | 25 - 156 files changed, 7475 insertions(+), 2097 deletions(-) delete mode 100644 manifests/bugs/aggregation-error-wrong-metric.yml delete mode 100644 manifests/bugs/azure-importer-ignoring-defaults.yml delete mode 100644 manifests/bugs/azure-importer-incorrect-calculation.yml delete mode 100644 manifests/bugs/initialize-error-no-config.yml delete mode 100644 manifests/bugs/initialize-error-no-path.yml delete mode 100644 manifests/bugs/input-error-missing-duration.yml delete mode 100644 manifests/bugs/mock-observations-failure-duration-is-zero.yml delete mode 100644 manifests/bugs/pipeline-error-naming-mismatch.yml delete mode 100644 manifests/bugs/pipeline-error-uninitialized-plugin.yml delete mode 100644 manifests/bugs/pipeline-ordering-error.yml delete mode 100644 manifests/bugs/sci-embodied-missing-resources-total.yml rename manifests/{plugins => examples/builtins}/coefficient/failure-invalid-config-input-param.yml (100%) rename manifests/{plugins => examples/builtins}/coefficient/failure-output-param-is-null.yaml (100%) rename manifests/{plugins => examples/builtins}/coefficient/success.yml (100%) rename manifests/{plugins/csv-lookup/region-metadata => examples/builtins/csv-lookup}/failure-missing-column.yml (100%) rename manifests/{plugins/csv-lookup/region-metadata => examples/builtins/csv-lookup}/failure-missing-output.yml (100%) create mode 100644 manifests/examples/builtins/csv-lookup/success-renaming.yaml create mode 100644 manifests/examples/builtins/csv-lookup/success.yaml rename manifests/{plugins => examples/builtins}/divide/failure-denominator-equal-zero.yml (69%) rename manifests/{plugins => examples/builtins}/divide/failure-invalid-config-denominator.yml (69%) rename manifests/{plugins => examples/builtins}/divide/failure-missing-numerator.yml (68%) rename manifests/{plugins => examples/builtins}/divide/success.yml (66%) rename manifests/{plugins => examples/builtins}/groupby/failure-invalid-config-group.yml (100%) rename manifests/{plugins => examples/builtins}/groupby/failure-missing-cloud-instance-type.yml (100%) rename manifests/{plugins => examples/builtins}/groupby/success.yml (98%) rename manifests/{plugins => examples/builtins}/interpolation/interpolation.yml (100%) rename manifests/{plugins => examples/builtins}/mock-observations/failure-invalid-config-cpu-range.yml (100%) rename manifests/{plugins => examples/builtins}/mock-observations/failure-invalid-memory-utilization-range.yml (100%) rename manifests/{plugins => examples/builtins}/mock-observations/failure-missing-timestamp-from-param.yml (100%) rename manifests/{plugins => examples/builtins}/mock-observations/success.yml (95%) rename manifests/{plugins => examples/builtins}/multiply/failure-input-parameter-is-missing.yml (100%) rename manifests/{plugins => examples/builtins}/multiply/success-with-multiple-inputs.yml (100%) rename manifests/{plugins => examples/builtins}/multiply/success.yml (100%) rename manifests/{plugins => examples/builtins}/regex/failure-missing-input-param.yml (100%) rename manifests/{plugins => examples/builtins}/regex/failure-not-matching-with-regex.yml (100%) rename manifests/{plugins => examples/builtins}/regex/success.yml (100%) rename manifests/{plugins => examples/builtins}/sci-embodied/failure-invalid-default-emission-value.yml (100%) rename manifests/{plugins => examples/builtins}/sci-embodied/failure-missing-expected-lifespan.yml (100%) rename manifests/{plugins => examples/builtins}/sci-embodied/success.yml (100%) rename manifests/{plugins => examples/builtins}/sci/failure-invalid-config-value.yml (100%) rename manifests/{plugins => examples/builtins}/sci/failure-missing-input-param.yml (65%) rename manifests/{plugins => examples/builtins}/sci/success.yml (79%) rename manifests/{plugins => examples/builtins}/shell/failure-invalid-command.yml (100%) rename manifests/{plugins => examples/builtins}/shell/success.yml (100%) rename manifests/{plugins => examples/builtins}/sum/failure-missing-input-param.yml (100%) rename manifests/{plugins => examples/builtins}/sum/failure-missing-output-param.yml (100%) rename manifests/{plugins => examples/builtins}/sum/success.yml (95%) rename manifests/{plugins => examples/builtins}/time-sync/failure-config-start-later-end.yml (100%) rename manifests/{plugins => examples/builtins}/time-sync/failure-missing-global-config.yml (100%) rename manifests/{plugins => examples/builtins}/time-sync/success.yml (100%) delete mode 100644 manifests/examples/copy.yaml delete mode 100644 manifests/examples/generics.yml rename manifests/{bugs/initialize-error-no-plugins.yml => examples/pipelines/basic.yml} (63%) create mode 100644 manifests/examples/pipelines/generics.yml rename manifests/examples/{ => pipelines}/instance-metadata.yml (94%) rename manifests/examples/{ => pipelines}/mock-cpu-util-to-carbon.yml (85%) rename manifests/examples/{ => pipelines}/nesting.yml (71%) rename manifests/examples/{ => pipelines}/pipeline-teads-sci.yml (54%) rename manifests/examples/{ => pipelines}/pipeline-with-aggregate.yml (61%) rename manifests/examples/{ => pipelines}/pipeline-with-mocks.yml (65%) rename manifests/examples/{ => pipelines}/sci.yml (100%) rename manifests/examples/{ => pipelines}/teads-curve.yml (100%) delete mode 100644 manifests/examples/region-metadata.yml delete mode 100644 manifests/examples/tdp-finder.yml delete mode 100644 manifests/examples/zeros.yaml delete mode 100644 manifests/features/aggregate-failure-invalid-metrics.yml delete mode 100644 manifests/features/aggregate-failure-missing-metric-in-inputs.yml delete mode 100644 manifests/features/aggregate-horizontal.yml delete mode 100644 manifests/features/aggregate-vertical.yml delete mode 100644 manifests/features/aggregate.yml delete mode 100644 manifests/integrations/cloud-metadata-divide.yml delete mode 100644 manifests/integrations/instance-metadata/failure-invalid-instance-type.yaml delete mode 100644 manifests/integrations/instance-metadata/failure-invalid-provider.yaml delete mode 100644 manifests/integrations/instance-metadata/failure-missing-queried-input.yml delete mode 100644 manifests/integrations/instance-metadata/success.yml delete mode 100644 manifests/integrations/mock-obs-group-by-cloud-meta.yml delete mode 100644 manifests/integrations/mock-obs-groupby.yml delete mode 100644 manifests/integrations/mock-obs-time-sync.yml create mode 100644 manifests/outputs/bugs/aggregation-error-wrong-metric.yaml create mode 100644 manifests/outputs/bugs/initialize-error-no-config.yaml create mode 100644 manifests/outputs/bugs/initialize-error-no-path.yaml create mode 100644 manifests/outputs/bugs/initialize-error-no-plugins.yaml create mode 100644 manifests/outputs/bugs/input-error-missing-duration.yaml create mode 100644 manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml create mode 100644 manifests/outputs/bugs/pipeline-error-naming-mismatch.yaml create mode 100644 manifests/outputs/bugs/pipeline-error-uninitialized-plugin.yaml create mode 100644 manifests/outputs/bugs/pipeline-ordering-error.yaml create mode 100644 manifests/outputs/bugs/sci-embodied-missing-resources-total.yaml create mode 100644 manifests/outputs/features/aggregate-failure-invalid-metrics.yaml create mode 100644 manifests/outputs/features/aggregate-failure-missing-metric-in-inputs.yaml create mode 100644 manifests/outputs/features/aggregate-horizontal.yaml create mode 100644 manifests/outputs/features/aggregate-vertical.yaml create mode 100644 manifests/outputs/features/aggregate.yaml create mode 100644 manifests/outputs/pipelines/cloud-metadata-divide.yaml create mode 100644 manifests/outputs/pipelines/mock-obs-group-by-cloud-meta.yaml create mode 100644 manifests/outputs/pipelines/mock-obs-groupby.yaml create mode 100644 manifests/outputs/pipelines/mock-obs-time-sync.yaml create mode 100644 manifests/outputs/plugins/coefficient/failure-invalid-config-input-param.yaml create mode 100644 manifests/outputs/plugins/coefficient/failure-output-param-is-null.yaml create mode 100644 manifests/outputs/plugins/coefficient/success.yaml rename manifests/{ => outputs}/plugins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml (100%) rename manifests/{ => outputs}/plugins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml (100%) create mode 100644 manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yaml create mode 100644 manifests/outputs/plugins/csv-lookup/cloud-metadata/success.yaml create mode 100644 manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-column.yaml create mode 100644 manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-output.yaml create mode 100644 manifests/outputs/plugins/csv-lookup/region-metadata/success-renaming.yaml create mode 100644 manifests/outputs/plugins/csv-lookup/region-metadata/success.yaml create mode 100644 manifests/outputs/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yaml create mode 100644 manifests/outputs/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yaml create mode 100644 manifests/outputs/plugins/csv-lookup/tdp-finder/success.yaml create mode 100644 manifests/outputs/plugins/divide/failure-invalid-config-denominator.yaml create mode 100644 manifests/outputs/plugins/divide/failure-missing-numerator.yaml create mode 100644 manifests/outputs/plugins/divide/success-denominator-equal-zero.yaml create mode 100644 manifests/outputs/plugins/divide/success.yaml create mode 100644 manifests/outputs/plugins/exponent/success.yaml create mode 100644 manifests/outputs/plugins/groupby/failure-invalid-config-group.yaml create mode 100644 manifests/outputs/plugins/groupby/failure-missing-cloud-instance-type.yaml create mode 100644 manifests/outputs/plugins/groupby/success.yaml create mode 100644 manifests/outputs/plugins/interpolation/interpolation.yaml create mode 100644 manifests/outputs/plugins/interpolation/success.yaml create mode 100644 manifests/outputs/plugins/mock-observations/failure-invalid-config-cpu-range.yaml create mode 100644 manifests/outputs/plugins/mock-observations/failure-invalid-memory-utilization-range.yaml create mode 100644 manifests/outputs/plugins/mock-observations/failure-missing-timestamp-from-param.yaml create mode 100644 manifests/outputs/plugins/mock-observations/success.yaml create mode 100644 manifests/outputs/plugins/multiply/failure-input-parameter-is-missing.yaml create mode 100644 manifests/outputs/plugins/multiply/success-with-multiple-inputs.yaml create mode 100644 manifests/outputs/plugins/multiply/success.yaml create mode 100644 manifests/outputs/plugins/regex/failure-missing-input-param.yaml create mode 100644 manifests/outputs/plugins/regex/failure-not-matching-with-regex.yaml create mode 100644 manifests/outputs/plugins/regex/success.yaml create mode 100644 manifests/outputs/plugins/sci-embodied/failure-invalid-default-emission-value.yaml create mode 100644 manifests/outputs/plugins/sci-embodied/failure-missing-expected-lifespan.yaml create mode 100644 manifests/outputs/plugins/sci-embodied/success.yaml create mode 100644 manifests/outputs/plugins/sci/failure-invalid-config-value.yaml create mode 100644 manifests/outputs/plugins/sci/failure-missing-input-param.yaml create mode 100644 manifests/outputs/plugins/sci/success.yml.yaml create mode 100644 manifests/outputs/plugins/shell/failure-invalid-command.yaml create mode 100644 manifests/outputs/plugins/shell/success.yaml create mode 100644 manifests/outputs/plugins/subtract/success.yaml create mode 100644 manifests/outputs/plugins/sum/failure-missing-input-param.yaml create mode 100644 manifests/outputs/plugins/sum/failure-missing-output-param.yaml create mode 100644 manifests/outputs/plugins/sum/success.yaml create mode 100644 manifests/outputs/plugins/time-sync/failure-config-start-later-end.yaml create mode 100644 manifests/outputs/plugins/time-sync/failure-missing-global-config.yaml create mode 100644 manifests/outputs/plugins/time-sync/success.yaml delete mode 100644 manifests/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yml delete mode 100644 manifests/plugins/csv-lookup/cloud-metadata/success.yml delete mode 100644 manifests/plugins/csv-lookup/region-metadata/success-renaming.yml delete mode 100644 manifests/plugins/csv-lookup/region-metadata/success.yml delete mode 100644 manifests/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yml delete mode 100644 manifests/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml delete mode 100644 manifests/plugins/csv-lookup/tdp-finder/success.yml delete mode 100644 manifests/plugins/exponent/success.yml delete mode 100644 manifests/plugins/interpolation/success.yml delete mode 100644 manifests/plugins/subtract/success.yml diff --git a/manifests/bugs/aggregation-error-wrong-metric.yml b/manifests/bugs/aggregation-error-wrong-metric.yml deleted file mode 100644 index 2c3141c13..000000000 --- a/manifests/bugs/aggregation-error-wrong-metric.yml +++ /dev/null @@ -1,178 +0,0 @@ -name: aggregation-error-wrong-metric -description: a negative test case that fails due to the aggregation feature being passed an incorrect metric -tags: -aggregation: - metrics: - - "dummy-param" - type: "both" -initialize: - plugins: - "interpolate": - method: Interpolation - path: 'builtin' - global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - "cpu-factor-to-wattage": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-factor", "cpu/thermal-design-power"] - output-parameter: "cpu-wattage" - "wattage-times-duration": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-wattage", "duration"] - output-parameter: "cpu-wattage-times-duration" - "wattage-to-energy-kwh": - method: Divide - path: "builtin" - global-config: - numerator: cpu-wattage-times-duration - denominator: 3600000 - output: cpu-energy-raw - "calculate-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: vcpus-total - denominator: vcpus-allocated - output: vcpu-ratio - "correct-cpu-energy-for-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: cpu-energy-raw - denominator: vcpu-ratio - output: cpu-energy-kwh - "sci-embodied": - path: "builtin" - method: SciEmbodied - "operational-carbon": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-energy-kwh", "grid/carbon-intensity"] - output-parameter: "carbon" - "sci": - path: "builtin" - method: Sci - global-config: - functional-unit: "requests" - "time-sync": - method: TimeSync - path: "builtin" - global-config: - start-time: "2023-12-12T00:00:00.000Z" - end-time: "2023-12-12T00:01:00.000Z" - interval: 5 - allow-padding: true - "group-by": - path: builtin - method: GroupBy -tree: - children: - child-1: - pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio - - sci-embodied - - operational-carbon - - time-sync - - sci - config: - group-by: - group: - - cloud/region - - cloud/instance-type - defaults: - cpu/thermal-design-power: 100 - grid/carbon-intensity: 800 - device/emissions-embodied: 1533.120 # gCO2eq - time-reserved: 3600 # 1hr in seconds - device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-allocated: 1 - vcpus-total: 8 - inputs: - - timestamp: "2023-12-12T00:00:00.000Z" - cloud/instance-type: A1 - cloud/region: uk-west - duration: 1 - cpu/utilization: 10 - requests: 100 - - timestamp: "2023-12-12T00:00:01.000Z" - duration: 5 - cpu/utilization: 20 - cloud/instance-type: A1 - cloud/region: uk-west - requests: 100 - - timestamp: "2023-12-12T00:00:06.000Z" - duration: 7 - cpu/utilization: 15 - cloud/instance-type: A1 - cloud/region: uk-west - requests: 100 - - timestamp: "2023-12-12T00:00:13.000Z" - duration: 30 - cloud/instance-type: A1 - cloud/region: uk-west - cpu/utilization: 15 - requests: 100 - child-2: - pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio - - sci-embodied - - operational-carbon - - time-sync - - sci - config: - group-by: - group: - - cloud/region - - cloud/instance-type - defaults: - cpu/thermal-design-power: 100 - grid/carbon-intensity: 800 - device/emissions-embodied: 1533.120 # gCO2eq - time-reserved: 3600 # 1hr in seconds - device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-allocated: 1 - vcpus-total: 8 - inputs: - - timestamp: "2023-12-12T00:00:00.000Z" - duration: 1 - cpu/utilization: 30 - cloud/instance-type: A1 - cloud/region: uk-west - requests: 100 - - timestamp: "2023-12-12T00:00:01.000Z" - duration: 5 - cpu/utilization: 28 - cloud/instance-type: A1 - cloud/region: uk-west - requests: 100 - - timestamp: "2023-12-12T00:00:06.000Z" - duration: 7 - cpu/utilization: 40 - cloud/instance-type: A1 - cloud/region: uk-west - requests: 100 - - timestamp: "2023-12-12T00:00:13.000Z" - duration: 30 - cpu/utilization: 33 - cloud/instance-type: A1 - cloud/region: uk-west - requests: 100 diff --git a/manifests/bugs/azure-importer-ignoring-defaults.yml b/manifests/bugs/azure-importer-ignoring-defaults.yml deleted file mode 100644 index b6749ee70..000000000 --- a/manifests/bugs/azure-importer-ignoring-defaults.yml +++ /dev/null @@ -1,64 +0,0 @@ -name: pipeline-demo -description: https://github.com/Green-Software-Foundation/if-unofficial-plugins/issues/81 -tags: -# aggregation: -# metrics: -# - "carbon" -# - "energy" -#type: "both" -initialize: - outputs: - - yaml - # - csv - plugins: - "azure-importer": - method: AzureImporter - path: "@grnsft/if-unofficial-plugins" - "try-defaults-1": - path: "builtin" - method: Coefficient - global-config: - input-parameter: grid/carbon-intensity - coefficient: 0.1 - output-parameter: grid/carbon-intensity - "try-defaults-2": - path: "builtin" - method: Coefficient - global-config: - input-parameter: network/energy - coefficient: 1000 - output-parameter: network/energy - "operational-carbon": - method: Multiply - path: builtin - global-config: - input-parameters: ["energy", "grid/carbon-intensity"] - output-parameter: "carbon-operational" - "group-by": - path: "builtin" - method: GroupBy -tree: - children: - web-front: # name this according to the sub-system, e.g. portal, APIs/backend, DB - pipeline: - - azure-importer - #- try-defaults-1 - #- try-defaults-2 - - sci-o - config: - group-by: - group: - - instance-type - azure-importer: - azure-observation-window: 60 min - azure-observation-aggregation: "average" - azure-subscription-id: 30b6e171-af2c-4fe6-b00d-d4c70f6291fe - azure-resource-group: gcf-app_group - azure-vm-name: gcf-app - defaults: - grid/carbon-intensity: 800 # adjust for SG grid - network/energy: 0.001 # review for naming accuracy - inputs: - - timestamp: "2024-04-04T08:00:00.001Z" - duration: 3600 - energy: 100 diff --git a/manifests/bugs/azure-importer-incorrect-calculation.yml b/manifests/bugs/azure-importer-incorrect-calculation.yml deleted file mode 100644 index bbac70ae2..000000000 --- a/manifests/bugs/azure-importer-incorrect-calculation.yml +++ /dev/null @@ -1,59 +0,0 @@ -name: pipeline-demo -description: https://github.com/Green-Software-Foundation/if-unofficial-plugins/issues/81 -tags: null -initialize: - plugins: - azure-importer: - path: '@grnsft/if-unofficial-plugins' - method: AzureImporter - try-defaults-1: - path: 'builtin' - method: Coefficient - global-config: - input-parameter: grid/carbon-intensity - coefficient: 0.1 - output-parameter: grid/carbon-intensity - try-defaults-2: - path: 'builtin' - method: Coefficient - global-config: - input-parameter: network/energy - coefficient: 1000 - output-parameter: network/energy - "operational-carbon": - method: Multiply - path: builtin - global-config: - input-parameters: ["energy", "grid/carbon-intensity"] - output-parameter: "carbon-operational" - group-by: - path: builtin - method: GroupBy - outputs: - - yaml -if-version: v0.3.2 -tree: - children: - web-front: - pipeline: - - azure-importer - - try-defaults-1 - - try-defaults-2 - config: - group-by: - group: - - instance-type - azure-importer: - azure-observation-window: 60 min - azure-observation-aggregation: average - azure-subscription-id: 30b6e171-af2c-4fe6-b00d-d4c70f6291fe - azure-resource-group: gcf-app_group - azure-vm-name: gcf-app - defaults: - grid/carbon-intensity: 800 - network/energy: 0.001 - inputs: - - timestamp: '2024-04-04T08:00:00.001Z' - duration: 3600 - energy: 100 - \ No newline at end of file diff --git a/manifests/bugs/initialize-error-no-config.yml b/manifests/bugs/initialize-error-no-config.yml deleted file mode 100644 index 466c7f5f9..000000000 --- a/manifests/bugs/initialize-error-no-config.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: initialize-error-no-config -description: a negative test case that fails due to plugin initialization missing some required config -tags: -initialize: - plugins: - "interpolate": - method: Interpolation - path: 'builtin' - global-config: -tree: - children: - child-0: - defaults: - cpu/thermal-design-power: 100 - pipeline: - - interpolate - inputs: - - timestamp: 2023-07-06T00:00 - duration: 1 - cpu/utilization: 20 - - timestamp: 2023-07-06T00:01 - duration: 1 - cpu/utilization: 80 - - timestamp: 2023-07-06T00:02 - duration: 1 - cpu/utilization: 20 diff --git a/manifests/bugs/initialize-error-no-path.yml b/manifests/bugs/initialize-error-no-path.yml deleted file mode 100644 index 279f304e6..000000000 --- a/manifests/bugs/initialize-error-no-path.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: initialize-error-no-path -description: a negative test case that fails because the path is mising in a plugin initialization -tags: -initialize: - plugins: - "interpolate": - method: Interpolation - path: - global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - # outputs: ['yaml'] -tree: - children: - child-0: - defaults: - cpu/thermal-design-power: 100 - pipeline: - - interpolate - inputs: - - timestamp: 2023-07-06T00:00 - duration: 1 - cpu/utilization: 20 - - timestamp: 2023-07-06T00:01 - duration: 1 - cpu/utilization: 80 - - timestamp: 2023-07-06T00:02 - duration: 1 - cpu/utilization: 20 diff --git a/manifests/bugs/input-error-missing-duration.yml b/manifests/bugs/input-error-missing-duration.yml deleted file mode 100644 index a2e7f3ca4..000000000 --- a/manifests/bugs/input-error-missing-duration.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: input-error-missing-duration -description: a negative test case that fails due to the required `duration` field being omitted from input data -tags: -initialize: - plugins: - "interpolate": - method: Interpolation - path: builtin - global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - # outputs: ['yaml'] -tree: - children: - child-0: - defaults: - cpu/thermal-design-power: 100 - pipeline: - - interpolate - inputs: - - timestamp: 2023-07-06T00:00 - cpu/utilization: 20 diff --git a/manifests/bugs/mock-observations-failure-duration-is-zero.yml b/manifests/bugs/mock-observations-failure-duration-is-zero.yml deleted file mode 100644 index e3d0d4cb8..000000000 --- a/manifests/bugs/mock-observations-failure-duration-is-zero.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: mock-observation-demo -description: a manifest demonstrating how to use the mock observations feature -tags: -initialize: - outputs: ['yaml'] - plugins: - mock-observations: - kind: plugin - method: MockObservations - path: "builtin" - global-config: - timestamp-from: 2023-07-06T00:00 - timestamp-to: 2023-07-06T00:10 - duration: 0 - components: - - cloud/instance-type: A1 - - cloud/instance-type: B1 - generators: - common: - region: uk-west - common-key: common-val - randint: - cpu/utilization: - min: 1 - max: 99 - memory/utilization: - min: 1 - max: 99 -tree: - children: - child: - pipeline: - - mock-observations - inputs: diff --git a/manifests/bugs/pipeline-error-naming-mismatch.yml b/manifests/bugs/pipeline-error-naming-mismatch.yml deleted file mode 100644 index 982e89088..000000000 --- a/manifests/bugs/pipeline-error-naming-mismatch.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: pipeline-error-naming-mismatch -description: a negative test case that fails due to the plugin name in the pipeline not matching the name given in initialize -tags: -initialize: - plugins: - "interpolate": - method: Interpolation - path: builtin - global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - outputs: ['yaml'] -tree: - children: - child-0: - defaults: - cpu/thermal-design-power: 100 - pipeline: - - wrong-name - inputs: - - timestamp: 2023-07-06T00:00 - duration: 1 - cpu/utilization: 20 - - timestamp: 2023-07-06T00:01 - duration: 1 - cpu/utilization: 80 - - timestamp: 2023-07-06T00:02 - duration: 1 - cpu/utilization: 20 diff --git a/manifests/bugs/pipeline-error-uninitialized-plugin.yml b/manifests/bugs/pipeline-error-uninitialized-plugin.yml deleted file mode 100644 index 7bead556b..000000000 --- a/manifests/bugs/pipeline-error-uninitialized-plugin.yml +++ /dev/null @@ -1,33 +0,0 @@ -name: pipeline-uninitialized-plugin-error -description: a negative test case that fails due to an uninitialized plugin being invoked in a pipeline -tags: -initialize: - # outputs: ['yaml'] - plugins: - "interpolate": - method: Interpolation - path: builtin - global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' -tree: - children: - child-0: - defaults: - cpu/thermal-design-power: 100 - pipeline: - - interpolate - - multiply - inputs: - - timestamp: 2023-07-06T00:00 - duration: 1 - cpu/utilization: 20 - - timestamp: 2023-07-06T00:01 - duration: 1 - cpu/utilization: 80 - - timestamp: 2023-07-06T00:02 - duration: 1 - cpu/utilization: 20 diff --git a/manifests/bugs/pipeline-ordering-error.yml b/manifests/bugs/pipeline-ordering-error.yml deleted file mode 100644 index 7fa8836c1..000000000 --- a/manifests/bugs/pipeline-ordering-error.yml +++ /dev/null @@ -1,91 +0,0 @@ -name: pipeline-ordering-error -description: a negative test case that fails because sci-o is invoked too early in the pipeline (before its inputs are generated) -tags: -initialize: - plugins: - "interpolate": - method: Interpolation - path: 'builtin' - global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - "cpu-factor-to-wattage": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-factor", "cpu/thermal-design-power"] - output-parameter: "cpu-wattage" - "wattage-times-duration": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-wattage", "duration"] - output-parameter: "cpu-wattage-times-duration" - "wattage-to-energy-kwh": - method: Divide - path: "builtin" - global-config: - numerator: cpu-wattage-times-duration - denominator: 3600000 - output: cpu-energy-raw - "calculate-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: vcpus-total - denominator: vcpus-allocated - output: vcpu-ratio - "correct-cpu-energy-for-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: cpu-energy-raw - denominator: vcpu-ratio - output: cpu-energy-kwh -tree: - children: - child-1: - pipeline: - - interpolate - - correct-cpu-energy-for-vcpu-ratio - - calculate-vcpu-ratio - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - config: - defaults: - cpu/thermal-design-power: 100 - grid/carbon-intensity: 800 - device/emissions-embodied: 1533.120 # gCO2eq - time-reserved: 3600 # 1hr in seconds - device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-allocated: 1 - vcpus-total: 8 - inputs: - - timestamp: "2023-12-12T00:00:00.000Z" - cloud/instance-type: A1 - cloud/region: uk-west - duration: 1 - cpu/utilization: 50 - network/energy: 0.000001 - - timestamp: "2023-12-12T00:00:01.000Z" - duration: 5 - cpu/utilization: 20 - cloud/instance-type: A1 - cloud/region: uk-west - network/energy: 0.000001 - - timestamp: "2023-12-12T00:00:06.000Z" - duration: 7 - cpu/utilization: 15 - cloud/instance-type: A1 - cloud/region: uk-west - network/energy: 0.000001 - - timestamp: "2023-12-12T00:00:13.000Z" - duration: 30 - cloud/instance-type: A1 - cloud/region: uk-west - cpu/utilization: 15 - network/energy: 0.000001 diff --git a/manifests/bugs/sci-embodied-missing-resources-total.yml b/manifests/bugs/sci-embodied-missing-resources-total.yml deleted file mode 100644 index 952859c56..000000000 --- a/manifests/bugs/sci-embodied-missing-resources-total.yml +++ /dev/null @@ -1,23 +0,0 @@ -name: sci-embodied -description: receiving incorrect error message when running sci-embodied without `resources-total` issue #716 -tags: -initialize: - #outputs: ['yaml'] - plugins: - "sci-embodied": # a model that calculates m from te, tir, el, rr and rtor - method: SciEmbodied - path: "builtin" -tree: - children: - child: - pipeline: - - sci-embodied # duration & config -> embodied - defaults: - device/emissions-embodied: 1533.120 # gCO2eq - time-reserved: 3600 # 1hr in seconds - device/expected-lifespan: 94608000 # 3 years in seconds - resources-reserved: 1 - # resources-total: 8 - inputs: - - timestamp: 2023-07-06T00:00 - duration: 3600 diff --git a/manifests/plugins/coefficient/failure-invalid-config-input-param.yml b/manifests/examples/builtins/coefficient/failure-invalid-config-input-param.yml similarity index 100% rename from manifests/plugins/coefficient/failure-invalid-config-input-param.yml rename to manifests/examples/builtins/coefficient/failure-invalid-config-input-param.yml diff --git a/manifests/plugins/coefficient/failure-output-param-is-null.yaml b/manifests/examples/builtins/coefficient/failure-output-param-is-null.yaml similarity index 100% rename from manifests/plugins/coefficient/failure-output-param-is-null.yaml rename to manifests/examples/builtins/coefficient/failure-output-param-is-null.yaml diff --git a/manifests/plugins/coefficient/success.yml b/manifests/examples/builtins/coefficient/success.yml similarity index 100% rename from manifests/plugins/coefficient/success.yml rename to manifests/examples/builtins/coefficient/success.yml diff --git a/manifests/plugins/csv-lookup/region-metadata/failure-missing-column.yml b/manifests/examples/builtins/csv-lookup/failure-missing-column.yml similarity index 100% rename from manifests/plugins/csv-lookup/region-metadata/failure-missing-column.yml rename to manifests/examples/builtins/csv-lookup/failure-missing-column.yml diff --git a/manifests/plugins/csv-lookup/region-metadata/failure-missing-output.yml b/manifests/examples/builtins/csv-lookup/failure-missing-output.yml similarity index 100% rename from manifests/plugins/csv-lookup/region-metadata/failure-missing-output.yml rename to manifests/examples/builtins/csv-lookup/failure-missing-output.yml diff --git a/manifests/examples/builtins/csv-lookup/success-renaming.yaml b/manifests/examples/builtins/csv-lookup/success-renaming.yaml new file mode 100644 index 000000000..80d12e8a8 --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/success-renaming.yaml @@ -0,0 +1,83 @@ +name: csv-lookup-demo +description: null +tags: null +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv + query: + cloud-provider: cloud/provider + cloud-region: cloud/region + output: + - em-zone-id + - renamed-em-zone-data + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/examples/builtins/csv-lookup/success-renaming.yml -o + manifests/examples/builtins/csv-lookup/success-renaming + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:16:40.781Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - cloud-metadata + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 + renamed-em-zone-data: TW diff --git a/manifests/examples/builtins/csv-lookup/success.yaml b/manifests/examples/builtins/csv-lookup/success.yaml new file mode 100644 index 000000000..0f616f376 --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/success.yaml @@ -0,0 +1,95 @@ +name: csv-lookup-demo +description: null +tags: null +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv + query: + cloud-provider: cloud/provider + cloud-region: cloud/region + output: '*' + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/examples/builtins/csv-lookup/success.yml -o + manifests/examples/builtins/csv-lookup/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:09:37.066Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - cloud-metadata + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 + year: 2022 + cfe-region: Taiwan + em-zone-id: TW + wt-region-id: TW + location: Taiwan + geolocation: 25.0375,121.5625 + cfe-hourly: 0.18 + cfe-annual: nan + power-usage-efficiency: nan + net-carbon: 0 + grid-carbon-intensity-24x7: 453 + grid-carbon-intensity-consumption: nan + grid-carbon-intensity-marginal: nan + grid-carbon-intensity-production: nan + grid-carbon-intensity: 453 diff --git a/manifests/plugins/divide/failure-denominator-equal-zero.yml b/manifests/examples/builtins/divide/failure-denominator-equal-zero.yml similarity index 69% rename from manifests/plugins/divide/failure-denominator-equal-zero.yml rename to manifests/examples/builtins/divide/failure-denominator-equal-zero.yml index 4022d4797..af5ed2ae0 100644 --- a/manifests/plugins/divide/failure-denominator-equal-zero.yml +++ b/manifests/examples/builtins/divide/failure-denominator-equal-zero.yml @@ -5,14 +5,8 @@ initialize: # outputs: ['yaml'] plugins: cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] + method: CloudMetadata + path: "@grnsft/if-plugins" divide: method: Divide path: "builtin" @@ -20,12 +14,19 @@ initialize: numerator: vcpus-allocated denominator: 0 output: cpu/number-cores + boavizta-cpu: + method: BoaviztaCpuOutput + path: "@grnsft/if-unofficial-plugins" + global-config: + allocation: LINEAR + verbose: true tree: children: child: pipeline: - cloud-metadata - divide + - boavizta-cpu config: divide: defaults: diff --git a/manifests/plugins/divide/failure-invalid-config-denominator.yml b/manifests/examples/builtins/divide/failure-invalid-config-denominator.yml similarity index 69% rename from manifests/plugins/divide/failure-invalid-config-denominator.yml rename to manifests/examples/builtins/divide/failure-invalid-config-denominator.yml index 91129714a..063274bc0 100644 --- a/manifests/plugins/divide/failure-invalid-config-denominator.yml +++ b/manifests/examples/builtins/divide/failure-invalid-config-denominator.yml @@ -5,14 +5,8 @@ initialize: outputs: ['yaml'] plugins: cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] + method: CloudMetadata + path: "@grnsft/if-plugins" divide: method: Divide path: "builtin" @@ -20,12 +14,19 @@ initialize: numerator: vcpus-allocated denominator: 'vcpus' output: cpu/number-cores + boavizta-cpu: + method: BoaviztaCpuOutput + path: "@grnsft/if-unofficial-plugins" + global-config: + allocation: LINEAR + verbose: true tree: children: child: pipeline: - cloud-metadata - divide + - boavizta-cpu config: divide: defaults: diff --git a/manifests/plugins/divide/failure-missing-numerator.yml b/manifests/examples/builtins/divide/failure-missing-numerator.yml similarity index 68% rename from manifests/plugins/divide/failure-missing-numerator.yml rename to manifests/examples/builtins/divide/failure-missing-numerator.yml index 7cf123976..7f03d5eba 100644 --- a/manifests/plugins/divide/failure-missing-numerator.yml +++ b/manifests/examples/builtins/divide/failure-missing-numerator.yml @@ -5,14 +5,8 @@ initialize: # outputs: ['yaml'] plugins: cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] + method: CloudMetadata + path: "@grnsft/if-plugins" divide: method: Divide path: "builtin" @@ -20,12 +14,19 @@ initialize: #numerator: vcpus-allocated denominator: 2 output: cpu/number-cores + boavizta-cpu: + method: BoaviztaCpuOutput + path: "@grnsft/if-unofficial-plugins" + global-config: + allocation: LINEAR + verbose: true tree: children: child: pipeline: - cloud-metadata - divide + - boavizta-cpu config: divide: defaults: diff --git a/manifests/plugins/divide/success.yml b/manifests/examples/builtins/divide/success.yml similarity index 66% rename from manifests/plugins/divide/success.yml rename to manifests/examples/builtins/divide/success.yml index 6a32d7e2c..ed75a7c5c 100644 --- a/manifests/plugins/divide/success.yml +++ b/manifests/examples/builtins/divide/success.yml @@ -2,17 +2,11 @@ name: divide description: success path tags: initialize: - # outputs: ['yaml'] +# outputs: ['yaml'] plugins: cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] + method: CloudMetadata + path: "@grnsft/if-plugins" divide: method: Divide path: "builtin" @@ -20,12 +14,19 @@ initialize: numerator: vcpus-allocated denominator: 2 output: cpu/number-cores + boavizta-cpu: + method: BoaviztaCpuOutput + path: "@grnsft/if-unofficial-plugins" + global-config: + allocation: LINEAR + verbose: true tree: children: child: pipeline: - cloud-metadata - divide + - boavizta-cpu config: divide: defaults: diff --git a/manifests/plugins/groupby/failure-invalid-config-group.yml b/manifests/examples/builtins/groupby/failure-invalid-config-group.yml similarity index 100% rename from manifests/plugins/groupby/failure-invalid-config-group.yml rename to manifests/examples/builtins/groupby/failure-invalid-config-group.yml diff --git a/manifests/plugins/groupby/failure-missing-cloud-instance-type.yml b/manifests/examples/builtins/groupby/failure-missing-cloud-instance-type.yml similarity index 100% rename from manifests/plugins/groupby/failure-missing-cloud-instance-type.yml rename to manifests/examples/builtins/groupby/failure-missing-cloud-instance-type.yml diff --git a/manifests/plugins/groupby/success.yml b/manifests/examples/builtins/groupby/success.yml similarity index 98% rename from manifests/plugins/groupby/success.yml rename to manifests/examples/builtins/groupby/success.yml index 0105799b1..b81e7d53e 100644 --- a/manifests/plugins/groupby/success.yml +++ b/manifests/examples/builtins/groupby/success.yml @@ -1,7 +1,7 @@ name: groupby description: successful path initialize: - outputs: ['yaml'] + plugins: group-by: path: "builtin" diff --git a/manifests/plugins/interpolation/interpolation.yml b/manifests/examples/builtins/interpolation/interpolation.yml similarity index 100% rename from manifests/plugins/interpolation/interpolation.yml rename to manifests/examples/builtins/interpolation/interpolation.yml diff --git a/manifests/plugins/mock-observations/failure-invalid-config-cpu-range.yml b/manifests/examples/builtins/mock-observations/failure-invalid-config-cpu-range.yml similarity index 100% rename from manifests/plugins/mock-observations/failure-invalid-config-cpu-range.yml rename to manifests/examples/builtins/mock-observations/failure-invalid-config-cpu-range.yml diff --git a/manifests/plugins/mock-observations/failure-invalid-memory-utilization-range.yml b/manifests/examples/builtins/mock-observations/failure-invalid-memory-utilization-range.yml similarity index 100% rename from manifests/plugins/mock-observations/failure-invalid-memory-utilization-range.yml rename to manifests/examples/builtins/mock-observations/failure-invalid-memory-utilization-range.yml diff --git a/manifests/plugins/mock-observations/failure-missing-timestamp-from-param.yml b/manifests/examples/builtins/mock-observations/failure-missing-timestamp-from-param.yml similarity index 100% rename from manifests/plugins/mock-observations/failure-missing-timestamp-from-param.yml rename to manifests/examples/builtins/mock-observations/failure-missing-timestamp-from-param.yml diff --git a/manifests/plugins/mock-observations/success.yml b/manifests/examples/builtins/mock-observations/success.yml similarity index 95% rename from manifests/plugins/mock-observations/success.yml rename to manifests/examples/builtins/mock-observations/success.yml index ac1464322..941344fe4 100644 --- a/manifests/plugins/mock-observations/success.yml +++ b/manifests/examples/builtins/mock-observations/success.yml @@ -10,7 +10,7 @@ initialize: path: "builtin" global-config: timestamp-from: 2023-07-06T00:00 - timestamp-to: 2023-07-06T00:10 + timestamp-to: 2023-07-06T00:01 duration: 60 components: - cloud/instance-type: A1 diff --git a/manifests/plugins/multiply/failure-input-parameter-is-missing.yml b/manifests/examples/builtins/multiply/failure-input-parameter-is-missing.yml similarity index 100% rename from manifests/plugins/multiply/failure-input-parameter-is-missing.yml rename to manifests/examples/builtins/multiply/failure-input-parameter-is-missing.yml diff --git a/manifests/plugins/multiply/success-with-multiple-inputs.yml b/manifests/examples/builtins/multiply/success-with-multiple-inputs.yml similarity index 100% rename from manifests/plugins/multiply/success-with-multiple-inputs.yml rename to manifests/examples/builtins/multiply/success-with-multiple-inputs.yml diff --git a/manifests/plugins/multiply/success.yml b/manifests/examples/builtins/multiply/success.yml similarity index 100% rename from manifests/plugins/multiply/success.yml rename to manifests/examples/builtins/multiply/success.yml diff --git a/manifests/plugins/regex/failure-missing-input-param.yml b/manifests/examples/builtins/regex/failure-missing-input-param.yml similarity index 100% rename from manifests/plugins/regex/failure-missing-input-param.yml rename to manifests/examples/builtins/regex/failure-missing-input-param.yml diff --git a/manifests/plugins/regex/failure-not-matching-with-regex.yml b/manifests/examples/builtins/regex/failure-not-matching-with-regex.yml similarity index 100% rename from manifests/plugins/regex/failure-not-matching-with-regex.yml rename to manifests/examples/builtins/regex/failure-not-matching-with-regex.yml diff --git a/manifests/plugins/regex/success.yml b/manifests/examples/builtins/regex/success.yml similarity index 100% rename from manifests/plugins/regex/success.yml rename to manifests/examples/builtins/regex/success.yml diff --git a/manifests/plugins/sci-embodied/failure-invalid-default-emission-value.yml b/manifests/examples/builtins/sci-embodied/failure-invalid-default-emission-value.yml similarity index 100% rename from manifests/plugins/sci-embodied/failure-invalid-default-emission-value.yml rename to manifests/examples/builtins/sci-embodied/failure-invalid-default-emission-value.yml diff --git a/manifests/plugins/sci-embodied/failure-missing-expected-lifespan.yml b/manifests/examples/builtins/sci-embodied/failure-missing-expected-lifespan.yml similarity index 100% rename from manifests/plugins/sci-embodied/failure-missing-expected-lifespan.yml rename to manifests/examples/builtins/sci-embodied/failure-missing-expected-lifespan.yml diff --git a/manifests/plugins/sci-embodied/success.yml b/manifests/examples/builtins/sci-embodied/success.yml similarity index 100% rename from manifests/plugins/sci-embodied/success.yml rename to manifests/examples/builtins/sci-embodied/success.yml diff --git a/manifests/plugins/sci/failure-invalid-config-value.yml b/manifests/examples/builtins/sci/failure-invalid-config-value.yml similarity index 100% rename from manifests/plugins/sci/failure-invalid-config-value.yml rename to manifests/examples/builtins/sci/failure-invalid-config-value.yml diff --git a/manifests/plugins/sci/failure-missing-input-param.yml b/manifests/examples/builtins/sci/failure-missing-input-param.yml similarity index 65% rename from manifests/plugins/sci/failure-missing-input-param.yml rename to manifests/examples/builtins/sci/failure-missing-input-param.yml index 54514a8e5..44ced7374 100644 --- a/manifests/plugins/sci/failure-missing-input-param.yml +++ b/manifests/examples/builtins/sci/failure-missing-input-param.yml @@ -8,13 +8,17 @@ initialize: kind: plugin method: Sci path: "builtin" - global-config: - functional-unit: requests + # global-config: + # functional-unit: requests tree: children: child: pipeline: - sci + config: + sci: + functional-unit-time: 1 sec + functional-unit: requests # factor to convert per time to per f.unit inputs: - timestamp: 2023-07-06T00:00 duration: 3600 diff --git a/manifests/plugins/sci/success.yml b/manifests/examples/builtins/sci/success.yml similarity index 79% rename from manifests/plugins/sci/success.yml rename to manifests/examples/builtins/sci/success.yml index cddfe5755..c7e6dbde6 100644 --- a/manifests/plugins/sci/success.yml +++ b/manifests/examples/builtins/sci/success.yml @@ -16,6 +16,9 @@ tree: pipeline: - sci config: + sci: + functional-unit-time: 1 sec + functional-unit: requests # factor to convert per time to per f.unit inputs: - timestamp: 2023-07-06T00:00 duration: 3600 diff --git a/manifests/plugins/shell/failure-invalid-command.yml b/manifests/examples/builtins/shell/failure-invalid-command.yml similarity index 100% rename from manifests/plugins/shell/failure-invalid-command.yml rename to manifests/examples/builtins/shell/failure-invalid-command.yml diff --git a/manifests/plugins/shell/success.yml b/manifests/examples/builtins/shell/success.yml similarity index 100% rename from manifests/plugins/shell/success.yml rename to manifests/examples/builtins/shell/success.yml diff --git a/manifests/plugins/sum/failure-missing-input-param.yml b/manifests/examples/builtins/sum/failure-missing-input-param.yml similarity index 100% rename from manifests/plugins/sum/failure-missing-input-param.yml rename to manifests/examples/builtins/sum/failure-missing-input-param.yml diff --git a/manifests/plugins/sum/failure-missing-output-param.yml b/manifests/examples/builtins/sum/failure-missing-output-param.yml similarity index 100% rename from manifests/plugins/sum/failure-missing-output-param.yml rename to manifests/examples/builtins/sum/failure-missing-output-param.yml diff --git a/manifests/plugins/sum/success.yml b/manifests/examples/builtins/sum/success.yml similarity index 95% rename from manifests/plugins/sum/success.yml rename to manifests/examples/builtins/sum/success.yml index 454efc9e0..fc0661bf5 100644 --- a/manifests/plugins/sum/success.yml +++ b/manifests/examples/builtins/sum/success.yml @@ -2,7 +2,7 @@ name: sum description: successful path tags: initialize: - # outputs: ['yaml'] + outputs: ['yaml'] plugins: sum: method: Sum diff --git a/manifests/plugins/time-sync/failure-config-start-later-end.yml b/manifests/examples/builtins/time-sync/failure-config-start-later-end.yml similarity index 100% rename from manifests/plugins/time-sync/failure-config-start-later-end.yml rename to manifests/examples/builtins/time-sync/failure-config-start-later-end.yml diff --git a/manifests/plugins/time-sync/failure-missing-global-config.yml b/manifests/examples/builtins/time-sync/failure-missing-global-config.yml similarity index 100% rename from manifests/plugins/time-sync/failure-missing-global-config.yml rename to manifests/examples/builtins/time-sync/failure-missing-global-config.yml diff --git a/manifests/plugins/time-sync/success.yml b/manifests/examples/builtins/time-sync/success.yml similarity index 100% rename from manifests/plugins/time-sync/success.yml rename to manifests/examples/builtins/time-sync/success.yml diff --git a/manifests/examples/copy.yaml b/manifests/examples/copy.yaml deleted file mode 100644 index f2ee816e4..000000000 --- a/manifests/examples/copy.yaml +++ /dev/null @@ -1,20 +0,0 @@ -name: copy-param -description: -tags: -initialize: - plugins: - copy-param: - path: builtin - method: Copy - global-config: - keep-existing: true - from: original - to: copy -tree: - children: - child-1: - pipeline: - - copy-param - inputs: - - timestamp: "2023-12-12T00:00:00.000Z" - original: 'hello' diff --git a/manifests/examples/generics.yml b/manifests/examples/generics.yml deleted file mode 100644 index c319967f0..000000000 --- a/manifests/examples/generics.yml +++ /dev/null @@ -1,106 +0,0 @@ -name: generics -description: a pipeline that does arbitrary calculations using our generic arithmetic builtins -tags: -initialize: - plugins: - "interpolate": - method: Interpolation - path: 'builtin' - global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - "cpu-factor-to-wattage": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-factor", "cpu/thermal-design-power"] - output-parameter: "cpu-wattage" - "wattage-times-duration": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-wattage", "duration"] - output-parameter: "cpu-wattage-times-duration" - "wattage-to-energy-kwh": - method: Divide - path: "builtin" - global-config: - numerator: cpu-wattage-times-duration - denominator: 3600000 - output: cpu-energy-raw - "calculate-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: vcpus-total - denominator: vcpus-allocated - output: vcpu-ratio - "correct-cpu-energy-for-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: cpu-energy-raw - denominator: vcpu-ratio - output: cpu-energy-kwh - "coefficient": - path: "builtin" - method: Coefficient - global-config: - input-parameter: cpu-energy-kwh - coefficient: 2 - output-parameter: energy-doubled - "multiply": - path: "builtin" - method: Multiply - global-config: - input-parameters: ["cpu/utilization", "duration"] - output-parameter: "cpu-times-duration" -tree: - children: - child-1: - pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio - - coefficient - - multiply - config: - defaults: - cpu/thermal-design-power: 100 - vcpus-allocated: 1 - vcpus-total: 8 - inputs: - - timestamp: "2023-12-12T00:00:00.000Z" - cloud/instance-type: A1 - cloud/region: uk-west - duration: 1 - cpu/utilization: 50 - network/energy: 10 - energy: 5 - - timestamp: "2023-12-12T00:00:01.000Z" - duration: 5 - cpu/utilization: 20 - cloud/instance-type: A1 - cloud/region: uk-west - network/energy: 10 - energy: 5 - - timestamp: "2023-12-12T00:00:06.000Z" - duration: 7 - cpu/utilization: 15 - cloud/instance-type: A1 - cloud/region: uk-west - network/energy: 10 - energy: 5 - - timestamp: "2023-12-12T00:00:13.000Z" - duration: 30 - cloud/instance-type: A1 - cloud/region: uk-west - cpu/utilization: 15 - network/energy: 10 - energy: 5 diff --git a/manifests/bugs/initialize-error-no-plugins.yml b/manifests/examples/pipelines/basic.yml similarity index 63% rename from manifests/bugs/initialize-error-no-plugins.yml rename to manifests/examples/pipelines/basic.yml index 7c6bfad53..0f3dc7735 100644 --- a/manifests/bugs/initialize-error-no-plugins.yml +++ b/manifests/examples/pipelines/basic.yml @@ -1,9 +1,13 @@ -name: initialize-error-no-path -description: a negative test case that fails becuase no plugins are included in the initialize block +name: basic +description: a minimal manifest executing a single plugin on a single component for a single timestep tags: initialize: plugins: - outputs: ['yaml'] + teads-curve: + path: '@grnsft/if-unofficial-plugins' + method: TeadsCurve + global-config: + interpolation: spline tree: children: child-0: diff --git a/manifests/examples/pipelines/generics.yml b/manifests/examples/pipelines/generics.yml new file mode 100644 index 000000000..6492c9a3d --- /dev/null +++ b/manifests/examples/pipelines/generics.yml @@ -0,0 +1,45 @@ +name: generics +description: a pipeline that does arbitrary calculations using our generic arithmetic builtins +tags: +initialize: + plugins: + "sum": + path: "builtin" + method: Sum + global-config: + input-parameters: + - cpu/energy + - network/energy + output-parameter: energy-sum + "coefficient": + path: "builtin" + method: Coefficient + global-config: + input-parameter: energy + coefficient: 2 + output-parameter: energy-doubled + "multiply": + path: "builtin" + method: Multiply + global-config: + input-parameters: ["cpu/utilization", "duration"] + output-parameter: "cpu-times-duration" +tree: + children: + child-1: + pipeline: + - sum + - coefficient + - multiply + config: + defaults: + cpu/thermal-design-power: 100 + inputs: + - timestamp: "2023-12-12T00:00:00.000Z" + cloud/instance-type: A1 + cloud/region: uk-west + duration: 1 + cpu/utilization: 50 + cpu/energy: 20 + network/energy: 10 + energy: 5 diff --git a/manifests/examples/instance-metadata.yml b/manifests/examples/pipelines/instance-metadata.yml similarity index 94% rename from manifests/examples/instance-metadata.yml rename to manifests/examples/pipelines/instance-metadata.yml index ea0998241..4ed443985 100644 --- a/manifests/examples/instance-metadata.yml +++ b/manifests/examples/pipelines/instance-metadata.yml @@ -1,6 +1,6 @@ name: csv-demo -description: -tags: +description: null +tags: null initialize: plugins: cloud-instance-metadata: @@ -19,8 +19,8 @@ initialize: parameter: cpu-model-name match: /^([^,])+/g output: cpu/name - # outputs: - # - yaml + outputs: + - yaml tree: children: child: diff --git a/manifests/examples/mock-cpu-util-to-carbon.yml b/manifests/examples/pipelines/mock-cpu-util-to-carbon.yml similarity index 85% rename from manifests/examples/mock-cpu-util-to-carbon.yml rename to manifests/examples/pipelines/mock-cpu-util-to-carbon.yml index 64e6d6719..35f7cea26 100644 --- a/manifests/examples/mock-cpu-util-to-carbon.yml +++ b/manifests/examples/pipelines/mock-cpu-util-to-carbon.yml @@ -21,14 +21,8 @@ initialize: global-config: interpolation: spline cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-azure-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] + method: CloudMetadata + path: "@grnsft/if-plugins" mock-observations: path: 'builtin' method: MockObservations diff --git a/manifests/examples/nesting.yml b/manifests/examples/pipelines/nesting.yml similarity index 71% rename from manifests/examples/nesting.yml rename to manifests/examples/pipelines/nesting.yml index 978510f48..e56e8bb18 100644 --- a/manifests/examples/nesting.yml +++ b/manifests/examples/pipelines/nesting.yml @@ -7,62 +7,31 @@ tags: aggregation: metrics: - "carbon" + - "energy" type: "both" params: initialize: - # outputs: ['yaml'] + outputs: ['yaml'] plugins: - "interpolate": - method: Interpolation - path: 'builtin' + teads-curve: + path: "@grnsft/if-unofficial-plugins" + method: TeadsCurve global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - "cpu-factor-to-wattage": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-factor", "cpu/thermal-design-power"] - output-parameter: "cpu-wattage" - "wattage-times-duration": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-wattage", "duration"] - output-parameter: "cpu-wattage-times-duration" - "wattage-to-energy-kwh": - method: Divide - path: "builtin" - global-config: - numerator: cpu-wattage-times-duration - denominator: 3600000 - output: cpu-energy-raw - "calculate-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: vcpus-total - denominator: vcpus-allocated - output: vcpu-ratio - "correct-cpu-energy-for-vcpu-ratio": - method: Divide + interpolation: spline + sum: path: "builtin" + method: Sum global-config: - numerator: cpu-energy-raw - denominator: vcpu-ratio - output: cpu-energy-kwh + input-parameters: + - cpu/energy + - network/energy + output-parameter: energy sci-embodied: path: "builtin" method: SciEmbodied - "operational-carbon": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-energy-kwh", "grid/carbon-intensity"] - output-parameter: "carbon-operational" + sci-o: + path: "@grnsft/if-plugins" + method: SciO sci: path: "builtin" method: Sci @@ -93,17 +62,13 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-allocated: 1 - vcpus-total: 8 + resources-reserved: 1 + resources-total: 8 pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio + - teads-curve + - sum - sci-embodied - - operational-carbon + - sci-o - sum-carbon - time-sync - sci @@ -143,17 +108,13 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-allocated: 1 - vcpus-total: 8 + resources-reserved: 1 + resources-total: 8 pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio + - teads-curve + - sum - sci-embodied - - operational-carbon + - sci-o - sum-carbon - time-sync - sci @@ -195,17 +156,13 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-allocated: 1 - vcpus-total: 8 + resources-reserved: 1 + resources-total: 8 pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio + - teads-curve + - sum - sci-embodied - - operational-carbon + - sci-o - sum-carbon - time-sync - sci @@ -245,17 +202,13 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-allocated: 1 - vcpus-total: 8 + resources-reserved: 1 + resources-total: 8 pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio + - teads-curve + - sum - sci-embodied - - operational-carbon + - sci-o - sum-carbon - time-sync - sci diff --git a/manifests/examples/pipeline-teads-sci.yml b/manifests/examples/pipelines/pipeline-teads-sci.yml similarity index 54% rename from manifests/examples/pipeline-teads-sci.yml rename to manifests/examples/pipelines/pipeline-teads-sci.yml index c07b093bd..01c491cdc 100644 --- a/manifests/examples/pipeline-teads-sci.yml +++ b/manifests/examples/pipelines/pipeline-teads-sci.yml @@ -3,57 +3,25 @@ description: a full pipeline seeded with some hardcoded input data and yielding tags: initialize: plugins: - "interpolate": - method: Interpolation - path: 'builtin' + "teads-curve": + path: "@grnsft/if-unofficial-plugins" + method: TeadsCurve global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - "cpu-factor-to-wattage": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-factor", "cpu/thermal-design-power"] - output-parameter: "cpu-wattage" - "wattage-times-duration": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-wattage", "duration"] - output-parameter: "cpu-wattage-times-duration" - "wattage-to-energy-kwh": - method: Divide - path: "builtin" - global-config: - numerator: cpu-wattage-times-duration - denominator: 3600000 - output: cpu-energy-raw - "calculate-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: vcpus-total - denominator: vcpus-allocated - output: vcpu-ratio - "correct-cpu-energy-for-vcpu-ratio": - method: Divide + interpolation: spline + "sum": path: "builtin" + method: Sum global-config: - numerator: cpu-energy-raw - denominator: vcpu-ratio - output: cpu-energy-kwh + input-parameters: + - cpu/energy + - network/energy + output-parameter: energy "sci-embodied": path: "builtin" method: SciEmbodied - "operational-carbon": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-energy-kwh", "grid/carbon-intensity"] - output-parameter: "carbon-operational" + "sci-o": + path: "@grnsft/if-plugins" + method: SciO "sci": path: "builtin" method: Sci @@ -79,14 +47,10 @@ tree: children: child-1: pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio + - teads-curve + - sum - sci-embodied - - operational-carbon + - sci-o - sum-carbon - sci config: @@ -96,8 +60,8 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-total: 8 - vcpus-allocated: 1 + resources-reserved: 1 + resources-total: 8 component: 1 inputs: - timestamp: "2023-12-12T00:00:00.000Z" diff --git a/manifests/examples/pipeline-with-aggregate.yml b/manifests/examples/pipelines/pipeline-with-aggregate.yml similarity index 61% rename from manifests/examples/pipeline-with-aggregate.yml rename to manifests/examples/pipelines/pipeline-with-aggregate.yml index 73203676b..bd3e637ac 100644 --- a/manifests/examples/pipeline-with-aggregate.yml +++ b/manifests/examples/pipelines/pipeline-with-aggregate.yml @@ -7,62 +7,25 @@ aggregation: type: "both" initialize: plugins: - "interpolate": - method: Interpolation - path: 'builtin' + "teads-curve": + path: "@grnsft/if-unofficial-plugins" + method: TeadsCurve global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - "cpu-factor-to-wattage": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-factor", "cpu/thermal-design-power"] - output-parameter: "cpu-wattage" - "wattage-times-duration": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-wattage", "duration"] - output-parameter: "cpu-wattage-times-duration" - "wattage-to-energy-kwh": - method: Divide - path: "builtin" - global-config: - numerator: cpu-wattage-times-duration - denominator: 3600000 - output: cpu-energy-raw - "calculate-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: vcpus-total - denominator: vcpus-allocated - output: vcpu-ratio - "correct-cpu-energy-for-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: cpu-energy-raw - denominator: vcpu-ratio - output: cpu-energy-kwh + interpolation: spline + "sci-e": + path: "@grnsft/if-plugins" + method: SciE "sci-embodied": path: "builtin" method: SciEmbodied - "operational-carbon": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-energy-kwh", "grid/carbon-intensity"] - output-parameter: "carbon-operational" + "sci-o": + path: "@grnsft/if-plugins" + method: SciO "sci": path: "builtin" method: Sci global-config: - functional-unit: requests # factor to convert per time to per f.unit + functional-unit: "requests" "sum-carbon": path: "builtin" method: Sum @@ -79,18 +42,17 @@ initialize: end-time: "2023-12-12T00:01:00.000Z" interval: 5 allow-padding: true + "group-by": + path: builtin + method: GroupBy tree: children: child-1: pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio + - teads-curve + - sci-e - sci-embodied - - operational-carbon + - sci-o - sum-carbon - time-sync - sci @@ -105,8 +67,8 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-total: 8 - vcpus-allocated: 1 + resources-reserved: 1 + resources-total: 8 inputs: - timestamp: "2023-12-12T00:00:00.000Z" cloud/instance-type: A1 @@ -134,14 +96,10 @@ tree: requests: 30 child-2: pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio + - teads-curve + - sci-e - sci-embodied - - operational-carbon + - sci-o - sum-carbon - time-sync - sci @@ -156,8 +114,8 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-total: 8 - vcpus-allocated: 1 + resources-reserved: 1 + resources-total: 8 inputs: - timestamp: "2023-12-12T00:00:00.000Z" duration: 1 diff --git a/manifests/examples/pipeline-with-mocks.yml b/manifests/examples/pipelines/pipeline-with-mocks.yml similarity index 65% rename from manifests/examples/pipeline-with-mocks.yml rename to manifests/examples/pipelines/pipeline-with-mocks.yml index 168ebd7fe..008e319b1 100644 --- a/manifests/examples/pipeline-with-mocks.yml +++ b/manifests/examples/pipelines/pipeline-with-mocks.yml @@ -25,57 +25,20 @@ initialize: cpu/utilization: min: 1 max: 99 - "interpolate": - method: Interpolation - path: 'builtin' + "teads-curve": + path: "@grnsft/if-unofficial-plugins" + method: TeadsCurve global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - "cpu-factor-to-wattage": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-factor", "cpu/thermal-design-power"] - output-parameter: "cpu-wattage" - "wattage-times-duration": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-wattage", "duration"] - output-parameter: "cpu-wattage-times-duration" - "wattage-to-energy-kwh": - method: Divide - path: "builtin" - global-config: - numerator: cpu-wattage-times-duration - denominator: 3600000 - output: cpu-energy-raw - "calculate-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: vcpus-total - denominator: vcpus-allocated - output: vcpu-ratio - "correct-cpu-energy-for-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: cpu-energy-raw - denominator: vcpu-ratio - output: cpu-energy-kwh + interpolation: spline + "sci-e": + path: "@grnsft/if-plugins" + method: SciE "sci-embodied": path: "builtin" method: SciEmbodied - "operational-carbon": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-energy-kwh", "grid/carbon-intensity"] - output-parameter: "carbon-operational" + "sci-o": + path: "@grnsft/if-plugins" + method: SciO "sum-carbon": path: "builtin" method: Sum @@ -105,14 +68,10 @@ tree: children: child-1: pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio + - teads-curve + - sci-e - sci-embodied - - operational-carbon + - sci-o - sum-carbon - time-sync - sci @@ -127,8 +86,9 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-total: 8 - vcpus-allocated: 1 + resources-reserved: 1 + resources-total: 8 + functional-unit-time: "1 min" inputs: - timestamp: "2023-12-12T00:00:00.000Z" cloud/instance-type: A1 @@ -156,14 +116,10 @@ tree: requests: 50 child-2: pipeline: - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio + - teads-curve + - sci-e - sci-embodied - - operational-carbon + - sci-o - sum-carbon - time-sync - sci @@ -178,8 +134,9 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - vcpus-total: 8 - vcpus-allocated: 1 + resources-reserved: 1 + resources-total: 8 + functional-unit-time: "1 min" inputs: - timestamp: "2023-12-12T00:00:00.000Z" duration: 1 diff --git a/manifests/examples/sci.yml b/manifests/examples/pipelines/sci.yml similarity index 100% rename from manifests/examples/sci.yml rename to manifests/examples/pipelines/sci.yml diff --git a/manifests/examples/teads-curve.yml b/manifests/examples/pipelines/teads-curve.yml similarity index 100% rename from manifests/examples/teads-curve.yml rename to manifests/examples/pipelines/teads-curve.yml diff --git a/manifests/examples/region-metadata.yml b/manifests/examples/region-metadata.yml deleted file mode 100644 index d43b5bc65..000000000 --- a/manifests/examples/region-metadata.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: csv-demo -description: -tags: -initialize: - plugins: - cloud-region-metadata: - method: CSVLookup - path: "builtin" - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv - query: - cloud-provider: cloud-provider - cloud-region: cloud-region - output: "*" -tree: - children: - child: - pipeline: - - cloud-region-metadata - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cpu/energy: 0.001 - instance-id: AMD A10-9700 - cloud-provider: "Google Cloud" - cloud-region: "asia-east1" diff --git a/manifests/examples/tdp-finder.yml b/manifests/examples/tdp-finder.yml deleted file mode 100644 index 5ce1b5903..000000000 --- a/manifests/examples/tdp-finder.yml +++ /dev/null @@ -1,23 +0,0 @@ -name: csv-demo -description: -tags: -initialize: - plugins: - tdp-finder: - method: CSVLookup - path: "builtin" - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/tdp-data-1.csv - query: - name: instance-id - output: "tdp" -tree: - children: - child: - pipeline: - - tdp-finder - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cpu/energy: 0.001 - instance-id: "AMD A10-9700" diff --git a/manifests/examples/zeros.yaml b/manifests/examples/zeros.yaml deleted file mode 100644 index da5541789..000000000 --- a/manifests/examples/zeros.yaml +++ /dev/null @@ -1,130 +0,0 @@ -name: generics -description: a pipeline that does arbitrary calculations using our generic arithmetic builtins -tags: -initialize: - plugins: - "sum-zero-and-one": - path: "builtin" - method: Sum - global-config: - input-parameters: - - some-value - - zero-value - output-parameter: one-plus-zero - "sum-zero-and-zero": - path: "builtin" - method: Sum - global-config: - input-parameters: - - zero-value - - zero-value - output-parameter: zero-plus-zero - "subtract-one-and-zero": - path: "builtin" - method: Subtract - global-config: - input-parameters: - - some-value - - zero-value - output-parameter: one-minus-zero - "subtract-zero-and-zero": - path: "builtin" - method: Sum - global-config: - input-parameters: - - zero-value - - zero-value - output-parameter: zero-minus-zero - "subtract-zero-and-one": - path: "builtin" - method: Subtract - global-config: - input-parameters: - - zero-value - - some-value - output-parameter: zero-minus-one - "coefficient-one-times-zero": - path: "builtin" - method: Coefficient - global-config: - input-parameter: zero-value - coefficient: 1 - output-parameter: zero-times-one-coefficient - "coefficient-zero-times-one": - path: "builtin" - method: Coefficient - global-config: - input-parameter: some-value - coefficient: 0 - output-parameter: one-times-zero-coefficient - "coefficient-zero-times-zero": - path: "builtin" - method: Coefficient - global-config: - input-parameter: zero-value - coefficient: 0 - output-parameter: zero-times-zero-coefficient - "multiply-one-times-zero": - path: "builtin" - method: Multiply - global-config: - input-parameters: ["some-value", "zero-value"] - output-parameter: "one-times-zero" - "multiply-zero-times-one": - path: "builtin" - method: Multiply - global-config: - input-parameters: ["zero-value", "zero-value"] - output-parameter: "zero-times-one" - exponent-one-to-zero: - method: Exponent - path: 'builtin' - global-config: - input-parameter: 'some-value' - exponent: 0 - output-parameter: 'one-raised-to-zero-power' - exponent-zero-to-zero: - method: Exponent - path: 'builtin' - global-config: - input-parameter: 'zero-value' - exponent: 0 - output-parameter: 'zero-raised-to-zero-power' - exponent-zero-to-one: - method: Exponent - path: 'builtin' - global-config: - input-parameter: 'zero-value' - exponent: 1 - output-parameter: 'zero-raised-to-first-power' - "sci": - path: "builtin" - method: Sci - global-config: - functional-unit: "zero-value" -tree: - children: - child-1: - pipeline: - - sum-zero-and-one - - sum-zero-and-zero - - subtract-one-and-zero - - subtract-zero-and-zero - - subtract-zero-and-one - - coefficient-one-times-zero - - coefficient-zero-times-one - - coefficient-zero-times-zero - - multiply-one-times-zero - - multiply-zero-times-one - - exponent-one-to-zero - - exponent-zero-to-one - - exponent-zero-to-zero - - sci - config: - defaults: - inputs: - - timestamp: "2023-12-12T00:00:00.000Z" - duration: 1 - some-value: 1 - zero-value: 0 - carbon: 10 diff --git a/manifests/features/aggregate-failure-invalid-metrics.yml b/manifests/features/aggregate-failure-invalid-metrics.yml deleted file mode 100644 index 7e4692509..000000000 --- a/manifests/features/aggregate-failure-invalid-metrics.yml +++ /dev/null @@ -1,49 +0,0 @@ -name: Aggregation -description: Fails with invalid metric. -aggregation: - metrics: - - 'test' - type: 'both' -initialize: - plugins: - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] -tree: - children: - application: - pipeline: - - cloud-metadata - children: - uk-west: - children: - server-1: - inputs: - - timestamp: '2024-02-26 00:00:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 89 - - timestamp: '2024-02-26 00:05:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 59 - server-2: - inputs: - - timestamp: '2024-02-26 00:00:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 24 - - timestamp: '2024-02-26 00:05:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 27 diff --git a/manifests/features/aggregate-failure-missing-metric-in-inputs.yml b/manifests/features/aggregate-failure-missing-metric-in-inputs.yml deleted file mode 100644 index eeff85290..000000000 --- a/manifests/features/aggregate-failure-missing-metric-in-inputs.yml +++ /dev/null @@ -1,49 +0,0 @@ -name: Aggregation -description: Fails with missing metric in inputs. -aggregation: - metrics: - - 'cpu/utilization' - type: 'both' -initialize: - plugins: - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] -tree: - children: - application: - pipeline: - - cloud-metadata - children: - uk-west: - children: - server-1: - inputs: - - timestamp: '2024-01-26 00:00:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 89 - - timestamp: '2024-02-26 00:05:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 59 - server-2: - inputs: - - timestamp: '2024-02-26 00:00:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - # cpu/utilization: 110 - - timestamp: '2024-02-26 00:15:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 27 diff --git a/manifests/features/aggregate-horizontal.yml b/manifests/features/aggregate-horizontal.yml deleted file mode 100644 index 8003c4214..000000000 --- a/manifests/features/aggregate-horizontal.yml +++ /dev/null @@ -1,50 +0,0 @@ -name: Aggregation -description: Apply `horizontal` aggregation -aggregation: - metrics: - - 'cpu/utilization' - type: 'horizontal' -initialize: - plugins: - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] -tree: - children: - application: - pipeline: - - cloud-metadata - children: - uk-west: - children: - server-1: - inputs: - - timestamp: '2024-02-26 00:00:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 89 - - timestamp: '2024-02-26 00:05:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 59 - server-2: - inputs: - - timestamp: '2024-02-26 00:00:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 24 - - timestamp: '2024-02-26 00:05:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 27 - \ No newline at end of file diff --git a/manifests/features/aggregate-vertical.yml b/manifests/features/aggregate-vertical.yml deleted file mode 100644 index 6308a01d0..000000000 --- a/manifests/features/aggregate-vertical.yml +++ /dev/null @@ -1,50 +0,0 @@ -name: Aggregation -description: Apply `vertical` aggregation -aggregation: - metrics: - - 'cpu/utilization' - type: 'vertical' -initialize: - plugins: - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] -tree: - children: - application: - pipeline: - - cloud-metadata - children: - uk-west: - children: - server-1: - inputs: - - timestamp: '2024-02-26 00:00:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 89 - - timestamp: '2024-02-26 00:05:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 59 - server-2: - inputs: - - timestamp: '2024-02-26 00:00:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 24 - - timestamp: '2024-02-26 00:05:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 27 - \ No newline at end of file diff --git a/manifests/features/aggregate.yml b/manifests/features/aggregate.yml deleted file mode 100644 index 04672cf38..000000000 --- a/manifests/features/aggregate.yml +++ /dev/null @@ -1,50 +0,0 @@ -name: Aggregation -description: Apply both `horizontal` and `vertical` aggregations -aggregation: - metrics: - - 'cpu/utilization' - type: 'both' -initialize: - plugins: - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] -tree: - children: - application: - pipeline: - - cloud-metadata - children: - uk-west: - children: - server-1: - inputs: - - timestamp: '2024-02-26 00:00:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 89 - - timestamp: '2024-02-26 00:05:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 59 - server-2: - inputs: - - timestamp: '2024-02-26 00:00:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 24 - - timestamp: '2024-02-26 00:05:00' - duration: 300 - cloud/instance-type: m5n.large - cloud/vendor: aws - cpu/utilization: 27 - \ No newline at end of file diff --git a/manifests/integrations/cloud-metadata-divide.yml b/manifests/integrations/cloud-metadata-divide.yml deleted file mode 100644 index 032206474..000000000 --- a/manifests/integrations/cloud-metadata-divide.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: divide-demo -description: -tags: -initialize: - plugins: - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] - divide: - method: Divide - path: "builtin" - global-config: - numerator: vcpus-allocated - denominator: 2 - output: cpu/number-cores -tree: - children: - child: - pipeline: - - cloud-metadata - - divide - config: - divide: - defaults: - cloud/vendor: aws - cloud/instance-type: m5n.large - cpu/name: Intel® Core™ i7-1185G7 - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cpu/utilization: 80 diff --git a/manifests/integrations/instance-metadata/failure-invalid-instance-type.yaml b/manifests/integrations/instance-metadata/failure-invalid-instance-type.yaml deleted file mode 100644 index 810dee072..000000000 --- a/manifests/integrations/instance-metadata/failure-invalid-instance-type.yaml +++ /dev/null @@ -1,33 +0,0 @@ -name: instance-metadata -description: -tags: -initialize: - plugins: - cloud-instance-metadata: - method: CSVLookup - path: "builtin" - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-azure-instances.csv - query: - instance-class: "cloud/instance-type" - output: "*" - extract-processor-name: - method: Regex - path: "builtin" - global-config: - parameter: cpu-model-name - match: /^([^,])+/g - output: cpu/name -tree: - children: - child: - pipeline: - - cloud-instance-metadata - - extract-processor-name - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cpu/energy: 0.001 - cloud/provider: gcp - cloud/region: asia-east - cloud/instance-type: m6 \ No newline at end of file diff --git a/manifests/integrations/instance-metadata/failure-invalid-provider.yaml b/manifests/integrations/instance-metadata/failure-invalid-provider.yaml deleted file mode 100644 index a362132e7..000000000 --- a/manifests/integrations/instance-metadata/failure-invalid-provider.yaml +++ /dev/null @@ -1,33 +0,0 @@ -name: instance-metadata -description: -tags: -initialize: - plugins: - cloud-instance-metadata: - method: CSVLookup - path: "builtin" - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-azure-instances.csv - query: - instance-class: "cloud/provider" - output: "*" - extract-processor-name: - method: Regex - path: "builtin" - global-config: - parameter: cpu-model-name - match: /^([^,])+/g - output: cpu/name -tree: - children: - child: - pipeline: - - cloud-instance-metadata - - extract-processor-name - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cpu/energy: 0.001 - cloud/provider: 6568 - cloud/region: asia-east - cloud/instance-type: Standard_A1_v2 diff --git a/manifests/integrations/instance-metadata/failure-missing-queried-input.yml b/manifests/integrations/instance-metadata/failure-missing-queried-input.yml deleted file mode 100644 index 37f4001ae..000000000 --- a/manifests/integrations/instance-metadata/failure-missing-queried-input.yml +++ /dev/null @@ -1,33 +0,0 @@ -name: instance-metadata -description: -tags: -initialize: - plugins: - cloud-instance-metadata: - method: CSVLookup - path: "builtin" - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-azure-instances.csv - query: - instance-class: "cloud/provider" - output: "*" - extract-processor-name: - method: Regex - path: "builtin" - global-config: - parameter: cpu-model-name - match: /^([^,])+/g - output: cpu/name -tree: - children: - child: - pipeline: - - cloud-instance-metadata - - extract-processor-name - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cpu/energy: 0.001 - # cloud/provider: gcp - cloud/region: asia-east - cloud/instance-type: Standard_A1_v2 \ No newline at end of file diff --git a/manifests/integrations/instance-metadata/success.yml b/manifests/integrations/instance-metadata/success.yml deleted file mode 100644 index d95115896..000000000 --- a/manifests/integrations/instance-metadata/success.yml +++ /dev/null @@ -1,33 +0,0 @@ -name: instance-metadata -description: -tags: -initialize: - plugins: - cloud-instance-metadata: - method: CSVLookup - path: "builtin" - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-azure-instances.csv - query: - instance-class: "cloud/instance-type" - output: "*" - extract-processor-name: - method: Regex - path: "builtin" - global-config: - parameter: cpu-model-name - match: /^([^,])+/g - output: cpu/name -tree: - children: - child: - pipeline: - - cloud-instance-metadata - - extract-processor-name - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cpu/energy: 0.001 - cloud/provider: gcp - cloud/region: asia-east - cloud/instance-type: Standard_A1_v2 \ No newline at end of file diff --git a/manifests/integrations/mock-obs-group-by-cloud-meta.yml b/manifests/integrations/mock-obs-group-by-cloud-meta.yml deleted file mode 100644 index 6b6196cab..000000000 --- a/manifests/integrations/mock-obs-group-by-cloud-meta.yml +++ /dev/null @@ -1,57 +0,0 @@ -name: My Manifest File -description: integration of mock observations, group by and cloud metadata -aggregation: - metrics: - - 'cpu/utilization' - type: 'both' -initialize: - # outputs: ['yaml'] - plugins: - group-by: - path: 'builtin' - method: GroupBy - global-config: - input-parameters: ['cpu/energy', 'grid/carbon-intensity'] - output-parameter: 'carbon' - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-azure-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-tdp'] - mock-observations: - path: 'builtin' - method: MockObservations - global-config: - timestamp-from: 2024-03-05T00:00 - timestamp-to: 2024-03-05T01:00 - duration: 300 - components: - - name: server-1 - cloud/instance-type: Standard_E64_v3 - cloud/region: eastus - - name: server-2 - cloud/instance-type: Standard_E64_v3 - cloud/region: france - generators: - common: - geolocation: 37.7749,-122.4194 - cloud/vendor: azure - randint: - cpu/utilization: - min: 1 - max: 99 -tree: - pipeline: - - mock-observations - - group-by - - cloud-metadata - config: - group-by: - group: - - name - - cloud/instance-type - inputs: null diff --git a/manifests/integrations/mock-obs-groupby.yml b/manifests/integrations/mock-obs-groupby.yml deleted file mode 100644 index 39c37e2c8..000000000 --- a/manifests/integrations/mock-obs-groupby.yml +++ /dev/null @@ -1,39 +0,0 @@ -name: Mock observations + Group by -description: Integration of `mock observations` + `groupby plugins` -initialize: - plugins: - mock-observations: - path: 'builtin' - method: MockObservations - global-config: - timestamp-from: '2024-03-05T00:00:00.000Z' - timestamp-to: '2024-03-05T00:01:00.000Z' - duration: 10 - components: - - name: server-1 - cloud/instance-type: Standard_E64_v3 - cloud/region: westus3 - - name: server-2 - cloud/instance-type: Standard_E64_v3 - cloud/region: france - generators: - common: - cloud/vendor: azure - randint: - cpu/utilization: - min: 1 - max: 99 - group-by: - path: 'builtin' - method: GroupBy -tree: - pipeline: - - mock-observations - - group-by - defaults: - config: - group-by: - group: - - cloud/region - - name - inputs: null diff --git a/manifests/integrations/mock-obs-time-sync.yml b/manifests/integrations/mock-obs-time-sync.yml deleted file mode 100644 index f1f176eb3..000000000 --- a/manifests/integrations/mock-obs-time-sync.yml +++ /dev/null @@ -1,110 +0,0 @@ -name: Mock observation and time sync integration -description: Integration of `mock observation` + `time sync` -tags: -initialize: - plugins: - mock-observations: - kind: plugin - method: MockObservations - path: "builtin" - global-config: - timestamp-from: 2023-07-06T00:00 - timestamp-to: 2023-07-06T00:10 - duration: 60 - components: - - cloud/instance-type: A1 - generators: - common: - cloud/region: uk-west - common-key: common-val - randint: - cpu/utilization: - min: 1 - max: 99 - "interpolate": - method: Interpolation - path: 'builtin' - global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: 'cpu/utilization' - output-parameter: 'cpu-factor' - "cpu-factor-to-wattage": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-factor", "cpu/thermal-design-power"] - output-parameter: "cpu-wattage" - "wattage-times-duration": - method: Multiply - path: builtin - global-config: - input-parameters: ["cpu-wattage", "duration"] - output-parameter: "cpu-wattage-times-duration" - "wattage-to-energy-kwh": - method: Divide - path: "builtin" - global-config: - numerator: cpu-wattage-times-duration - denominator: 3600000 - output: cpu-energy-raw - "calculate-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: vcpus-total - denominator: vcpus-allocated - output: vcpu-ratio - "correct-cpu-energy-for-vcpu-ratio": - method: Divide - path: "builtin" - global-config: - numerator: cpu-energy-raw - denominator: vcpu-ratio - output: cpu-energy-kwh - "time-sync": - method: TimeSync - path: "builtin" - global-config: - start-time: "2023-12-12T00:00:00.000Z" - end-time: "2023-12-12T00:01:00.000Z" - interval: 5 - allow-padding: true -tree: - children: - child-1: - pipeline: - # - mock-observations - - interpolate - - cpu-factor-to-wattage - - wattage-times-duration - - wattage-to-energy-kwh - - calculate-vcpu-ratio - - correct-cpu-energy-for-vcpu-ratio - - time-sync - defaults: - cpu/thermal-design-power: 100 - vcpus-total: 8 - vcpus-allocated: 1 - inputs: - - timestamp: "2023-12-12T00:00:00.000Z" - cloud/instance-type: A1 - cloud/region: uk-west - duration: 1 - cpu/utilization: 10 - - timestamp: "2023-12-12T00:00:01.000Z" - duration: 5 - cpu/utilization: 20 - cloud/instance-type: A1 - cloud/region: uk-west - - timestamp: "2023-12-12T00:00:06.000Z" - duration: 7 - cpu/utilization: 15 - cloud/instance-type: A1 - cloud/region: uk-west - - timestamp: "2023-12-12T00:00:13.000Z" - duration: 30 - cloud/instance-type: A1 - cloud/region: uk-west - cpu/utilization: 15 diff --git a/manifests/outputs/bugs/aggregation-error-wrong-metric.yaml b/manifests/outputs/bugs/aggregation-error-wrong-metric.yaml new file mode 100644 index 000000000..fc0ac48b0 --- /dev/null +++ b/manifests/outputs/bugs/aggregation-error-wrong-metric.yaml @@ -0,0 +1,243 @@ +name: aggregation-error-wrong-metric +description: >- + a negative test case that fails due to the aggregation feature being passed an + incorrect metric +tags: null +aggregation: + metrics: + - dummy-param + type: both +initialize: + outputs: + - yaml + plugins: + interpolate: + method: Interpolation + path: builtin + global-config: + method: linear + x: + - 0 + - 10 + - 50 + - 100 + 'y': + - 0.12 + - 0.32 + - 0.75 + - 1.02 + input-parameter: cpu/utilization + output-parameter: cpu-factor + cpu-factor-to-wattage: + method: Multiply + path: builtin + global-config: + input-parameters: + - cpu-factor + - cpu/thermal-design-power + output-parameter: cpu-wattage + wattage-times-duration: + method: Multiply + path: builtin + global-config: + input-parameters: + - cpu-wattage + - duration + output-parameter: cpu-wattage-times-duration + wattage-to-energy-kwh: + method: Divide + path: builtin + global-config: + numerator: cpu-wattage-times-duration + denominator: 3600000 + output: cpu-energy-raw + calculate-vcpu-ratio: + method: Divide + path: builtin + global-config: + numerator: vcpus-total + denominator: vcpus-allocated + output: vcpu-ratio + correct-cpu-energy-for-vcpu-ratio: + method: Divide + path: builtin + global-config: + numerator: cpu-energy-raw + denominator: vcpu-ratio + output: cpu-energy-kwh + sci-embodied: + path: builtin + method: SciEmbodied + operational-carbon: + method: Multiply + path: builtin + global-config: + input-parameters: + - cpu-energy-kwh + - grid/carbon-intensity + output-parameter: carbon + sci: + path: builtin + method: Sci + global-config: + functional-unit: requests + time-sync: + method: TimeSync + path: builtin + global-config: + start-time: '2023-12-12T00:00:00.000Z' + end-time: '2023-12-12T00:01:00.000Z' + interval: 5 + allow-padding: true + group-by: + path: builtin + method: GroupBy +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/bugs/aggregation-error-wrong-metric.yml -o + manifests/outputs/bugs/aggregation-error-wrong-metric + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T19:25:34.759Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + MissingAggregationParamError: Aggregation metric dummy-param is not found in + inputs[0]. +tree: + children: + child-1: + pipeline: + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio + - sci-embodied + - operational-carbon + - time-sync + - sci + config: + group-by: + group: + - cloud/region + - cloud/instance-type + defaults: + cpu/thermal-design-power: 100 + grid/carbon-intensity: 800 + device/emissions-embodied: 1533.12 + time-reserved: 3600 + device/expected-lifespan: 94608000 + vcpus-allocated: 1 + vcpus-total: 8 + inputs: + - timestamp: '2023-12-12T00:00:00.000Z' + cloud/instance-type: A1 + cloud/region: uk-west + duration: 1 + cpu/utilization: 10 + requests: 100 + - timestamp: '2023-12-12T00:00:01.000Z' + duration: 5 + cpu/utilization: 20 + cloud/instance-type: A1 + cloud/region: uk-west + requests: 100 + - timestamp: '2023-12-12T00:00:06.000Z' + duration: 7 + cpu/utilization: 15 + cloud/instance-type: A1 + cloud/region: uk-west + requests: 100 + - timestamp: '2023-12-12T00:00:13.000Z' + duration: 30 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 15 + requests: 100 + child-2: + pipeline: + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio + - sci-embodied + - operational-carbon + - time-sync + - sci + config: + group-by: + group: + - cloud/region + - cloud/instance-type + defaults: + cpu/thermal-design-power: 100 + grid/carbon-intensity: 800 + device/emissions-embodied: 1533.12 + time-reserved: 3600 + device/expected-lifespan: 94608000 + vcpus-allocated: 1 + vcpus-total: 8 + inputs: + - timestamp: '2023-12-12T00:00:00.000Z' + duration: 1 + cpu/utilization: 30 + cloud/instance-type: A1 + cloud/region: uk-west + requests: 100 + - timestamp: '2023-12-12T00:00:01.000Z' + duration: 5 + cpu/utilization: 28 + cloud/instance-type: A1 + cloud/region: uk-west + requests: 100 + - timestamp: '2023-12-12T00:00:06.000Z' + duration: 7 + cpu/utilization: 40 + cloud/instance-type: A1 + cloud/region: uk-west + requests: 100 + - timestamp: '2023-12-12T00:00:13.000Z' + duration: 30 + cpu/utilization: 33 + cloud/instance-type: A1 + cloud/region: uk-west + requests: 100 diff --git a/manifests/outputs/bugs/initialize-error-no-config.yaml b/manifests/outputs/bugs/initialize-error-no-config.yaml new file mode 100644 index 000000000..9d3c21a68 --- /dev/null +++ b/manifests/outputs/bugs/initialize-error-no-config.yaml @@ -0,0 +1,81 @@ +name: initialize-error-no-config +description: >- + a negative test case that fails due to plugin initialization missing some + required config +tags: null +initialize: + outputs: + - yaml + plugins: + interpolate: + method: Interpolation + path: builtin + global-config: null +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/bugs/initialize-error-no-config.yml -o + manifests/outputs/bugs/initialize-error-no-config + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T19:45:41.936Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + ManifestValidationError: "initialize.plugins.interpolate.global-config" + parameter is expected object, received null. Error code: invalid_type. +tree: + children: + child-0: + defaults: + cpu/thermal-design-power: 100 + pipeline: + - interpolate + inputs: + - timestamp: 2023-07-06T00:00 + duration: 1 + cpu/utilization: 20 + - timestamp: 2023-07-06T00:01 + duration: 1 + cpu/utilization: 80 + - timestamp: 2023-07-06T00:02 + duration: 1 + cpu/utilization: 20 diff --git a/manifests/outputs/bugs/initialize-error-no-path.yaml b/manifests/outputs/bugs/initialize-error-no-path.yaml new file mode 100644 index 000000000..77483ac27 --- /dev/null +++ b/manifests/outputs/bugs/initialize-error-no-path.yaml @@ -0,0 +1,94 @@ +name: initialize-error-no-path +description: >- + a negative test case that fails because the path is mising in a plugin + initialization +tags: null +initialize: + plugins: + interpolate: + method: Interpolation + path: null + global-config: + method: linear + x: + - 0 + - 10 + - 50 + - 100 + 'y': + - 0.12 + - 0.32 + - 0.75 + - 1.02 + input-parameter: cpu/utilization + output-parameter: cpu-factor + outputs: + - yaml +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/bugs/initialize-error-no-path.yml -o + manifests/outputs/bugs/initialize-error-no-path + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T19:57:11.499Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + ManifestValidationError: "initialize.plugins.interpolate.path" parameter is + expected string, received null. Error code: invalid_type. +tree: + children: + child-0: + defaults: + cpu/thermal-design-power: 100 + pipeline: + - interpolate + inputs: + - timestamp: 2023-07-06T00:00 + duration: 1 + cpu/utilization: 20 + - timestamp: 2023-07-06T00:01 + duration: 1 + cpu/utilization: 80 + - timestamp: 2023-07-06T00:02 + duration: 1 + cpu/utilization: 20 diff --git a/manifests/outputs/bugs/initialize-error-no-plugins.yaml b/manifests/outputs/bugs/initialize-error-no-plugins.yaml new file mode 100644 index 000000000..0324550ee --- /dev/null +++ b/manifests/outputs/bugs/initialize-error-no-plugins.yaml @@ -0,0 +1,77 @@ +name: initialize-error-no-path +description: >- + a negative test case that fails becuase no plugins are included in the + initialize block +tags: null +initialize: + plugins: null + outputs: + - yaml +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/bugs/initialize-error-no-plugins.yml -o + manifests/outputs/bugs/initialize-error-no-plugins + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T19:52:35.214Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + ManifestValidationError: "initialize.plugins" parameter is expected object, + received null. Error code: invalid_type. +tree: + children: + child-0: + defaults: + cpu/thermal-design-power: 100 + pipeline: + - teads-curve + inputs: + - timestamp: 2023-07-06T00:00 + duration: 1 + cpu/utilization: 20 + - timestamp: 2023-07-06T00:01 + duration: 1 + cpu/utilization: 80 + - timestamp: 2023-07-06T00:02 + duration: 1 + cpu/utilization: 20 diff --git a/manifests/outputs/bugs/input-error-missing-duration.yaml b/manifests/outputs/bugs/input-error-missing-duration.yaml new file mode 100644 index 000000000..7a9a53b8e --- /dev/null +++ b/manifests/outputs/bugs/input-error-missing-duration.yaml @@ -0,0 +1,87 @@ +name: input-error-missing-duration +description: >- + a negative test case that fails due to the required `duration` field being + omitted from input data +tags: null +initialize: + plugins: + interpolate: + method: Interpolation + path: builtin + global-config: + method: linear + x: + - 0 + - 10 + - 50 + - 100 + 'y': + - 0.12 + - 0.32 + - 0.75 + - 1.02 + input-parameter: cpu/utilization + output-parameter: cpu-factor + outputs: + - yaml +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/bugs/input-error-missing-duration.yml -o + manifests/outputs/bugs/input-error-missing-duration + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T19:59:58.987Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "duration" parameter is required at index 0. Error + code: invalid_type. +tree: + children: + child-0: + defaults: + cpu/thermal-design-power: 100 + pipeline: + - interpolate + inputs: + - timestamp: 2023-07-06T00:00 + cpu/utilization: 20 diff --git a/manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml b/manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml new file mode 100644 index 000000000..6af109ec0 --- /dev/null +++ b/manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml @@ -0,0 +1,84 @@ +name: mock-observation-demo +description: a manifest demonstrating how to use the mock observations feature +tags: null +initialize: + outputs: + - yaml + plugins: + mock-observations: + kind: plugin + method: MockObservations + path: builtin + global-config: + timestamp-from: 2023-07-06T00:00 + timestamp-to: 2023-07-06T00:10 + duration: 0 + components: + - cloud/instance-type: A1 + - cloud/instance-type: B1 + generators: + common: + region: uk-west + common-key: common-val + randint: + cpu/utilization: + min: 1 + max: 99 + memory/utilization: + min: 1 + max: 99 +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yml -o + manifests/outputs/bugs/mock-observations-failure-duration-is-zero + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T20:02:22.596Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: 'RangeError: Maximum call stack size exceeded' +tree: + children: + child: + pipeline: + - mock-observations + inputs: null diff --git a/manifests/outputs/bugs/pipeline-error-naming-mismatch.yaml b/manifests/outputs/bugs/pipeline-error-naming-mismatch.yaml new file mode 100644 index 000000000..b7885a361 --- /dev/null +++ b/manifests/outputs/bugs/pipeline-error-naming-mismatch.yaml @@ -0,0 +1,94 @@ +name: pipeline-error-naming-mismatch +description: >- + a negative test case that fails due to the plugin name in the pipeline not + matching the name given in initialize +tags: null +initialize: + plugins: + interpolate: + method: Interpolation + path: builtin + global-config: + method: linear + x: + - 0 + - 10 + - 50 + - 100 + 'y': + - 0.12 + - 0.32 + - 0.75 + - 1.02 + input-parameter: cpu/utilization + output-parameter: cpu-factor + outputs: + - yaml +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/bugs/pipeline-error-naming-mismatch.yml -o + manifests/outputs/bugs/pipeline-error-naming-mismatch + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T20:06:51.254Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + PluginInitializationError: Not initalized plugin: wrong-name. Check if + wrong-name is in 'manifest.initalize.plugins'. +tree: + children: + child-0: + defaults: + cpu/thermal-design-power: 100 + pipeline: + - wrong-name + inputs: + - timestamp: 2023-07-06T00:00 + duration: 1 + cpu/utilization: 20 + - timestamp: 2023-07-06T00:01 + duration: 1 + cpu/utilization: 80 + - timestamp: 2023-07-06T00:02 + duration: 1 + cpu/utilization: 20 diff --git a/manifests/outputs/bugs/pipeline-error-uninitialized-plugin.yaml b/manifests/outputs/bugs/pipeline-error-uninitialized-plugin.yaml new file mode 100644 index 000000000..75d87e3be --- /dev/null +++ b/manifests/outputs/bugs/pipeline-error-uninitialized-plugin.yaml @@ -0,0 +1,95 @@ +name: pipeline-uninitialized-plugin-error +description: >- + a negative test case that fails due to an uninitialized plugin being invoked + in a pipeline +tags: null +initialize: + outputs: + - yaml + plugins: + interpolate: + method: Interpolation + path: builtin + global-config: + method: linear + x: + - 0 + - 10 + - 50 + - 100 + 'y': + - 0.12 + - 0.32 + - 0.75 + - 1.02 + input-parameter: cpu/utilization + output-parameter: cpu-factor +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/bugs/pipeline-error-uninitialized-plugin.yml -o + manifests/outputs/bugs/pipeline-error-uninitialized-plugin + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T20:08:51.260Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + PluginInitializationError: Not initalized plugin: multiply. Check if + multiply is in 'manifest.initalize.plugins'. +tree: + children: + child-0: + defaults: + cpu/thermal-design-power: 100 + pipeline: + - interpolate + - multiply + inputs: + - timestamp: 2023-07-06T00:00 + duration: 1 + cpu/utilization: 20 + - timestamp: 2023-07-06T00:01 + duration: 1 + cpu/utilization: 80 + - timestamp: 2023-07-06T00:02 + duration: 1 + cpu/utilization: 20 diff --git a/manifests/outputs/bugs/pipeline-ordering-error.yaml b/manifests/outputs/bugs/pipeline-ordering-error.yaml new file mode 100644 index 000000000..c167f5e39 --- /dev/null +++ b/manifests/outputs/bugs/pipeline-ordering-error.yaml @@ -0,0 +1,158 @@ +name: pipeline-ordering-error +description: >- + a negative test case that fails because sci-o is invoked too early in the + pipeline (before its inputs are generated) +tags: null +initialize: + outputs: + - yaml + plugins: + interpolate: + method: Interpolation + path: builtin + global-config: + method: linear + x: + - 0 + - 10 + - 50 + - 100 + 'y': + - 0.12 + - 0.32 + - 0.75 + - 1.02 + input-parameter: cpu/utilization + output-parameter: cpu-factor + cpu-factor-to-wattage: + method: Multiply + path: builtin + global-config: + input-parameters: + - cpu-factor + - cpu/thermal-design-power + output-parameter: cpu-wattage + wattage-times-duration: + method: Multiply + path: builtin + global-config: + input-parameters: + - cpu-wattage + - duration + output-parameter: cpu-wattage-times-duration + wattage-to-energy-kwh: + method: Divide + path: builtin + global-config: + numerator: cpu-wattage-times-duration + denominator: 3600000 + output: cpu-energy-raw + calculate-vcpu-ratio: + method: Divide + path: builtin + global-config: + numerator: vcpus-total + denominator: vcpus-allocated + output: vcpu-ratio + correct-cpu-energy-for-vcpu-ratio: + method: Divide + path: builtin + global-config: + numerator: cpu-energy-raw + denominator: vcpu-ratio + output: cpu-energy-kwh +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/bugs/pipeline-ordering-error.yml -o + manifests/outputs/bugs/pipeline-ordering-error + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T20:14:29.109Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "cpu-energy-raw" parameter is required. Error code: + invalid_type. +tree: + children: + child-1: + pipeline: + - interpolate + - correct-cpu-energy-for-vcpu-ratio + - calculate-vcpu-ratio + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + config: null + defaults: + cpu/thermal-design-power: 100 + grid/carbon-intensity: 800 + device/emissions-embodied: 1533.12 + time-reserved: 3600 + device/expected-lifespan: 94608000 + vcpus-allocated: 1 + vcpus-total: 8 + inputs: + - timestamp: '2023-12-12T00:00:00.000Z' + cloud/instance-type: A1 + cloud/region: uk-west + duration: 1 + cpu/utilization: 50 + network/energy: 0.000001 + - timestamp: '2023-12-12T00:00:01.000Z' + duration: 5 + cpu/utilization: 20 + cloud/instance-type: A1 + cloud/region: uk-west + network/energy: 0.000001 + - timestamp: '2023-12-12T00:00:06.000Z' + duration: 7 + cpu/utilization: 15 + cloud/instance-type: A1 + cloud/region: uk-west + network/energy: 0.000001 + - timestamp: '2023-12-12T00:00:13.000Z' + duration: 30 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 15 + network/energy: 0.000001 diff --git a/manifests/outputs/bugs/sci-embodied-missing-resources-total.yaml b/manifests/outputs/bugs/sci-embodied-missing-resources-total.yaml new file mode 100644 index 000000000..add3499be --- /dev/null +++ b/manifests/outputs/bugs/sci-embodied-missing-resources-total.yaml @@ -0,0 +1,76 @@ +name: sci-embodied +description: >- + receiving incorrect error message when running sci-embodied without + `resources-total` issue +tags: null +initialize: + outputs: + - yaml + plugins: + sci-embodied: + method: SciEmbodied + path: builtin +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/bugs/sci-embodied-missing-resources-total.yml -o + manifests/outputs/bugs/sci-embodied-missing-resources-total + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T20:17:30.390Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "vcpus-allocated" parameter is required. Error code: + invalid_union. +tree: + children: + child: + pipeline: + - sci-embodied + defaults: + device/emissions-embodied: 1533.12 + time-reserved: 3600 + device/expected-lifespan: 94608000 + resources-reserved: 1 + inputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 diff --git a/manifests/outputs/features/aggregate-failure-invalid-metrics.yaml b/manifests/outputs/features/aggregate-failure-invalid-metrics.yaml new file mode 100644 index 000000000..a332f8476 --- /dev/null +++ b/manifests/outputs/features/aggregate-failure-invalid-metrics.yaml @@ -0,0 +1,104 @@ +name: Aggregation +description: Fails with invalid metric. +aggregation: + metrics: + - test + type: both +initialize: + outputs: + - yaml + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/features/aggregate-failure-invalid-metrics.yml -o + manifests/outputs/features/aggregate-failure-invalid-metrics + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T20:25:17.348Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + MissingAggregationParamError: Aggregation metric test is not found in + inputs[0]. +tree: + children: + application: + pipeline: + - cloud-metadata + children: + uk-west: + children: + server-1: + inputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 89 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 59 + server-2: + inputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 24 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 27 diff --git a/manifests/outputs/features/aggregate-failure-missing-metric-in-inputs.yaml b/manifests/outputs/features/aggregate-failure-missing-metric-in-inputs.yaml new file mode 100644 index 000000000..2aeb03fab --- /dev/null +++ b/manifests/outputs/features/aggregate-failure-missing-metric-in-inputs.yaml @@ -0,0 +1,103 @@ +name: Aggregation +description: Fails with missing metric in inputs. +aggregation: + metrics: + - cpu/utilization + type: both +initialize: + outputs: + - yaml + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/features/aggregate-failure-missing-metric-in-inputs.yml -o + manifests/outputs/features/aggregate-failure-missing-metric-in-inputs + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T20:26:58.250Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + MissingAggregationParamError: Aggregation metric cpu/utilization is not + found in inputs[0]. +tree: + children: + application: + pipeline: + - cloud-metadata + children: + uk-west: + children: + server-1: + inputs: + - timestamp: '2024-01-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 89 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 59 + server-2: + inputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + - timestamp: '2024-02-26 00:15:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 27 diff --git a/manifests/outputs/features/aggregate-horizontal.yaml b/manifests/outputs/features/aggregate-horizontal.yaml new file mode 100644 index 000000000..b0ee17210 --- /dev/null +++ b/manifests/outputs/features/aggregate-horizontal.yaml @@ -0,0 +1,131 @@ +name: Aggregation +description: Apply `horizontal` aggregation +aggregation: + metrics: + - cpu/utilization + type: horizontal +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/features/aggregate-horizontal.yml -o + manifests/outputs/features/aggregate-horizontal + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T20:28:27.168Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + application: + pipeline: + - cloud-metadata + children: + uk-west: + children: + server-1: + inputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 89 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 59 + outputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 89 + vcpus-allocated: 2 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 59 + vcpus-allocated: 2 + aggregated: + cpu/utilization: 74 + server-2: + inputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 24 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 27 + outputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 24 + vcpus-allocated: 2 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 27 + vcpus-allocated: 2 + aggregated: + cpu/utilization: 25.5 diff --git a/manifests/outputs/features/aggregate-vertical.yaml b/manifests/outputs/features/aggregate-vertical.yaml new file mode 100644 index 000000000..5a7695520 --- /dev/null +++ b/manifests/outputs/features/aggregate-vertical.yaml @@ -0,0 +1,154 @@ +name: Aggregation +description: Apply `vertical` aggregation +aggregation: + metrics: + - cpu/utilization + type: vertical +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/features/aggregate-vertical.yml -o + manifests/outputs/features/aggregate-vertical + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T20:32:47.459Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + application: + pipeline: + - cloud-metadata + children: + uk-west: + children: + server-1: + inputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 89 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 59 + outputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 89 + vcpus-allocated: 2 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 59 + vcpus-allocated: 2 + server-2: + inputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 24 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 27 + outputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 24 + vcpus-allocated: 2 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 27 + vcpus-allocated: 2 + outputs: + - cpu/utilization: 56.5 + timestamp: '2024-02-26 00:00:00' + duration: 300 + - cpu/utilization: 43 + timestamp: '2024-02-26 00:05:00' + duration: 300 + aggregated: + cpu/utilization: 49.75 + outputs: + - cpu/utilization: 56.5 + timestamp: '2024-02-26 00:00:00' + duration: 300 + - cpu/utilization: 43 + timestamp: '2024-02-26 00:05:00' + duration: 300 + aggregated: + cpu/utilization: 49.75 + outputs: + - cpu/utilization: 56.5 + timestamp: '2024-02-26 00:00:00' + duration: 300 + - cpu/utilization: 43 + timestamp: '2024-02-26 00:05:00' + duration: 300 + aggregated: + cpu/utilization: 49.75 diff --git a/manifests/outputs/features/aggregate.yaml b/manifests/outputs/features/aggregate.yaml new file mode 100644 index 000000000..91ef6a671 --- /dev/null +++ b/manifests/outputs/features/aggregate.yaml @@ -0,0 +1,158 @@ +name: Aggregation +description: Apply both `horizontal` and `vertical` aggregations +aggregation: + metrics: + - cpu/utilization + type: both +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/features/aggregate.yml -o + manifests/outputs/features/aggregate + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-01T20:34:35.981Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + application: + pipeline: + - cloud-metadata + children: + uk-west: + children: + server-1: + inputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 89 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 59 + outputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 89 + vcpus-allocated: 2 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 59 + vcpus-allocated: 2 + aggregated: + cpu/utilization: 74 + server-2: + inputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 24 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 27 + outputs: + - timestamp: '2024-02-26 00:00:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 24 + vcpus-allocated: 2 + - timestamp: '2024-02-26 00:05:00' + duration: 300 + cloud/instance-type: m5n.large + cloud/vendor: aws + cpu/utilization: 27 + vcpus-allocated: 2 + aggregated: + cpu/utilization: 25.5 + outputs: + - cpu/utilization: 56.5 + timestamp: '2024-02-26 00:00:00' + duration: 300 + - cpu/utilization: 43 + timestamp: '2024-02-26 00:05:00' + duration: 300 + aggregated: + cpu/utilization: 49.75 + outputs: + - cpu/utilization: 56.5 + timestamp: '2024-02-26 00:00:00' + duration: 300 + - cpu/utilization: 43 + timestamp: '2024-02-26 00:05:00' + duration: 300 + aggregated: + cpu/utilization: 49.75 + outputs: + - cpu/utilization: 56.5 + timestamp: '2024-02-26 00:00:00' + duration: 300 + - cpu/utilization: 43 + timestamp: '2024-02-26 00:05:00' + duration: 300 + aggregated: + cpu/utilization: 49.75 diff --git a/manifests/outputs/pipelines/cloud-metadata-divide.yaml b/manifests/outputs/pipelines/cloud-metadata-divide.yaml new file mode 100644 index 000000000..4b1f0ebba --- /dev/null +++ b/manifests/outputs/pipelines/cloud-metadata-divide.yaml @@ -0,0 +1,98 @@ +name: divide-demo +description: null +tags: null +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated + divide: + path: builtin + method: Divide + global-config: + numerator: vcpus-allocated + denominator: 2 + output: cpu/number-cores + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/pipelines/cloud-metadata-divide.yml -o + manifests/outputs/pipelines/cloud-metadata-divide + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T05:13:05.868Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - cloud-metadata + - divide + config: + divide: null + defaults: + cloud/vendor: aws + cloud/instance-type: m5n.large + cpu/name: Intel® Core™ i7-1185G7 + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/utilization: 80 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/utilization: 80 + cloud/vendor: aws + cloud/instance-type: m5n.large + cpu/name: Intel® Core™ i7-1185G7 + vcpus-allocated: 2 + cpu/number-cores: 1 diff --git a/manifests/outputs/pipelines/mock-obs-group-by-cloud-meta.yaml b/manifests/outputs/pipelines/mock-obs-group-by-cloud-meta.yaml new file mode 100644 index 000000000..81f4ee71b --- /dev/null +++ b/manifests/outputs/pipelines/mock-obs-group-by-cloud-meta.yaml @@ -0,0 +1,648 @@ +name: My Manifest File +description: integration of mock observations, group by and cloud metadata +aggregation: + metrics: + - cpu/utilization + type: both +initialize: + plugins: + group-by: + path: builtin + method: GroupBy + global-config: + input-parameters: + - cpu/energy + - grid/carbon-intensity + output-parameter: carbon + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-azure-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-tdp + mock-observations: + path: builtin + method: MockObservations + global-config: + timestamp-from: 2024-03-05T00:00 + timestamp-to: 2024-03-05T01:00 + duration: 300 + components: + - name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + - name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + generators: + common: + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + randint: + cpu/utilization: + min: 1 + max: 99 + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/pipelines/mock-obs-group-by-cloud-meta.yml -o + manifests/outputs/pipelines/mock-obs-group-by-cloud-meta + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T05:21:45.561Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + pipeline: + - mock-observations + - group-by + - cloud-metadata + config: + group-by: + group: + - name + - cloud/instance-type + children: + server-1: + children: + Standard_E64_v3: + inputs: + - timestamp: '2024-03-05T00:00:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 93 + - timestamp: '2024-03-05T00:05:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 6 + - timestamp: '2024-03-05T00:10:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 6 + - timestamp: '2024-03-05T00:15:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 3 + - timestamp: '2024-03-05T00:20:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 83 + - timestamp: '2024-03-05T00:25:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 85 + - timestamp: '2024-03-05T00:30:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 8 + - timestamp: '2024-03-05T00:35:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 59 + - timestamp: '2024-03-05T00:40:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 55 + - timestamp: '2024-03-05T00:45:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 85 + - timestamp: '2024-03-05T00:50:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 52 + - timestamp: '2024-03-05T00:55:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 54 + outputs: + - timestamp: '2024-03-05T00:00:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 93 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:05:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 6 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:10:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 6 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:15:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 3 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:20:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 83 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:25:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 85 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:30:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 8 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:35:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 59 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:40:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 55 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:45:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 85 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:50:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 52 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:55:00.000Z' + duration: 300 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: eastus + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 54 + cpu-tdp: 270 + aggregated: + cpu/utilization: 49.083333333333336 + outputs: + - cpu/utilization: 93 + timestamp: '2024-03-05T00:00:00.000Z' + duration: 300 + - cpu/utilization: 6 + timestamp: '2024-03-05T00:05:00.000Z' + duration: 300 + - cpu/utilization: 6 + timestamp: '2024-03-05T00:10:00.000Z' + duration: 300 + - cpu/utilization: 3 + timestamp: '2024-03-05T00:15:00.000Z' + duration: 300 + - cpu/utilization: 83 + timestamp: '2024-03-05T00:20:00.000Z' + duration: 300 + - cpu/utilization: 85 + timestamp: '2024-03-05T00:25:00.000Z' + duration: 300 + - cpu/utilization: 8 + timestamp: '2024-03-05T00:30:00.000Z' + duration: 300 + - cpu/utilization: 59 + timestamp: '2024-03-05T00:35:00.000Z' + duration: 300 + - cpu/utilization: 55 + timestamp: '2024-03-05T00:40:00.000Z' + duration: 300 + - cpu/utilization: 85 + timestamp: '2024-03-05T00:45:00.000Z' + duration: 300 + - cpu/utilization: 52 + timestamp: '2024-03-05T00:50:00.000Z' + duration: 300 + - cpu/utilization: 54 + timestamp: '2024-03-05T00:55:00.000Z' + duration: 300 + aggregated: + cpu/utilization: 49.083333333333336 + server-2: + children: + Standard_E64_v3: + inputs: + - timestamp: '2024-03-05T00:00:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 4 + - timestamp: '2024-03-05T00:05:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 63 + - timestamp: '2024-03-05T00:10:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 38 + - timestamp: '2024-03-05T00:15:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 10 + - timestamp: '2024-03-05T00:20:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 88 + - timestamp: '2024-03-05T00:25:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 81 + - timestamp: '2024-03-05T00:30:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 17 + - timestamp: '2024-03-05T00:35:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 11 + - timestamp: '2024-03-05T00:40:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 76 + - timestamp: '2024-03-05T00:45:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 63 + - timestamp: '2024-03-05T00:50:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 81 + - timestamp: '2024-03-05T00:55:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 74 + outputs: + - timestamp: '2024-03-05T00:00:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 4 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:05:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 63 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:10:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 38 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:15:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 10 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:20:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 88 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:25:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 81 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:30:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 17 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:35:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 11 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:40:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 76 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:45:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 63 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:50:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 81 + cpu-tdp: 270 + - timestamp: '2024-03-05T00:55:00.000Z' + duration: 300 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + geolocation: 37.7749,-122.4194 + cloud/vendor: azure + cpu/utilization: 74 + cpu-tdp: 270 + aggregated: + cpu/utilization: 50.5 + outputs: + - cpu/utilization: 4 + timestamp: '2024-03-05T00:00:00.000Z' + duration: 300 + - cpu/utilization: 63 + timestamp: '2024-03-05T00:05:00.000Z' + duration: 300 + - cpu/utilization: 38 + timestamp: '2024-03-05T00:10:00.000Z' + duration: 300 + - cpu/utilization: 10 + timestamp: '2024-03-05T00:15:00.000Z' + duration: 300 + - cpu/utilization: 88 + timestamp: '2024-03-05T00:20:00.000Z' + duration: 300 + - cpu/utilization: 81 + timestamp: '2024-03-05T00:25:00.000Z' + duration: 300 + - cpu/utilization: 17 + timestamp: '2024-03-05T00:30:00.000Z' + duration: 300 + - cpu/utilization: 11 + timestamp: '2024-03-05T00:35:00.000Z' + duration: 300 + - cpu/utilization: 76 + timestamp: '2024-03-05T00:40:00.000Z' + duration: 300 + - cpu/utilization: 63 + timestamp: '2024-03-05T00:45:00.000Z' + duration: 300 + - cpu/utilization: 81 + timestamp: '2024-03-05T00:50:00.000Z' + duration: 300 + - cpu/utilization: 74 + timestamp: '2024-03-05T00:55:00.000Z' + duration: 300 + aggregated: + cpu/utilization: 50.5 + outputs: + - cpu/utilization: 48.5 + timestamp: '2024-03-05T00:00:00.000Z' + duration: 300 + - cpu/utilization: 34.5 + timestamp: '2024-03-05T00:05:00.000Z' + duration: 300 + - cpu/utilization: 22 + timestamp: '2024-03-05T00:10:00.000Z' + duration: 300 + - cpu/utilization: 6.5 + timestamp: '2024-03-05T00:15:00.000Z' + duration: 300 + - cpu/utilization: 85.5 + timestamp: '2024-03-05T00:20:00.000Z' + duration: 300 + - cpu/utilization: 83 + timestamp: '2024-03-05T00:25:00.000Z' + duration: 300 + - cpu/utilization: 12.5 + timestamp: '2024-03-05T00:30:00.000Z' + duration: 300 + - cpu/utilization: 35 + timestamp: '2024-03-05T00:35:00.000Z' + duration: 300 + - cpu/utilization: 65.5 + timestamp: '2024-03-05T00:40:00.000Z' + duration: 300 + - cpu/utilization: 74 + timestamp: '2024-03-05T00:45:00.000Z' + duration: 300 + - cpu/utilization: 66.5 + timestamp: '2024-03-05T00:50:00.000Z' + duration: 300 + - cpu/utilization: 64 + timestamp: '2024-03-05T00:55:00.000Z' + duration: 300 + aggregated: + cpu/utilization: 49.791666666666664 diff --git a/manifests/outputs/pipelines/mock-obs-groupby.yaml b/manifests/outputs/pipelines/mock-obs-groupby.yaml new file mode 100644 index 000000000..29b5aff0a --- /dev/null +++ b/manifests/outputs/pipelines/mock-obs-groupby.yaml @@ -0,0 +1,181 @@ +name: Mock observations + Group by +description: Integration of `mock observations` + `groupby plugins` +initialize: + plugins: + mock-observations: + path: builtin + method: MockObservations + global-config: + timestamp-from: '2024-03-05T00:00:00.000Z' + timestamp-to: '2024-03-05T00:01:00.000Z' + duration: 10 + components: + - name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: westus3 + - name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + generators: + common: + cloud/vendor: azure + randint: + cpu/utilization: + min: 1 + max: 99 + group-by: + path: builtin + method: GroupBy + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/pipelines/mock-obs-groupby.yml -o + manifests/outputs/pipelines/mock-obs-groupby + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T05:27:34.757Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + pipeline: + - mock-observations + - group-by + defaults: null + config: + group-by: + group: + - cloud/region + - name + children: + westus3: + children: + server-1: + inputs: + - timestamp: '2024-03-05T00:00:00.000Z' + duration: 10 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: westus3 + cloud/vendor: azure + cpu/utilization: 12 + - timestamp: '2024-03-05T00:00:10.000Z' + duration: 10 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: westus3 + cloud/vendor: azure + cpu/utilization: 71 + - timestamp: '2024-03-05T00:00:20.000Z' + duration: 10 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: westus3 + cloud/vendor: azure + cpu/utilization: 75 + - timestamp: '2024-03-05T00:00:30.000Z' + duration: 10 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: westus3 + cloud/vendor: azure + cpu/utilization: 39 + - timestamp: '2024-03-05T00:00:40.000Z' + duration: 10 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: westus3 + cloud/vendor: azure + cpu/utilization: 42 + - timestamp: '2024-03-05T00:00:50.000Z' + duration: 10 + name: server-1 + cloud/instance-type: Standard_E64_v3 + cloud/region: westus3 + cloud/vendor: azure + cpu/utilization: 98 + france: + children: + server-2: + inputs: + - timestamp: '2024-03-05T00:00:00.000Z' + duration: 10 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + cloud/vendor: azure + cpu/utilization: 14 + - timestamp: '2024-03-05T00:00:10.000Z' + duration: 10 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + cloud/vendor: azure + cpu/utilization: 80 + - timestamp: '2024-03-05T00:00:20.000Z' + duration: 10 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + cloud/vendor: azure + cpu/utilization: 53 + - timestamp: '2024-03-05T00:00:30.000Z' + duration: 10 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + cloud/vendor: azure + cpu/utilization: 10 + - timestamp: '2024-03-05T00:00:40.000Z' + duration: 10 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + cloud/vendor: azure + cpu/utilization: 40 + - timestamp: '2024-03-05T00:00:50.000Z' + duration: 10 + name: server-2 + cloud/instance-type: Standard_E64_v3 + cloud/region: france + cloud/vendor: azure + cpu/utilization: 92 diff --git a/manifests/outputs/pipelines/mock-obs-time-sync.yaml b/manifests/outputs/pipelines/mock-obs-time-sync.yaml new file mode 100644 index 000000000..54c411b96 --- /dev/null +++ b/manifests/outputs/pipelines/mock-obs-time-sync.yaml @@ -0,0 +1,353 @@ +name: Mock observation and time sync integration +description: Integration of `mock observation` + `time sync` +tags: null +initialize: + plugins: + mock-observations: + path: builtin + method: MockObservations + global-config: + timestamp-from: 2023-07-06T00:00 + timestamp-to: 2023-07-06T00:10 + duration: 60 + components: + - cloud/instance-type: A1 + generators: + common: + cloud/region: uk-west + common-key: common-val + randint: + cpu/utilization: + min: 1 + max: 99 + interpolate: + path: builtin + method: Interpolation + global-config: + method: linear + x: + - 0 + - 10 + - 50 + - 100 + 'y': + - 0.12 + - 0.32 + - 0.75 + - 1.02 + input-parameter: cpu/utilization + output-parameter: cpu-factor + cpu-factor-to-wattage: + path: builtin + method: Multiply + global-config: + input-parameters: + - cpu-factor + - cpu/thermal-design-power + output-parameter: cpu-wattage + wattage-times-duration: + path: builtin + method: Multiply + global-config: + input-parameters: + - cpu-wattage + - duration + output-parameter: cpu-wattage-times-duration + wattage-to-energy-kwh: + path: builtin + method: Divide + global-config: + numerator: cpu-wattage-times-duration + denominator: 3600000 + output: cpu-energy-raw + calculate-vcpu-ratio: + path: builtin + method: Divide + global-config: + numerator: vcpus-total + denominator: vcpus-allocated + output: vcpu-ratio + correct-cpu-energy-for-vcpu-ratio: + path: builtin + method: Divide + global-config: + numerator: cpu-energy-raw + denominator: vcpu-ratio + output: cpu-energy-kwh + time-sync: + path: builtin + method: TimeSync + global-config: + start-time: '2023-12-12T00:00:00.000Z' + end-time: '2023-12-12T00:01:00.000Z' + interval: 5 + allow-padding: true + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/pipelines/mock-obs-time-sync.yml -o + manifests/outputs/pipelines/mock-obs-time-sync + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T05:29:47.787Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child-1: + pipeline: + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio + - time-sync + defaults: + cpu/thermal-design-power: 100 + vcpus-total: 8 + vcpus-allocated: 1 + inputs: + - timestamp: '2023-12-12T00:00:00.000Z' + cloud/instance-type: A1 + cloud/region: uk-west + duration: 1 + cpu/utilization: 10 + - timestamp: '2023-12-12T00:00:01.000Z' + duration: 5 + cpu/utilization: 20 + cloud/instance-type: A1 + cloud/region: uk-west + - timestamp: '2023-12-12T00:00:06.000Z' + duration: 7 + cpu/utilization: 15 + cloud/instance-type: A1 + cloud/region: uk-west + - timestamp: '2023-12-12T00:00:13.000Z' + duration: 30 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 15 + outputs: + - timestamp: '2023-12-12T00:00:00.000Z' + cloud/instance-type: A1 + cloud/region: uk-west + duration: 5 + cpu/utilization: 14 + cpu/thermal-design-power: 80 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0.662 + cpu-wattage: 66.19999999999999 + cpu-wattage-times-duration: 203 + cpu-energy-raw: 0.0000563888888888889 + vcpu-ratio: 14.399999999999999 + cpu-energy-kwh: 0.000007048611111111113 + - timestamp: '2023-12-12T00:00:05.000Z' + duration: 5 + cpu/utilization: 13 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/thermal-design-power: 80 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0.29907142857142854 + cpu-wattage: 29.907142857142862 + cpu-wattage-times-duration: 192.25 + cpu-energy-raw: 0.00005340277777777778 + vcpu-ratio: 6.171428571428571 + cpu-energy-kwh: 0.000006675347222222222 + - timestamp: '2023-12-12T00:00:10.000Z' + duration: 5 + cpu/utilization: 12 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/thermal-design-power: 80 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0.1850952380952381 + cpu-wattage: 18.50952380952381 + cpu-wattage-times-duration: 186.875 + cpu-energy-raw: 0.00005190972222222222 + vcpu-ratio: 3.9619047619047616 + cpu-energy-kwh: 0.0000064887152777777775 + - timestamp: '2023-12-12T00:00:15.000Z' + duration: 5 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 12 + cpu/thermal-design-power: 80 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0.06229166666666667 + cpu-wattage: 6.229166666666667 + cpu-wattage-times-duration: 186.875 + cpu-energy-raw: 0.00005190972222222223 + vcpu-ratio: 1.3333333333333333 + cpu-energy-kwh: 0.000006488715277777778 + - timestamp: '2023-12-12T00:00:20.000Z' + duration: 5 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 12 + cpu/thermal-design-power: 80 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0.06229166666666667 + cpu-wattage: 6.229166666666667 + cpu-wattage-times-duration: 186.875 + cpu-energy-raw: 0.00005190972222222223 + vcpu-ratio: 1.3333333333333333 + cpu-energy-kwh: 0.000006488715277777778 + - timestamp: '2023-12-12T00:00:25.000Z' + duration: 5 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 12 + cpu/thermal-design-power: 80 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0.06229166666666667 + cpu-wattage: 6.229166666666667 + cpu-wattage-times-duration: 186.875 + cpu-energy-raw: 0.00005190972222222223 + vcpu-ratio: 1.3333333333333333 + cpu-energy-kwh: 0.000006488715277777778 + - timestamp: '2023-12-12T00:00:30.000Z' + duration: 5 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 12 + cpu/thermal-design-power: 80 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0.06229166666666667 + cpu-wattage: 6.229166666666667 + cpu-wattage-times-duration: 186.875 + cpu-energy-raw: 0.00005190972222222223 + vcpu-ratio: 1.3333333333333333 + cpu-energy-kwh: 0.000006488715277777778 + - timestamp: '2023-12-12T00:00:35.000Z' + duration: 5 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 12 + cpu/thermal-design-power: 80 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0.06229166666666667 + cpu-wattage: 6.229166666666667 + cpu-wattage-times-duration: 186.875 + cpu-energy-raw: 0.00005190972222222223 + vcpu-ratio: 1.3333333333333333 + cpu-energy-kwh: 0.000006488715277777778 + - timestamp: '2023-12-12T00:00:40.000Z' + duration: 5 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 9 + cpu/thermal-design-power: 60 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0.037375 + cpu-wattage: 3.7375 + cpu-wattage-times-duration: 112.125 + cpu-energy-raw: 0.000031145833333333336 + vcpu-ratio: 0.8 + cpu-energy-kwh: 0.000003893229166666667 + - timestamp: '2023-12-12T00:00:45.000Z' + duration: 5 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 0 + cpu/thermal-design-power: 0 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0 + cpu-wattage: 0 + cpu-wattage-times-duration: 0 + cpu-energy-raw: 0 + vcpu-ratio: 0 + cpu-energy-kwh: 0 + - timestamp: '2023-12-12T00:00:50.000Z' + duration: 5 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 0 + cpu/thermal-design-power: 0 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0 + cpu-wattage: 0 + cpu-wattage-times-duration: 0 + cpu-energy-raw: 0 + vcpu-ratio: 0 + cpu-energy-kwh: 0 + - timestamp: '2023-12-12T00:00:55.000Z' + duration: 5 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 0 + cpu/thermal-design-power: 0 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0 + cpu-wattage: 0 + cpu-wattage-times-duration: 0 + cpu-energy-raw: 0 + vcpu-ratio: 0 + cpu-energy-kwh: 0 + - timestamp: '2023-12-12T00:01:00.000Z' + duration: 1 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 0 + cpu/thermal-design-power: 0 + vcpus-total: 8 + vcpus-allocated: 1 + cpu-factor: 0 + cpu-wattage: 0 + cpu-wattage-times-duration: 0 + cpu-energy-raw: 0 + vcpu-ratio: 0 + cpu-energy-kwh: 0 diff --git a/manifests/outputs/plugins/coefficient/failure-invalid-config-input-param.yaml b/manifests/outputs/plugins/coefficient/failure-invalid-config-input-param.yaml new file mode 100644 index 000000000..6f3e5cb23 --- /dev/null +++ b/manifests/outputs/plugins/coefficient/failure-invalid-config-input-param.yaml @@ -0,0 +1,76 @@ +name: coefficient-demo +description: failure with ivalid `global-config.input-parameter` +tags: null +initialize: + outputs: + - yaml + plugins: + coefficient: + method: Coefficient + path: builtin + global-config: + input-parameter: 4 + coefficient: 3 + output-parameter: carbon-product +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/coefficient/failure-invalid-config-input-param.yml + -o manifests/outputs/plugins/coefficient/failure-invalid-config-input-param + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T05:41:49.144Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "input-parameter" parameter is expected string, + received number. Error code: invalid_type. +tree: + children: + child: + pipeline: + - coefficient + config: + sum: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + carbon: 30 diff --git a/manifests/outputs/plugins/coefficient/failure-output-param-is-null.yaml b/manifests/outputs/plugins/coefficient/failure-output-param-is-null.yaml new file mode 100644 index 000000000..67ac62cff --- /dev/null +++ b/manifests/outputs/plugins/coefficient/failure-output-param-is-null.yaml @@ -0,0 +1,76 @@ +name: coefficient-demo +description: value of output-param is missing +tags: null +initialize: + outputs: + - yaml + plugins: + coefficient: + method: Coefficient + path: builtin + global-config: + input-parameter: carbon + coefficient: 3 + output-parameter: null +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/coefficient/failure-output-param-is-null.yml -o + manifests/outputs/plugins/coefficient/failure-output-param-is-null + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T05:38:48.831Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "output-parameter" parameter is expected string, + received null. Error code: invalid_type. +tree: + children: + child: + pipeline: + - coefficient + config: + sum: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + carbon: 30 diff --git a/manifests/outputs/plugins/coefficient/success.yaml b/manifests/outputs/plugins/coefficient/success.yaml new file mode 100644 index 000000000..edf264092 --- /dev/null +++ b/manifests/outputs/plugins/coefficient/success.yaml @@ -0,0 +1,78 @@ +name: coefficient-demo +description: successful path +tags: null +initialize: + plugins: + coefficient: + path: builtin + method: Coefficient + global-config: + input-parameter: carbon + coefficient: 3 + output-parameter: carbon-product + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/coefficient/success.yml -o + manifests/outputs/plugins/coefficient/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T05:37:08.297Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - coefficient + config: + sum: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + carbon: 30 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + carbon: 30 + carbon-product: 90 diff --git a/manifests/plugins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml b/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml similarity index 100% rename from manifests/plugins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml rename to manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml diff --git a/manifests/plugins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml b/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml similarity index 100% rename from manifests/plugins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml rename to manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml diff --git a/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yaml b/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yaml new file mode 100644 index 000000000..5cbc23dec --- /dev/null +++ b/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yaml @@ -0,0 +1,80 @@ +name: cloud-metadata +description: failing because cloud/vendor is not provided +tags: null +initialize: + outputs: + - yaml + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yml + -o + manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:20:08.333Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + QueryDataNotFoundError: One or more of the given query parameters are not + found in the target CSV file column headers. +tree: + children: + child: + pipeline: + - cloud-metadata + config: null + inputs: + - timestamp: 2023-07-06T00:00 + duration: 100 + cpu/utilization: 10 diff --git a/manifests/outputs/plugins/csv-lookup/cloud-metadata/success.yaml b/manifests/outputs/plugins/csv-lookup/cloud-metadata/success.yaml new file mode 100644 index 000000000..4b02a939b --- /dev/null +++ b/manifests/outputs/plugins/csv-lookup/cloud-metadata/success.yaml @@ -0,0 +1,85 @@ +name: cloud-metadata +description: successful path +tags: null +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/csv-lookup/cloud-metadata/success.yml -o + manifests/outputs/plugins/csv-lookup/cloud-metadata/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:21:45.504Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - cloud-metadata + config: null + inputs: + - timestamp: 2023-07-06T00:00 + cloud/vendor: aws + cloud/instance-type: m5n.large + duration: 100 + cpu/utilization: 10 + outputs: + - timestamp: 2023-07-06T00:00 + cloud/vendor: aws + cloud/instance-type: m5n.large + duration: 100 + cpu/utilization: 10 + vcpus-allocated: 2 diff --git a/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-column.yaml b/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-column.yaml new file mode 100644 index 000000000..0826f4fa2 --- /dev/null +++ b/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-column.yaml @@ -0,0 +1,79 @@ +name: csv-lookup-demo +description: null +tags: null +initialize: + outputs: + - yaml + plugins: + cloud-metadata: + method: CSVLookup + path: builtin + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv + query: + cloud-provider: nonexistant + cloud-region: cloud/region + output: '*' +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-column.yml + -o + manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-column + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:26:59.352Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + QueryDataNotFoundError: One or more of the given query parameters are not + found in the target CSV file column headers. +tree: + children: + child: + pipeline: + - cloud-metadata + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 diff --git a/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-output.yaml b/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-output.yaml new file mode 100644 index 000000000..57cfb9358 --- /dev/null +++ b/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-output.yaml @@ -0,0 +1,78 @@ +name: csv-lookup-demo +description: null +tags: null +initialize: + outputs: + - yaml + plugins: + cloud-metadata: + method: CSVLookup + path: builtin + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv + query: + cloud-provider: cloud/provider + cloud-region: cloud/region +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-output.yml + -o + manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-output + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:26:09.874Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "output" parameter is invalid input. Error code: + invalid_union. +tree: + children: + child: + pipeline: + - cloud-metadata + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 diff --git a/manifests/outputs/plugins/csv-lookup/region-metadata/success-renaming.yaml b/manifests/outputs/plugins/csv-lookup/region-metadata/success-renaming.yaml new file mode 100644 index 000000000..408a9d3dc --- /dev/null +++ b/manifests/outputs/plugins/csv-lookup/region-metadata/success-renaming.yaml @@ -0,0 +1,83 @@ +name: csv-lookup-demo +description: null +tags: null +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv + query: + cloud-provider: cloud/provider + cloud-region: cloud/region + output: + - em-zone-id + - renamed-em-zone-data + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/csv-lookup/region-metadata/success-renaming.yml -o + manifests/outputs/plugins/csv-lookup/region-metadata/success-renaming + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:24:10.894Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - cloud-metadata + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 + renamed-em-zone-data: TW diff --git a/manifests/outputs/plugins/csv-lookup/region-metadata/success.yaml b/manifests/outputs/plugins/csv-lookup/region-metadata/success.yaml new file mode 100644 index 000000000..aa1f3de32 --- /dev/null +++ b/manifests/outputs/plugins/csv-lookup/region-metadata/success.yaml @@ -0,0 +1,95 @@ +name: csv-lookup-demo +description: null +tags: null +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv + query: + cloud-provider: cloud/provider + cloud-region: cloud/region + output: '*' + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/csv-lookup/region-metadata/success.yml -o + manifests/outputs/plugins/csv-lookup/region-metadata/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:23:15.965Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - cloud-metadata + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 + year: 2022 + cfe-region: Taiwan + em-zone-id: TW + wt-region-id: TW + location: Taiwan + geolocation: 25.0375,121.5625 + cfe-hourly: 0.18 + cfe-annual: nan + power-usage-efficiency: nan + net-carbon: 0 + grid-carbon-intensity-24x7: 453 + grid-carbon-intensity-consumption: nan + grid-carbon-intensity-marginal: nan + grid-carbon-intensity-production: nan + grid-carbon-intensity: 453 diff --git a/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yaml b/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yaml new file mode 100644 index 000000000..7406ac879 --- /dev/null +++ b/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yaml @@ -0,0 +1,77 @@ +name: tdp-finder +description: failure with `inputs` missing `physical-processor` param +tags: null +initialize: + outputs: + - yaml + plugins: + tdp-finder: + method: CSVLookup + path: builtin + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/tdp-data-1.csv + query: + name: physical-processor + output: tdp +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yml + -o + manifests/outputs/plugins/csv-lookup/tdp-finder/failure-missing-input-param + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:30:11.973Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + QueryDataNotFoundError: One or more of the given query parameters are not + found in the target CSV file column headers. +tree: + children: + child: + pipeline: + - tdp-finder + config: null + inputs: + - timestamp: 2023-07-06T00:00 + duration: 300 diff --git a/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yaml b/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yaml new file mode 100644 index 000000000..0d4bff834 --- /dev/null +++ b/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yaml @@ -0,0 +1,78 @@ +name: tdp-finder +description: successful path +tags: null +initialize: + outputs: + - yaml + plugins: + tdp-finder: + method: CSVLookup + path: builtin + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/tdp-data-1.csv + query: + name: physical-processor + output: tdp +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml + -o + manifests/outputs/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:29:16.211Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + QueryDataNotFoundError: One or more of the given query parameters are not + found in the target CSV file column headers. +tree: + children: + child: + pipeline: + - tdp-finder + config: null + inputs: + - timestamp: 2023-07-06T00:00 + duration: 300 + physical-processor: AMD 302 diff --git a/manifests/outputs/plugins/csv-lookup/tdp-finder/success.yaml b/manifests/outputs/plugins/csv-lookup/tdp-finder/success.yaml new file mode 100644 index 000000000..e3dd6e9eb --- /dev/null +++ b/manifests/outputs/plugins/csv-lookup/tdp-finder/success.yaml @@ -0,0 +1,79 @@ +name: tdp-finder +description: successful path +tags: null +initialize: + plugins: + tdp-finder: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/tdp-data-1.csv + query: + name: physical-processor + output: tdp + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/csv-lookup/tdp-finder/success.yml -o + manifests/outputs/plugins/csv-lookup/tdp-finder/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:28:19.790Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - tdp-finder + config: null + inputs: + - timestamp: 2023-07-06T00:00 + duration: 300 + physical-processor: AMD 3020e + outputs: + - timestamp: 2023-07-06T00:00 + duration: 300 + physical-processor: AMD 3020e + tdp: 6 diff --git a/manifests/outputs/plugins/divide/failure-invalid-config-denominator.yaml b/manifests/outputs/plugins/divide/failure-invalid-config-denominator.yaml new file mode 100644 index 000000000..1f70d83c8 --- /dev/null +++ b/manifests/outputs/plugins/divide/failure-invalid-config-denominator.yaml @@ -0,0 +1,76 @@ +name: divide +description: failure when `global-config.denominator` is string +tags: null +initialize: + outputs: + - yaml + plugins: + divide: + method: Divide + path: builtin + global-config: + numerator: cpu/utilization + denominator: test + output: cpu/divided-two +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/divide/failure-invalid-config-denominator.yml -o + manifests/outputs/plugins/divide/failure-invalid-config-denominator.yml + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T06:02:25.409Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + MissingInputDataError: test is missing from the input array, or has nullish + value. +tree: + children: + child: + pipeline: + - divide + config: + divide: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/utilization: 80 diff --git a/manifests/outputs/plugins/divide/failure-missing-numerator.yaml b/manifests/outputs/plugins/divide/failure-missing-numerator.yaml new file mode 100644 index 000000000..065bc9a55 --- /dev/null +++ b/manifests/outputs/plugins/divide/failure-missing-numerator.yaml @@ -0,0 +1,80 @@ +name: divide +description: success path +tags: null +initialize: + outputs: + - yaml + plugins: + divide: + method: Divide + path: builtin + global-config: + denominator: 2 + output: cpu/number-cores +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/divide/failure-missing-numerator.yml -o + manifests/outputs/plugins/divide/failure-missing-numerator + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T05:49:51.802Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "numerator" parameter is required. Error code: + invalid_type. +tree: + children: + child: + pipeline: + - divide + config: + divide: null + defaults: + cloud/vendor: aws + cloud/instance-type: m5n.large + cpu/name: Intel® Core™ i7-1185G7 + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/utilization: 80 + vcpus-allocated: 8 diff --git a/manifests/outputs/plugins/divide/success-denominator-equal-zero.yaml b/manifests/outputs/plugins/divide/success-denominator-equal-zero.yaml new file mode 100644 index 000000000..9c333a41e --- /dev/null +++ b/manifests/outputs/plugins/divide/success-denominator-equal-zero.yaml @@ -0,0 +1,98 @@ +name: divide +description: denominator is invalid, denominator is +tags: null +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated + divide: + path: builtin + method: Divide + global-config: + numerator: vcpus-allocated + denominator: 0 + output: cpu/number-cores + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/divide/failure-denominator-equal-zero.yml -o + manifests/outputs/plugins/divide/failure-denominator-equal-zero + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T06:05:58.040Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - cloud-metadata + - divide + config: + divide: null + defaults: + cloud/vendor: aws + cloud/instance-type: m5n.large + cpu/name: Intel® Core™ i7-1185G7 + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/utilization: 80 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/utilization: 80 + cloud/vendor: aws + cloud/instance-type: m5n.large + cpu/name: Intel® Core™ i7-1185G7 + vcpus-allocated: 2 + cpu/number-cores: 2 diff --git a/manifests/outputs/plugins/divide/success.yaml b/manifests/outputs/plugins/divide/success.yaml new file mode 100644 index 000000000..42e60482c --- /dev/null +++ b/manifests/outputs/plugins/divide/success.yaml @@ -0,0 +1,98 @@ +name: divide +description: success path +tags: null +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated + divide: + path: builtin + method: Divide + global-config: + numerator: vcpus-allocated + denominator: 2 + output: cpu/number-cores + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/divide/success.yml -o + manifests/outputs/plugins/divide/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T05:43:34.055Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - cloud-metadata + - divide + config: + divide: null + defaults: + cloud/vendor: aws + cloud/instance-type: m5n.large + cpu/name: Intel® Core™ i7-1185G7 + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/utilization: 80 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/utilization: 80 + cloud/vendor: aws + cloud/instance-type: m5n.large + cpu/name: Intel® Core™ i7-1185G7 + vcpus-allocated: 2 + cpu/number-cores: 1 diff --git a/manifests/outputs/plugins/exponent/success.yaml b/manifests/outputs/plugins/exponent/success.yaml new file mode 100644 index 000000000..1afa27f5a --- /dev/null +++ b/manifests/outputs/plugins/exponent/success.yaml @@ -0,0 +1,80 @@ +name: exponent demo +description: null +tags: null +initialize: + plugins: + exponent: + path: builtin + method: Exponent + global-config: + input-parameter: cpu/energy + exponent: 2 + output-parameter: energy + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/exponent/success.yml -o + manifests/outputs/plugins/exponent/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:07:19.737Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - exponent + config: + exponent: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: 0.001 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: 0.001 + energy: 0.000001 diff --git a/manifests/outputs/plugins/groupby/failure-invalid-config-group.yaml b/manifests/outputs/plugins/groupby/failure-invalid-config-group.yaml new file mode 100644 index 000000000..e211b0d51 --- /dev/null +++ b/manifests/outputs/plugins/groupby/failure-invalid-config-group.yaml @@ -0,0 +1,99 @@ +name: groupby +description: failure when `config->group-by->group` is not an array +initialize: + outputs: + - yaml + plugins: + group-by: + path: builtin + method: GroupBy +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/groupby/failure-invalid-config-group.yml -o + manifests/outputs/plugins/groupby/failure-invalid-config-group + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:11:23.166Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "group" parameter is expected array, received string. + Error code: invalid_type. +tree: + children: + my-app: + pipeline: + - group-by + config: + group-by: + group: cloud/region + inputs: + - timestamp: 2023-07-06T00:00 + duration: 300 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 99 + - timestamp: 2023-07-06T05:00 + duration: 300 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 23 + - timestamp: 2023-07-06T10:00 + duration: 300 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 12 + - timestamp: 2023-07-06T00:00 + duration: 300 + cloud/instance-type: B1 + cloud/region: uk-west + cpu/utilization: 11 + - timestamp: 2023-07-06T05:00 + duration: 300 + cloud/instance-type: B1 + cloud/region: uk-west + cpu/utilization: 67 + - timestamp: 2023-07-06T10:00 + duration: 300 + cloud/instance-type: B1 + cloud/region: uk-west + cpu/utilization: 1 diff --git a/manifests/outputs/plugins/groupby/failure-missing-cloud-instance-type.yaml b/manifests/outputs/plugins/groupby/failure-missing-cloud-instance-type.yaml new file mode 100644 index 000000000..38cebb9bb --- /dev/null +++ b/manifests/outputs/plugins/groupby/failure-missing-cloud-instance-type.yaml @@ -0,0 +1,98 @@ +name: groupby +description: null +initialize: + outputs: + - yaml + plugins: + group-by: + path: builtin + method: GroupBy +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/groupby/failure-missing-cloud-instance-type.yml -o + manifests/outputs/plugins/groupby/failure-missing-cloud-instance-type + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:10:00.820Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: 'InvalidGroupingError: Invalid group cloud/instance-type.' +tree: + children: + my-app: + pipeline: + - group-by + config: + group-by: + group: + - cloud/region + - cloud/instance-type + inputs: + - timestamp: 2023-07-06T00:00 + duration: 300 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 99 + - timestamp: 2023-07-06T05:00 + duration: 300 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 23 + - timestamp: 2023-07-06T10:00 + duration: 300 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 12 + - timestamp: 2023-07-06T00:00 + duration: 300 + cloud/instance-type: B1 + cloud/region: uk-west + cpu/utilization: 11 + - timestamp: 2023-07-06T05:00 + duration: 300 + cloud/instance-type: B1 + cloud/region: uk-west + cpu/utilization: 67 + - timestamp: 2023-07-06T10:00 + duration: 300 + cloud/region: uk-west + cpu/utilization: 1 diff --git a/manifests/outputs/plugins/groupby/success.yaml b/manifests/outputs/plugins/groupby/success.yaml new file mode 100644 index 000000000..cf1c7f734 --- /dev/null +++ b/manifests/outputs/plugins/groupby/success.yaml @@ -0,0 +1,104 @@ +name: groupby +description: successful path +initialize: + plugins: + group-by: + path: builtin + method: GroupBy + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/groupby/success.yml -o + manifests/outputs/plugins/groupby/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:08:31.858Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + my-app: + pipeline: + - group-by + config: + group-by: + group: + - cloud/region + - cloud/instance-type + children: + uk-west: + children: + A1: + inputs: + - timestamp: 2023-07-06T00:00 + duration: 300 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 99 + - timestamp: 2023-07-06T05:00 + duration: 300 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 23 + - timestamp: 2023-07-06T10:00 + duration: 300 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 12 + B1: + inputs: + - timestamp: 2023-07-06T00:00 + duration: 300 + cloud/instance-type: B1 + cloud/region: uk-west + cpu/utilization: 11 + - timestamp: 2023-07-06T05:00 + duration: 300 + cloud/instance-type: B1 + cloud/region: uk-west + cpu/utilization: 67 + - timestamp: 2023-07-06T10:00 + duration: 300 + cloud/instance-type: B1 + cloud/region: uk-west + cpu/utilization: 1 diff --git a/manifests/outputs/plugins/interpolation/interpolation.yaml b/manifests/outputs/plugins/interpolation/interpolation.yaml new file mode 100644 index 000000000..08036cf0b --- /dev/null +++ b/manifests/outputs/plugins/interpolation/interpolation.yaml @@ -0,0 +1,86 @@ +name: interpolation-demo +description: simple demo of interpolation plugin +tags: null +initialize: + plugins: + interpolation: + path: builtin + method: Interpolation + global-config: + method: linear + x: + - 0 + - 10 + - 50 + - 100 + 'y': + - 0.12 + - 0.32 + - 0.75 + - 1.02 + input-parameter: cpu/utilization + output-parameter: result + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/interpolation/interpolation.yml -o + manifests/outputs/plugins/interpolation/interpolation + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:14:18.033Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - interpolation + inputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + cpu/utilization: 45 + outputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + cpu/utilization: 45 + result: 0.69625 diff --git a/manifests/outputs/plugins/interpolation/success.yaml b/manifests/outputs/plugins/interpolation/success.yaml new file mode 100644 index 000000000..5c81f15fa --- /dev/null +++ b/manifests/outputs/plugins/interpolation/success.yaml @@ -0,0 +1,86 @@ +name: interpolation-demo +description: simple demo of interpolation plugin +tags: null +initialize: + plugins: + interpolation: + path: builtin + method: Interpolation + global-config: + method: linear + x: + - 0 + - 10 + - 50 + - 100 + 'y': + - 0.12 + - 0.32 + - 0.75 + - 1.02 + input-parameter: cpu/utilization + output-parameter: result + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/interpolation/success.yml -o + manifests/outputs/plugins/interpolation/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:13:22.946Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - interpolation + inputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + cpu/utilization: 45 + outputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + cpu/utilization: 45 + result: 0.69625 diff --git a/manifests/outputs/plugins/mock-observations/failure-invalid-config-cpu-range.yaml b/manifests/outputs/plugins/mock-observations/failure-invalid-config-cpu-range.yaml new file mode 100644 index 000000000..ebf62b776 --- /dev/null +++ b/manifests/outputs/plugins/mock-observations/failure-invalid-config-cpu-range.yaml @@ -0,0 +1,89 @@ +name: mock-observation-demo +description: >- + failure with `global-config->generators->randint->cpu/utilization->min` is + greater than `max` +tags: null +initialize: + outputs: + - yaml + plugins: + mock-observations: + kind: plugin + method: MockObservations + path: builtin + global-config: + timestamp-from: 2023-07-06T00:00 + timestamp-to: 2023-07-06T00:10 + duration: 60 + components: + - cloud/instance-type: A1 + - cloud/instance-type: B1 + generators: + common: + region: uk-west + common-key: common-val + randint: + cpu/utilization: + min: 99 + max: 10 + memory/utilization: + min: 1 + max: 99 +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/mock-observations/failure-invalid-config-cpu-range.yml + -o + manifests/outputs/plugins/mock-observations/failure-invalid-config-cpu-range + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:19:22.233Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + GlobalConfigError: Min value should not be greater than or equal to max + value of cpu/utilization +tree: + children: + child: + pipeline: + - mock-observations + inputs: null diff --git a/manifests/outputs/plugins/mock-observations/failure-invalid-memory-utilization-range.yaml b/manifests/outputs/plugins/mock-observations/failure-invalid-memory-utilization-range.yaml new file mode 100644 index 000000000..72d1cf9d0 --- /dev/null +++ b/manifests/outputs/plugins/mock-observations/failure-invalid-memory-utilization-range.yaml @@ -0,0 +1,87 @@ +name: mock-observation-demo +description: a manifest demonstrating how to use the mock observations feature +tags: null +initialize: + outputs: + - yaml + plugins: + mock-observations: + kind: plugin + method: MockObservations + path: builtin + global-config: + timestamp-from: 2023-07-06T00:00 + timestamp-to: 2023-07-06T00:10 + duration: 60 + components: + - cloud/instance-type: A1 + - cloud/instance-type: B1 + generators: + common: + region: uk-west + common-key: common-val + randint: + cpu/utilization: + min: 1 + max: 99 + memory/utilization: + min: 99 + max: 10 +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/mock-observations/failure-invalid-memory-utilization-range.yml + -o + manifests/outputs/plugins/mock-observations/failure-invalid-memory-utilization-range + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:18:11.486Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + GlobalConfigError: Min value should not be greater than or equal to max + value of memory/utilization +tree: + children: + child: + pipeline: + - mock-observations + inputs: null diff --git a/manifests/outputs/plugins/mock-observations/failure-missing-timestamp-from-param.yaml b/manifests/outputs/plugins/mock-observations/failure-missing-timestamp-from-param.yaml new file mode 100644 index 000000000..ab340d36c --- /dev/null +++ b/manifests/outputs/plugins/mock-observations/failure-missing-timestamp-from-param.yaml @@ -0,0 +1,86 @@ +name: mock-observation-demo +description: a manifest demonstrating how to use the mock observations feature +tags: null +initialize: + outputs: + - yaml + plugins: + mock-observations: + kind: plugin + method: MockObservations + path: builtin + global-config: + timestamp-to: 2023-07-06T00:10 + duration: 60 + components: + - cloud/instance-type: A1 + - cloud/instance-type: B1 + generators: + common: + region: uk-west + common-key: common-val + randint: + cpu/utilization: + min: 1 + max: 99 + memory/utilization: + min: 1 + max: 99 +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/mock-observations/failure-missing-timestamp-from-param.yml + -o + manifests/outputs/plugins/mock-observations/failure-missing-timestamp-from-param + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:17:01.277Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "timestamp-from" parameter is required. Error code: + invalid_type. +tree: + children: + child: + pipeline: + - mock-observations + inputs: null diff --git a/manifests/outputs/plugins/mock-observations/success.yaml b/manifests/outputs/plugins/mock-observations/success.yaml new file mode 100644 index 000000000..1a89eea75 --- /dev/null +++ b/manifests/outputs/plugins/mock-observations/success.yaml @@ -0,0 +1,223 @@ +name: mock-observation-demo +description: a manifest demonstrating how to use the mock observations feature +tags: null +initialize: + plugins: + mock-observations: + path: builtin + method: MockObservations + global-config: + timestamp-from: 2023-07-06T00:00 + timestamp-to: 2023-07-06T00:10 + duration: 60 + components: + - cloud/instance-type: A1 + - cloud/instance-type: B1 + generators: + common: + region: uk-west + common-key: common-val + randint: + cpu/utilization: + min: 1 + max: 99 + memory/utilization: + min: 1 + max: 99 + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/mock-observations/success.yml -o + manifests/outputs/plugins/mock-observations/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:15:43.108Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - mock-observations + inputs: null + outputs: + - timestamp: '2023-07-06T00:00:00.000Z' + duration: 60 + cloud/instance-type: A1 + region: uk-west + common-key: common-val + cpu/utilization: 81 + memory/utilization: 63 + - timestamp: '2023-07-06T00:01:00.000Z' + duration: 60 + cloud/instance-type: A1 + region: uk-west + common-key: common-val + cpu/utilization: 92 + memory/utilization: 63 + - timestamp: '2023-07-06T00:02:00.000Z' + duration: 60 + cloud/instance-type: A1 + region: uk-west + common-key: common-val + cpu/utilization: 63 + memory/utilization: 95 + - timestamp: '2023-07-06T00:03:00.000Z' + duration: 60 + cloud/instance-type: A1 + region: uk-west + common-key: common-val + cpu/utilization: 37 + memory/utilization: 13 + - timestamp: '2023-07-06T00:04:00.000Z' + duration: 60 + cloud/instance-type: A1 + region: uk-west + common-key: common-val + cpu/utilization: 28 + memory/utilization: 50 + - timestamp: '2023-07-06T00:05:00.000Z' + duration: 60 + cloud/instance-type: A1 + region: uk-west + common-key: common-val + cpu/utilization: 98 + memory/utilization: 29 + - timestamp: '2023-07-06T00:06:00.000Z' + duration: 60 + cloud/instance-type: A1 + region: uk-west + common-key: common-val + cpu/utilization: 10 + memory/utilization: 93 + - timestamp: '2023-07-06T00:07:00.000Z' + duration: 60 + cloud/instance-type: A1 + region: uk-west + common-key: common-val + cpu/utilization: 84 + memory/utilization: 37 + - timestamp: '2023-07-06T00:08:00.000Z' + duration: 60 + cloud/instance-type: A1 + region: uk-west + common-key: common-val + cpu/utilization: 10 + memory/utilization: 30 + - timestamp: '2023-07-06T00:09:00.000Z' + duration: 60 + cloud/instance-type: A1 + region: uk-west + common-key: common-val + cpu/utilization: 50 + memory/utilization: 10 + - timestamp: '2023-07-06T00:00:00.000Z' + duration: 60 + cloud/instance-type: B1 + region: uk-west + common-key: common-val + cpu/utilization: 97 + memory/utilization: 89 + - timestamp: '2023-07-06T00:01:00.000Z' + duration: 60 + cloud/instance-type: B1 + region: uk-west + common-key: common-val + cpu/utilization: 61 + memory/utilization: 83 + - timestamp: '2023-07-06T00:02:00.000Z' + duration: 60 + cloud/instance-type: B1 + region: uk-west + common-key: common-val + cpu/utilization: 86 + memory/utilization: 52 + - timestamp: '2023-07-06T00:03:00.000Z' + duration: 60 + cloud/instance-type: B1 + region: uk-west + common-key: common-val + cpu/utilization: 17 + memory/utilization: 60 + - timestamp: '2023-07-06T00:04:00.000Z' + duration: 60 + cloud/instance-type: B1 + region: uk-west + common-key: common-val + cpu/utilization: 53 + memory/utilization: 84 + - timestamp: '2023-07-06T00:05:00.000Z' + duration: 60 + cloud/instance-type: B1 + region: uk-west + common-key: common-val + cpu/utilization: 38 + memory/utilization: 58 + - timestamp: '2023-07-06T00:06:00.000Z' + duration: 60 + cloud/instance-type: B1 + region: uk-west + common-key: common-val + cpu/utilization: 4 + memory/utilization: 39 + - timestamp: '2023-07-06T00:07:00.000Z' + duration: 60 + cloud/instance-type: B1 + region: uk-west + common-key: common-val + cpu/utilization: 89 + memory/utilization: 52 + - timestamp: '2023-07-06T00:08:00.000Z' + duration: 60 + cloud/instance-type: B1 + region: uk-west + common-key: common-val + cpu/utilization: 38 + memory/utilization: 16 + - timestamp: '2023-07-06T00:09:00.000Z' + duration: 60 + cloud/instance-type: B1 + region: uk-west + common-key: common-val + cpu/utilization: 25 + memory/utilization: 78 diff --git a/manifests/outputs/plugins/multiply/failure-input-parameter-is-missing.yaml b/manifests/outputs/plugins/multiply/failure-input-parameter-is-missing.yaml new file mode 100644 index 000000000..23594fbf9 --- /dev/null +++ b/manifests/outputs/plugins/multiply/failure-input-parameter-is-missing.yaml @@ -0,0 +1,78 @@ +name: multiply +description: failure `inputs` is missing `cpu/energy` parameter +tags: null +initialize: + outputs: + - yaml + plugins: + multiply: + method: Multiply + path: builtin + global-config: + input-parameters: + - cpu/energy + - network/energy + output-parameter: energy-product +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/multiply/failure-input-parameter-is-missing.yml -o + manifests/outputs/plugins/multiply/failure-input-parameter-is-missing + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:23:15.185Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "cpu/energy" parameter is required. Error code: + invalid_type. +tree: + children: + child: + pipeline: + - multiply + config: + sum: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu: 0.001 + network/energy: 0.002 diff --git a/manifests/outputs/plugins/multiply/success-with-multiple-inputs.yaml b/manifests/outputs/plugins/multiply/success-with-multiple-inputs.yaml new file mode 100644 index 000000000..22d23b8ed --- /dev/null +++ b/manifests/outputs/plugins/multiply/success-with-multiple-inputs.yaml @@ -0,0 +1,99 @@ +name: multiply +description: a manifest demonstrating how to use the multiply feature +tags: null +initialize: + plugins: + multiply: + path: builtin + method: Multiply + global-config: + input-parameters: + - cpu/energy + - network/energy + output-parameter: energy-product + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/multiply/success-with-multiple-inputs.yml -o + manifests/outputs/plugins/multiply/success-with-multiple-inputs + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:22:04.324Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - multiply + config: + sum: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: 0.002 + - timestamp: 2023-08-06T10:00 + duration: 3600 + cpu/energy: 0.005 + network/energy: -0.002 + - timestamp: 2023-08-06T10:00 + duration: 3600 + cpu/energy: 0.005 + network/energy: 0 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: 0.002 + energy-product: 0.000002 + - timestamp: 2023-08-06T10:00 + duration: 3600 + cpu/energy: 0.005 + network/energy: -0.002 + energy-product: -0.00001 + - timestamp: 2023-08-06T10:00 + duration: 3600 + cpu/energy: 0.005 + network/energy: 0 + energy-product: 0 diff --git a/manifests/outputs/plugins/multiply/success.yaml b/manifests/outputs/plugins/multiply/success.yaml new file mode 100644 index 000000000..19183c43c --- /dev/null +++ b/manifests/outputs/plugins/multiply/success.yaml @@ -0,0 +1,81 @@ +name: multiply +description: a manifest demonstrating how to use the multiply feature +tags: null +initialize: + plugins: + multiply: + path: builtin + method: Multiply + global-config: + input-parameters: + - cpu/energy + - network/energy + output-parameter: energy-product + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/multiply/success.yml -o + manifests/outputs/plugins/multiply/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T19:20:34.016Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - multiply + config: + sum: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: 0.002 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: 0.002 + energy-product: 0.000002 diff --git a/manifests/outputs/plugins/regex/failure-missing-input-param.yaml b/manifests/outputs/plugins/regex/failure-missing-input-param.yaml new file mode 100644 index 000000000..8ffe1bd24 --- /dev/null +++ b/manifests/outputs/plugins/regex/failure-missing-input-param.yaml @@ -0,0 +1,78 @@ +name: regex +description: failure with missing `physical-processor` field from `inputs` +tags: null +initialize: + outputs: + - yaml + plugins: + regex: + method: Regex + path: builtin + global-config: + parameter: physical-processor + match: ^(.*), + output: cpu/name +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/regex/failure-missing-input-param.yml -o + manifests/outputs/plugins/regex/failure-missing-input-param + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:26:07.477Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + MissingInputDataError: physical-processor is missing from the input array, + or has nullish value. +tree: + children: + child: + pipeline: + - regex + config: + regex: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + physical: >- + Intel® Xeon® Platinum 8272CL,Intel® Xeon® 8171M 2.1 GHz,Intel® Xeon® + E5-2673 v4 2.3 GHz,Intel® Xeon® E5-2673 v3 2.4 GHz diff --git a/manifests/outputs/plugins/regex/failure-not-matching-with-regex.yaml b/manifests/outputs/plugins/regex/failure-not-matching-with-regex.yaml new file mode 100644 index 000000000..da1e88503 --- /dev/null +++ b/manifests/outputs/plugins/regex/failure-not-matching-with-regex.yaml @@ -0,0 +1,79 @@ +name: regex +description: physical processor doesn't match the regex expression +tags: null +initialize: + outputs: + - yaml + plugins: + regex: + method: Regex + path: builtin + global-config: + parameter: physical-processor + match: ^ + output: cpu/name +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/regex/failure-not-matching-with-regex.yml -o + manifests/outputs/plugins/regex/failure-not-matching-with-regex + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:24:39.241Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + RegexMismatchError: `Intel® Xeon® Platinum 8272CL,Intel® Xeon® 8171M 2.1 + GHz,Intel® Xeon® E5-2673 v4 2.3 GHz,Intel® Xeon® E5-2673 v3 2.4 GHz` does + not match the /^/ regex expression +tree: + children: + child: + pipeline: + - regex + config: + regex: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + physical-processor: >- + Intel® Xeon® Platinum 8272CL,Intel® Xeon® 8171M 2.1 GHz,Intel® Xeon® + E5-2673 v4 2.3 GHz,Intel® Xeon® E5-2673 v3 2.4 GHz diff --git a/manifests/outputs/plugins/regex/success.yaml b/manifests/outputs/plugins/regex/success.yaml new file mode 100644 index 000000000..e63d81e75 --- /dev/null +++ b/manifests/outputs/plugins/regex/success.yaml @@ -0,0 +1,84 @@ +name: regex +description: successful path +tags: null +initialize: + plugins: + regex: + path: builtin + method: Regex + global-config: + parameter: physical-processor + match: ^(.*), + output: cpu/name + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/regex/success.yml -o + manifests/outputs/plugins/regex/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:23:25.744Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - regex + config: + regex: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + physical-processor: >- + Intel® Xeon® Platinum 8272CL,Intel® Xeon® 8171M 2.1 GHz,Intel® Xeon® + E5-2673 v4 2.3 GHz,Intel® Xeon® E5-2673 v3 2.4 GHz + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + physical-processor: >- + Intel® Xeon® Platinum 8272CL,Intel® Xeon® 8171M 2.1 GHz,Intel® Xeon® + E5-2673 v4 2.3 GHz,Intel® Xeon® E5-2673 v3 2.4 GHz + cpu/name: >- + Intel® Xeon® Platinum 8272CL,Intel® Xeon® 8171M 2.1 GHz,Intel® Xeon® + E5-2673 v4 2.3 GHz, diff --git a/manifests/outputs/plugins/sci-embodied/failure-invalid-default-emission-value.yaml b/manifests/outputs/plugins/sci-embodied/failure-invalid-default-emission-value.yaml new file mode 100644 index 000000000..12978e16e --- /dev/null +++ b/manifests/outputs/plugins/sci-embodied/failure-invalid-default-emission-value.yaml @@ -0,0 +1,78 @@ +name: sci-embodied +description: >- + failure with `defaults.device/emissions-embodied` being string instead of + number +tags: null +initialize: + outputs: + - yaml + plugins: + sci-embodied: + method: SciEmbodied + path: builtin +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/sci-embodied/failure-invalid-default-emission-value.yml + -o + manifests/outputs/plugins/sci-embodied/failure-invalid-default-emission-value + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:49:08.280Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "device/emissions-embodied" parameter is invalid + number. please provide it as `gco2e` to input. Error code: invalid_union. +tree: + children: + child: + pipeline: + - sci-embodied + defaults: + device/emissions-embodied: fail + time-reserved: 3600 + device/expected-lifespan: 94608000 + resources-reserved: 1 + resources-total: 8 + inputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 diff --git a/manifests/outputs/plugins/sci-embodied/failure-missing-expected-lifespan.yaml b/manifests/outputs/plugins/sci-embodied/failure-missing-expected-lifespan.yaml new file mode 100644 index 000000000..4288c8a7a --- /dev/null +++ b/manifests/outputs/plugins/sci-embodied/failure-missing-expected-lifespan.yaml @@ -0,0 +1,74 @@ +name: sci-embodied +description: missing device/expected-lifespan +tags: null +initialize: + outputs: + - yaml + plugins: + sci-embodied: + method: SciEmbodied + path: builtin +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/sci-embodied/failure-missing-expected-lifespan.yml + -o manifests/outputs/plugins/sci-embodied/failure-missing-expected-lifespan + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:42:51.951Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "device/expected-lifespan" parameter is required. + Error code: invalid_union. +tree: + children: + child: + pipeline: + - sci-embodied + defaults: + device/emissions-embodied: 1533.12 + time-reserved: 3600 + resources-reserved: 1 + resources-total: 8 + inputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 diff --git a/manifests/outputs/plugins/sci-embodied/success.yaml b/manifests/outputs/plugins/sci-embodied/success.yaml new file mode 100644 index 000000000..1a8099221 --- /dev/null +++ b/manifests/outputs/plugins/sci-embodied/success.yaml @@ -0,0 +1,81 @@ +name: sci-embodied +description: successful path +tags: null +initialize: + plugins: + sci-embodied: + path: builtin + method: SciEmbodied + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/sci-embodied/success.yml -o + manifests/outputs/plugins/sci-embodied/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:42:03.186Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - sci-embodied + defaults: + device/emissions-embodied: 1533.12 + time-reserved: 3600 + device/expected-lifespan: 94608000 + resources-reserved: 1 + resources-total: 8 + inputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + outputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + device/emissions-embodied: 1533.12 + time-reserved: 3600 + device/expected-lifespan: 94608000 + resources-reserved: 1 + resources-total: 8 + carbon-embodied: 0.007292237442922374 diff --git a/manifests/outputs/plugins/sci/failure-invalid-config-value.yaml b/manifests/outputs/plugins/sci/failure-invalid-config-value.yaml new file mode 100644 index 000000000..babc11c32 --- /dev/null +++ b/manifests/outputs/plugins/sci/failure-invalid-config-value.yaml @@ -0,0 +1,75 @@ +name: sci +description: failure with `config.sci.functional-unit` value being number +tags: null +initialize: + outputs: + - yaml + plugins: + sci: + kind: plugin + method: Sci + path: builtin +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/sci/failure-invalid-config-value.yml -o + manifests/outputs/plugins/sci/failure-invalid-config-value + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:38:15.858Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: 'InputValidationError: Required' +tree: + children: + child: + pipeline: + - sci + config: + sci: + functional-unit: 999 + inputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + energy: 5 + carbon-operational: 5 + carbon-embodied: 0.02 + requests: 100 diff --git a/manifests/outputs/plugins/sci/failure-missing-input-param.yaml b/manifests/outputs/plugins/sci/failure-missing-input-param.yaml new file mode 100644 index 000000000..5ce6ba144 --- /dev/null +++ b/manifests/outputs/plugins/sci/failure-missing-input-param.yaml @@ -0,0 +1,75 @@ +name: sci +description: missing input value (carbon-embodied) +tags: null +initialize: + outputs: + - yaml + plugins: + sci: + kind: plugin + method: Sci + path: builtin + global-config: + functional-unit: requests +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/sci/failure-missing-input-param.yml -o + manifests/outputs/plugins/sci/failure-missing-input-param + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:36:10.588Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "carbon" parameter is required. Error code: + invalid_type. +tree: + children: + child: + pipeline: + - sci + inputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + energy: 5 + carbon-operational: 5 + requests: 100 diff --git a/manifests/outputs/plugins/sci/success.yml.yaml b/manifests/outputs/plugins/sci/success.yml.yaml new file mode 100644 index 000000000..c9fc1e7f8 --- /dev/null +++ b/manifests/outputs/plugins/sci/success.yml.yaml @@ -0,0 +1,83 @@ +name: sci +description: successful path +tags: null +initialize: + plugins: + sci: + path: builtin + method: Sci + global-config: + functional-unit: requests + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/sci/success.yml -o + manifests/outputs/plugins/sci/success.yml + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:35:12.024Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - sci + config: null + inputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + energy: 5 + carbon-operational: 5 + carbon-embodied: 0.02 + carbon: 5.02 + requests: 100 + outputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + energy: 5 + carbon-operational: 5 + carbon-embodied: 0.02 + carbon: 5.02 + requests: 100 + sci: 0.050199999999999995 diff --git a/manifests/outputs/plugins/shell/failure-invalid-command.yaml b/manifests/outputs/plugins/shell/failure-invalid-command.yaml new file mode 100644 index 000000000..308dd47ea --- /dev/null +++ b/manifests/outputs/plugins/shell/failure-invalid-command.yaml @@ -0,0 +1,73 @@ +name: shell +description: falure with `global-config.command` being number instead od string +tags: null +initialize: + outputs: + - yaml + plugins: + shell: + method: Shell + path: builtin + global-config: + command: 1000 +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/shell/failure-invalid-command.yml -o + manifests/outputs/plugins/shell/failure-invalid-command + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:51:36.186Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "command" parameter is expected string, received + number. Error code: invalid_type. +tree: + children: + child: + pipeline: + - shell + inputs: + - timestamp: '2023-11-02T10:35:31.820Z' + duration: 3600 + cpu/energy: 0.002 + memory/energy: 0.000005 diff --git a/manifests/outputs/plugins/shell/success.yaml b/manifests/outputs/plugins/shell/success.yaml new file mode 100644 index 000000000..573ee41ee --- /dev/null +++ b/manifests/outputs/plugins/shell/success.yaml @@ -0,0 +1,71 @@ +name: shell +description: successful path +tags: null +initialize: + plugins: + shell: + path: builtin + method: Shell + global-config: + command: python3 /usr/local/bin/sampler + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/shell/success.yml -o + manifests/outputs/plugins/shell/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:50:37.625Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - shell + inputs: + - timestamp: '2023-11-02T10:35:31.820Z' + duration: 3600 + cpu/energy: 0.002 + memory/energy: 0.000005 + outputs: [] diff --git a/manifests/outputs/plugins/subtract/success.yaml b/manifests/outputs/plugins/subtract/success.yaml new file mode 100644 index 000000000..feff487d4 --- /dev/null +++ b/manifests/outputs/plugins/subtract/success.yaml @@ -0,0 +1,81 @@ +name: subtract demo +description: null +tags: null +initialize: + plugins: + subtract: + path: builtin + method: Subtract + global-config: + input-parameters: + - cpu/energy + - network/energy + output-parameter: energy/diff + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/subtract/success.yml -o + manifests/outputs/plugins/subtract/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:52:42.932Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - subtract + config: + subtract: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.003 + network/energy: 0.001 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.003 + network/energy: 0.001 + energy/diff: 0.002 diff --git a/manifests/outputs/plugins/sum/failure-missing-input-param.yaml b/manifests/outputs/plugins/sum/failure-missing-input-param.yaml new file mode 100644 index 000000000..c9f1171d7 --- /dev/null +++ b/manifests/outputs/plugins/sum/failure-missing-input-param.yaml @@ -0,0 +1,78 @@ +name: sum +description: failure with `inputs[0]` misses one of `global-config.input-parameters` +tags: null +initialize: + outputs: + - yaml + plugins: + sum: + method: Sum + path: builtin + global-config: + input-parameters: + - cpu/energy + - network/energy + output-parameter: energy +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/sum/failure-missing-input-param.yml -o + manifests/outputs/plugins/sum/failure-missing-input-param + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:55:20.733Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "cpu/energy" parameter is required. Error code: + invalid_type. +tree: + children: + child: + pipeline: + - sum + config: + sum: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu: 0.001 + network/energy: 0.001 diff --git a/manifests/outputs/plugins/sum/failure-missing-output-param.yaml b/manifests/outputs/plugins/sum/failure-missing-output-param.yaml new file mode 100644 index 000000000..e38b08539 --- /dev/null +++ b/manifests/outputs/plugins/sum/failure-missing-output-param.yaml @@ -0,0 +1,81 @@ +name: sum +description: missing `output-parameter` in global-config +tags: null +initialize: + outputs: + - yaml + plugins: + sum: + method: Sum + path: builtin + global-config: + input-parameters: + - cpu/energy + - network/energy +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/sum/failure-missing-output-param.yml -o + manifests/outputs/plugins/sum/failure-missing-output-param + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:54:23.422Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + InputValidationError: "output-parameter" parameter is required. Error code: + invalid_type. +tree: + children: + child: + pipeline: + - sum + config: + sum: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: 0.001 + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: e diff --git a/manifests/outputs/plugins/sum/success.yaml b/manifests/outputs/plugins/sum/success.yaml new file mode 100644 index 000000000..9b201185e --- /dev/null +++ b/manifests/outputs/plugins/sum/success.yaml @@ -0,0 +1,81 @@ +name: sum +description: successful path +tags: null +initialize: + plugins: + sum: + path: builtin + method: Sum + global-config: + input-parameters: + - cpu/energy + - network/energy + output-parameter: energy + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/sum/success.yml -o + manifests/outputs/plugins/sum/success + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T20:53:35.496Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - sum + config: + sum: null + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: 0.001 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: 0.001 + energy: 0.002 diff --git a/manifests/outputs/plugins/time-sync/failure-config-start-later-end.yaml b/manifests/outputs/plugins/time-sync/failure-config-start-later-end.yaml new file mode 100644 index 000000000..001223fc5 --- /dev/null +++ b/manifests/outputs/plugins/time-sync/failure-config-start-later-end.yaml @@ -0,0 +1,85 @@ +name: time-sync +description: >- + failure with `global-config.start-time` being later than + `global-config.end-time` +tags: null +initialize: + outputs: + - yaml + plugins: + time-sync: + method: TimeSync + path: builtin + global-config: + start-time: '2023-12-12T00:01:00.000Z' + end-time: '2023-12-12T00:00:00.000Z' + interval: 5 + allow-padding: true +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/time-sync/failure-config-start-later-end.yml -o + manifests/outputs/plugins/time-sync/failure-config-start-later-end + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:13:59.114Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: 'InputValidationError: `start-time` should be lower than `end-time`' +tree: + children: + child: + pipeline: + - time-sync + config: null + inputs: + - timestamp: '2023-12-12T00:00:00.000Z' + duration: 1 + energy-cpu: 0.001 + - timestamp: '2023-12-12T00:00:01.000Z' + duration: 5 + energy-cpu: 0.001 + - timestamp: '2023-12-12T00:00:06.000Z' + duration: 7 + energy-cpu: 0.001 + - timestamp: '2023-12-12T00:00:13.000Z' + duration: 30 + energy-cpu: 0.001 diff --git a/manifests/outputs/plugins/time-sync/failure-missing-global-config.yaml b/manifests/outputs/plugins/time-sync/failure-missing-global-config.yaml new file mode 100644 index 000000000..98fec7aea --- /dev/null +++ b/manifests/outputs/plugins/time-sync/failure-missing-global-config.yaml @@ -0,0 +1,81 @@ +name: time-sync +description: missing global config +tags: null +initialize: + outputs: + - yaml + plugins: + time-sync: + method: TimeSync + path: builtin + global-config: null +execution: + status: fail + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/time-sync/failure-missing-global-config.yml -o + manifests/outputs/plugins/time-sync/failure-missing-global-config + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:13:12.360Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + error: >- + ManifestValidationError: "initialize.plugins.time-sync.global-config" + parameter is expected object, received null. Error code: invalid_type. +tree: + children: + child: + pipeline: + - time-sync + config: null + inputs: + - timestamp: '2023-12-12T00:00:00.000Z' + duration: 3 + energy-cpu: 0.001 + - timestamp: '2023-12-12T00:00:01.000Z' + duration: 5 + energy-cpu: 0.001 + - timestamp: '2023-12-12T00:00:06.000Z' + duration: 7 + energy-cpu: 0.001 + - timestamp: '2023-12-12T00:00:13.000Z' + duration: 30 + energy-cpu: 0.001 diff --git a/manifests/outputs/plugins/time-sync/success.yaml b/manifests/outputs/plugins/time-sync/success.yaml new file mode 100644 index 000000000..01c5b695b --- /dev/null +++ b/manifests/outputs/plugins/time-sync/success.yaml @@ -0,0 +1,122 @@ +name: time-sync +description: successful path +tags: null +initialize: + plugins: + time-sync: + path: builtin + method: TimeSync + global-config: + start-time: '2023-12-12T00:00:00.000Z' + end-time: '2023-12-12T00:01:00.000Z' + interval: 5 + allow-padding: true + outputs: + - yaml +execution: + command: >- + /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m + manifests/outputs/plugins/time-sync/success.yml -o + manifests/outputs/plugins/time-sync/success -s + environment: + if-version: 0.4.0 + os: macOS + os-version: '13.2' + node-version: 18.14.2 + date-time: 2024-07-02T21:12:32.629Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' + - >- + @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> + file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - time-sync + config: null + inputs: + - timestamp: '2023-12-12T00:00:00.000Z' + duration: 1 + energy-cpu: 0.001 + - timestamp: '2023-12-12T00:00:01.000Z' + duration: 5 + energy-cpu: 0.001 + - timestamp: '2023-12-12T00:00:06.000Z' + duration: 7 + energy-cpu: 0.001 + - timestamp: '2023-12-12T00:00:13.000Z' + duration: 30 + energy-cpu: 0.001 + outputs: + - timestamp: '2023-12-12T00:00:00.000Z' + duration: 5 + energy-cpu: 0.0018000000000000004 + - timestamp: '2023-12-12T00:00:05.000Z' + duration: 5 + energy-cpu: 0.0007714285714285716 + - timestamp: '2023-12-12T00:00:10.000Z' + duration: 5 + energy-cpu: 0.0004952380952380952 + - timestamp: '2023-12-12T00:00:15.000Z' + duration: 5 + energy-cpu: 0.0001666666666666667 + - timestamp: '2023-12-12T00:00:20.000Z' + duration: 5 + energy-cpu: 0.0001666666666666667 + - timestamp: '2023-12-12T00:00:25.000Z' + duration: 5 + energy-cpu: 0.0001666666666666667 + - timestamp: '2023-12-12T00:00:30.000Z' + duration: 5 + energy-cpu: 0.0001666666666666667 + - timestamp: '2023-12-12T00:00:35.000Z' + duration: 5 + energy-cpu: 0.0001666666666666667 + - timestamp: '2023-12-12T00:00:40.000Z' + duration: 5 + energy-cpu: 0.0001 + - timestamp: '2023-12-12T00:00:45.000Z' + duration: 5 + energy-cpu: 0 + - timestamp: '2023-12-12T00:00:50.000Z' + duration: 5 + energy-cpu: 0 + - timestamp: '2023-12-12T00:00:55.000Z' + duration: 5 + energy-cpu: 0 + - timestamp: '2023-12-12T00:01:00.000Z' + duration: 1 + energy-cpu: 0 diff --git a/manifests/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yml b/manifests/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yml deleted file mode 100644 index 33c5cc4b1..000000000 --- a/manifests/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: cloud-metadata -description: failing because cloud/vendor is not provided -tags: -initialize: - # outputs: ['yaml'] - plugins: - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] -tree: - children: - child: - pipeline: - - cloud-metadata - config: - inputs: - - timestamp: 2023-07-06T00:00 # [KEYWORD] [NO-SUBFIELDS] time when measurement occurred - #cloud/vendor: aws - cloud/instance-type: m5n.large - duration: 100 - cpu/utilization: 10 diff --git a/manifests/plugins/csv-lookup/cloud-metadata/success.yml b/manifests/plugins/csv-lookup/cloud-metadata/success.yml deleted file mode 100644 index bd3cfdbb7..000000000 --- a/manifests/plugins/csv-lookup/cloud-metadata/success.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: cloud-metadata -description: successful path -tags: -initialize: - # outputs: ['yaml'] - plugins: - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv - query: - instance-class: cloud/instance-type - output: ['cpu-cores-utilized', 'vcpus-allocated'] -tree: - children: - child: - pipeline: - - cloud-metadata - config: - inputs: - - timestamp: 2023-07-06T00:00 # [KEYWORD] [NO-SUBFIELDS] time when measurement occurred - cloud/vendor: aws - cloud/instance-type: m5n.large - duration: 100 - cpu/utilization: 10 diff --git a/manifests/plugins/csv-lookup/region-metadata/success-renaming.yml b/manifests/plugins/csv-lookup/region-metadata/success-renaming.yml deleted file mode 100644 index 7934e6234..000000000 --- a/manifests/plugins/csv-lookup/region-metadata/success-renaming.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: csv-lookup-demo -description: -tags: -initialize: - # outputs: - # - yaml - plugins: - cloud-metadata: - method: CSVLookup - path: 'builtin' - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv - query: - cloud-provider: "cloud/provider" - cloud-region: "cloud/region" - output: ['em-zone-id','renamed-em-zone-data'] -tree: - children: - child: - pipeline: - - cloud-metadata - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cloud/provider: Google Cloud - cloud/region: asia-east1 diff --git a/manifests/plugins/csv-lookup/region-metadata/success.yml b/manifests/plugins/csv-lookup/region-metadata/success.yml deleted file mode 100644 index c6fc07d7b..000000000 --- a/manifests/plugins/csv-lookup/region-metadata/success.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: csv-lookup-demo -description: -tags: -initialize: - # outputs: - # - yaml - plugins: - cloud-metadata: - method: CSVLookup - path: 'builtin' - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv - query: - cloud-provider: "cloud/provider" - cloud-region: "cloud/region" - output: "*" -tree: - children: - child: - pipeline: - - cloud-metadata - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cloud/provider: Google Cloud - cloud/region: asia-east1 diff --git a/manifests/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yml b/manifests/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yml deleted file mode 100644 index b14e57d1d..000000000 --- a/manifests/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yml +++ /dev/null @@ -1,23 +0,0 @@ -name: tdp-finder -description: failure with `inputs` missing `physical-processor` param -tags: -initialize: - # outputs: ['yaml'] - plugins: - tdp-finder: - method: CSVLookup - path: "builtin" - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/tdp-data-1.csv - query: - name: physical-processor - output: "tdp" -tree: - children: - child: - pipeline: - - tdp-finder - config: - inputs: - - timestamp: 2023-07-06T00:00 - duration: 300 diff --git a/manifests/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml b/manifests/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml deleted file mode 100644 index 47f392fcc..000000000 --- a/manifests/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml +++ /dev/null @@ -1,24 +0,0 @@ -name: tdp-finder -description: successful path -tags: -initialize: - # outputs: ['yaml'] - plugins: - tdp-finder: - method: CSVLookup - path: "builtin" - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/tdp-data-1.csv - query: - name: physical-processor - output: "tdp" -tree: - children: - child: - pipeline: - - tdp-finder - config: - inputs: - - timestamp: 2023-07-06T00:00 - duration: 300 - physical-processor: AMD 302 diff --git a/manifests/plugins/csv-lookup/tdp-finder/success.yml b/manifests/plugins/csv-lookup/tdp-finder/success.yml deleted file mode 100644 index 42545b0df..000000000 --- a/manifests/plugins/csv-lookup/tdp-finder/success.yml +++ /dev/null @@ -1,24 +0,0 @@ -name: tdp-finder -description: successful path -tags: -initialize: - # outputs: ['yaml'] - plugins: - tdp-finder: - method: CSVLookup - path: "builtin" - global-config: - filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/tdp-data-1.csv - query: - name: physical-processor - output: "tdp" -tree: - children: - child: - pipeline: - - tdp-finder - config: - inputs: - - timestamp: 2023-07-06T00:00 - duration: 300 - physical-processor: AMD 3020e diff --git a/manifests/plugins/exponent/success.yml b/manifests/plugins/exponent/success.yml deleted file mode 100644 index c123b3a24..000000000 --- a/manifests/plugins/exponent/success.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: exponent demo -description: -tags: -initialize: - # outputs: - # - yaml - plugins: - exponent: - method: Exponent - path: 'builtin' - global-config: - input-parameter: 'cpu/energy' - exponent: 2 - output-parameter: 'energy' -tree: - children: - child: - pipeline: - - exponent - config: - exponent: - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cpu/energy: 0.001 - network/energy: 0.001 diff --git a/manifests/plugins/interpolation/success.yml b/manifests/plugins/interpolation/success.yml deleted file mode 100644 index 35d750e48..000000000 --- a/manifests/plugins/interpolation/success.yml +++ /dev/null @@ -1,24 +0,0 @@ -name: interpolation-demo -description: simple demo of interpolation plugin -tags: -initialize: - plugins: - interpolation: - method: Interpolation - path: "builtin" - global-config: - method: linear - x: [0, 10, 50, 100] - y: [0.12, 0.32, 0.75, 1.02] - input-parameter: "cpu/utilization" - output-parameter: "result" - -tree: - children: - child: - pipeline: - - interpolation - inputs: - - timestamp: 2023-07-06T00:00 - duration: 3600 - cpu/utilization: 45 diff --git a/manifests/plugins/subtract/success.yml b/manifests/plugins/subtract/success.yml deleted file mode 100644 index 276128171..000000000 --- a/manifests/plugins/subtract/success.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: subtract demo -description: -tags: -initialize: - outputs: - - yaml - plugins: - subtract: - method: Subtract - path: 'builtin' - global-config: - input-parameters: ['cpu/energy', 'network/energy'] - output-parameter: 'energy/diff' -tree: - children: - child: - pipeline: - - subtract - config: - subtract: - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cpu/energy: 0.003 - network/energy: 0.001 \ No newline at end of file From 49e88c14182604a59f86bdf1c6449d65acba03b1 Mon Sep 17 00:00:00 2001 From: MariamKhalatova Date: Wed, 3 Jul 2024 15:07:52 +0400 Subject: [PATCH 2/5] fix(manifests): fetch latest manifests from main --- .../failure-invalid-instance-type.yaml | 27 ++++++ .../failure-invalid-vendor.yaml | 27 ++++++ .../failure-missing-cloud-vendor.yml | 27 ++++++ .../csv-lookup/cloud-metadata/success.yml | 27 ++++++ .../failure-missing-column.yml | 3 +- .../failure-missing-output.yml | 3 +- .../region-metadata/success-renaming.yml | 25 +++++ .../csv-lookup/region-metadata/success.yml | 25 +++++ .../builtins/csv-lookup/success-renaming.yaml | 83 ---------------- .../examples/builtins/csv-lookup/success.yaml | 95 ------------------- .../failure-missing-input-param.yml | 23 +++++ ...failure-unsupported-physical-processor.yml | 24 +++++ .../csv-lookup/tdp-finder/success.yml | 24 +++++ .../divide/failure-denominator-equal-zero.yml | 17 ++-- .../failure-invalid-config-denominator.yml | 17 ++-- .../divide/failure-missing-numerator.yml | 17 ++-- .../examples/builtins/divide/success.yml | 19 ++-- .../examples/builtins/exponent/success.yml | 25 +++++ .../examples/builtins/groupby/success.yml | 2 +- .../builtins/interpolation/success.yml | 23 +++++ .../builtins/mock-observations/success.yml | 2 +- .../sci/failure-missing-input-param.yml | 8 +- manifests/examples/builtins/sci/success.yml | 3 - .../examples/builtins/subtract/success.yml | 24 +++++ manifests/examples/builtins/sum/success.yml | 2 +- 25 files changed, 341 insertions(+), 231 deletions(-) create mode 100644 manifests/examples/builtins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml create mode 100644 manifests/examples/builtins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml create mode 100644 manifests/examples/builtins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yml create mode 100644 manifests/examples/builtins/csv-lookup/cloud-metadata/success.yml rename manifests/examples/builtins/csv-lookup/{ => region-metadata}/failure-missing-column.yml (95%) rename manifests/examples/builtins/csv-lookup/{ => region-metadata}/failure-missing-output.yml (95%) create mode 100644 manifests/examples/builtins/csv-lookup/region-metadata/success-renaming.yml create mode 100644 manifests/examples/builtins/csv-lookup/region-metadata/success.yml delete mode 100644 manifests/examples/builtins/csv-lookup/success-renaming.yaml delete mode 100644 manifests/examples/builtins/csv-lookup/success.yaml create mode 100644 manifests/examples/builtins/csv-lookup/tdp-finder/failure-missing-input-param.yml create mode 100644 manifests/examples/builtins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml create mode 100644 manifests/examples/builtins/csv-lookup/tdp-finder/success.yml create mode 100644 manifests/examples/builtins/exponent/success.yml create mode 100644 manifests/examples/builtins/interpolation/success.yml create mode 100644 manifests/examples/builtins/subtract/success.yml diff --git a/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml b/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml new file mode 100644 index 000000000..fa55623c2 --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-invalid-instance-type.yaml @@ -0,0 +1,27 @@ +name: cloud-metadata +description: cloud/instance-type instance type is not supported in the cloud vendor +tags: +initialize: + # outputs: ['yaml'] + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: ['cpu-cores-utilized', 'vcpus-allocated'] +tree: + children: + child: + pipeline: + - cloud-metadata + config: + inputs: + - timestamp: 2023-07-06T00:00 # [KEYWORD] [NO-SUBFIELDS] time when measurement occurred + cloud/vendor: aws + cloud/instance-type: m6 + duration: 100 + cpu/utilization: 10 diff --git a/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml b/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml new file mode 100644 index 000000000..6f247f6c4 --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-invalid-vendor.yaml @@ -0,0 +1,27 @@ +name: cloud-metadata +description: failure with invalid `inputs.cloud/vendor` +tags: +initialize: + # outputs: ['yaml'] + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: ['cpu-cores-utilized', 'vcpus-allocated'] +tree: + children: + child: + pipeline: + - cloud-metadata + config: + inputs: + - timestamp: 2023-07-06T00:00 # [KEYWORD] [NO-SUBFIELDS] time when measurement occurred + cloud/vendor: gcp + cloud/instance-type: m5n.large + duration: 100 + cpu/utilization: 10 diff --git a/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yml b/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yml new file mode 100644 index 000000000..33c5cc4b1 --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yml @@ -0,0 +1,27 @@ +name: cloud-metadata +description: failing because cloud/vendor is not provided +tags: +initialize: + # outputs: ['yaml'] + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: ['cpu-cores-utilized', 'vcpus-allocated'] +tree: + children: + child: + pipeline: + - cloud-metadata + config: + inputs: + - timestamp: 2023-07-06T00:00 # [KEYWORD] [NO-SUBFIELDS] time when measurement occurred + #cloud/vendor: aws + cloud/instance-type: m5n.large + duration: 100 + cpu/utilization: 10 diff --git a/manifests/examples/builtins/csv-lookup/cloud-metadata/success.yml b/manifests/examples/builtins/csv-lookup/cloud-metadata/success.yml new file mode 100644 index 000000000..bd3cfdbb7 --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/cloud-metadata/success.yml @@ -0,0 +1,27 @@ +name: cloud-metadata +description: successful path +tags: +initialize: + # outputs: ['yaml'] + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: ['cpu-cores-utilized', 'vcpus-allocated'] +tree: + children: + child: + pipeline: + - cloud-metadata + config: + inputs: + - timestamp: 2023-07-06T00:00 # [KEYWORD] [NO-SUBFIELDS] time when measurement occurred + cloud/vendor: aws + cloud/instance-type: m5n.large + duration: 100 + cpu/utilization: 10 diff --git a/manifests/examples/builtins/csv-lookup/failure-missing-column.yml b/manifests/examples/builtins/csv-lookup/region-metadata/failure-missing-column.yml similarity index 95% rename from manifests/examples/builtins/csv-lookup/failure-missing-column.yml rename to manifests/examples/builtins/csv-lookup/region-metadata/failure-missing-column.yml index a0d54d0b5..85360f717 100644 --- a/manifests/examples/builtins/csv-lookup/failure-missing-column.yml +++ b/manifests/examples/builtins/csv-lookup/region-metadata/failure-missing-column.yml @@ -2,8 +2,7 @@ name: csv-lookup-demo description: tags: initialize: - # outputs: - # - yaml + # outputs: [yaml] plugins: cloud-metadata: method: CSVLookup diff --git a/manifests/examples/builtins/csv-lookup/failure-missing-output.yml b/manifests/examples/builtins/csv-lookup/region-metadata/failure-missing-output.yml similarity index 95% rename from manifests/examples/builtins/csv-lookup/failure-missing-output.yml rename to manifests/examples/builtins/csv-lookup/region-metadata/failure-missing-output.yml index c6fc07d7b..005961ee0 100644 --- a/manifests/examples/builtins/csv-lookup/failure-missing-output.yml +++ b/manifests/examples/builtins/csv-lookup/region-metadata/failure-missing-output.yml @@ -2,8 +2,7 @@ name: csv-lookup-demo description: tags: initialize: - # outputs: - # - yaml + # outputs: [yaml] plugins: cloud-metadata: method: CSVLookup diff --git a/manifests/examples/builtins/csv-lookup/region-metadata/success-renaming.yml b/manifests/examples/builtins/csv-lookup/region-metadata/success-renaming.yml new file mode 100644 index 000000000..66df39736 --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/region-metadata/success-renaming.yml @@ -0,0 +1,25 @@ +name: csv-lookup-demo +description: +tags: +initialize: + # outputs: [yaml] + plugins: + cloud-metadata: + method: CSVLookup + path: 'builtin' + global-config: + filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv + query: + cloud-provider: "cloud/provider" + cloud-region: "cloud/region" + output: ['em-zone-id','renamed-em-zone-data'] +tree: + children: + child: + pipeline: + - cloud-metadata + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 diff --git a/manifests/examples/builtins/csv-lookup/region-metadata/success.yml b/manifests/examples/builtins/csv-lookup/region-metadata/success.yml new file mode 100644 index 000000000..005961ee0 --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/region-metadata/success.yml @@ -0,0 +1,25 @@ +name: csv-lookup-demo +description: +tags: +initialize: + # outputs: [yaml] + plugins: + cloud-metadata: + method: CSVLookup + path: 'builtin' + global-config: + filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv + query: + cloud-provider: "cloud/provider" + cloud-region: "cloud/region" + output: "*" +tree: + children: + child: + pipeline: + - cloud-metadata + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cloud/provider: Google Cloud + cloud/region: asia-east1 diff --git a/manifests/examples/builtins/csv-lookup/success-renaming.yaml b/manifests/examples/builtins/csv-lookup/success-renaming.yaml deleted file mode 100644 index 80d12e8a8..000000000 --- a/manifests/examples/builtins/csv-lookup/success-renaming.yaml +++ /dev/null @@ -1,83 +0,0 @@ -name: csv-lookup-demo -description: null -tags: null -initialize: - plugins: - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv - query: - cloud-provider: cloud/provider - cloud-region: cloud/region - output: - - em-zone-id - - renamed-em-zone-data - outputs: - - yaml -execution: - command: >- - /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node - /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m - manifests/examples/builtins/csv-lookup/success-renaming.yml -o - manifests/examples/builtins/csv-lookup/success-renaming - environment: - if-version: 0.4.0 - os: macOS - os-version: '13.2' - node-version: 18.14.2 - date-time: 2024-07-02T21:16:40.781Z (UTC) - dependencies: - - '@babel/core@7.22.10' - - '@babel/preset-typescript@7.23.3' - - '@commitlint/cli@18.6.0' - - '@commitlint/config-conventional@18.6.0' - - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models - - '@jest/globals@29.7.0' - - '@types/jest@29.5.8' - - '@types/js-yaml@4.0.9' - - '@types/luxon@3.4.2' - - '@types/node@20.9.0' - - axios-mock-adapter@1.22.0 - - axios@1.7.2 - - cross-env@7.0.3 - - csv-parse@5.5.6 - - csv-stringify@6.4.6 - - fixpack@4.0.0 - - gts@5.2.0 - - husky@8.0.3 - - jest@29.7.0 - - js-yaml@4.1.0 - - lint-staged@15.2.2 - - luxon@3.4.4 - - release-it@16.3.0 - - rimraf@5.0.5 - - ts-command-line-args@2.5.1 - - ts-jest@29.1.1 - - typescript-cubic-spline@1.0.1 - - typescript@5.2.2 - - winston@3.11.0 - - zod@3.22.4 - status: success -tree: - children: - child: - pipeline: - - cloud-metadata - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cloud/provider: Google Cloud - cloud/region: asia-east1 - outputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cloud/provider: Google Cloud - cloud/region: asia-east1 - renamed-em-zone-data: TW diff --git a/manifests/examples/builtins/csv-lookup/success.yaml b/manifests/examples/builtins/csv-lookup/success.yaml deleted file mode 100644 index 0f616f376..000000000 --- a/manifests/examples/builtins/csv-lookup/success.yaml +++ /dev/null @@ -1,95 +0,0 @@ -name: csv-lookup-demo -description: null -tags: null -initialize: - plugins: - cloud-metadata: - path: builtin - method: CSVLookup - global-config: - filepath: >- - https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/region-metadata.csv - query: - cloud-provider: cloud/provider - cloud-region: cloud/region - output: '*' - outputs: - - yaml -execution: - command: >- - /Users/mariamkhalatova/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node - /Users/mariamkhalatova/Projects/UK/if/src/index.ts -m - manifests/examples/builtins/csv-lookup/success.yml -o - manifests/examples/builtins/csv-lookup/success - environment: - if-version: 0.4.0 - os: macOS - os-version: '13.2' - node-version: 18.14.2 - date-time: 2024-07-02T21:09:37.066Z (UTC) - dependencies: - - '@babel/core@7.22.10' - - '@babel/preset-typescript@7.23.3' - - '@commitlint/cli@18.6.0' - - '@commitlint/config-conventional@18.6.0' - - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models - - '@jest/globals@29.7.0' - - '@types/jest@29.5.8' - - '@types/js-yaml@4.0.9' - - '@types/luxon@3.4.2' - - '@types/node@20.9.0' - - axios-mock-adapter@1.22.0 - - axios@1.7.2 - - cross-env@7.0.3 - - csv-parse@5.5.6 - - csv-stringify@6.4.6 - - fixpack@4.0.0 - - gts@5.2.0 - - husky@8.0.3 - - jest@29.7.0 - - js-yaml@4.1.0 - - lint-staged@15.2.2 - - luxon@3.4.4 - - release-it@16.3.0 - - rimraf@5.0.5 - - ts-command-line-args@2.5.1 - - ts-jest@29.1.1 - - typescript-cubic-spline@1.0.1 - - typescript@5.2.2 - - winston@3.11.0 - - zod@3.22.4 - status: success -tree: - children: - child: - pipeline: - - cloud-metadata - inputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cloud/provider: Google Cloud - cloud/region: asia-east1 - outputs: - - timestamp: 2023-08-06T00:00 - duration: 3600 - cloud/provider: Google Cloud - cloud/region: asia-east1 - year: 2022 - cfe-region: Taiwan - em-zone-id: TW - wt-region-id: TW - location: Taiwan - geolocation: 25.0375,121.5625 - cfe-hourly: 0.18 - cfe-annual: nan - power-usage-efficiency: nan - net-carbon: 0 - grid-carbon-intensity-24x7: 453 - grid-carbon-intensity-consumption: nan - grid-carbon-intensity-marginal: nan - grid-carbon-intensity-production: nan - grid-carbon-intensity: 453 diff --git a/manifests/examples/builtins/csv-lookup/tdp-finder/failure-missing-input-param.yml b/manifests/examples/builtins/csv-lookup/tdp-finder/failure-missing-input-param.yml new file mode 100644 index 000000000..b14e57d1d --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/tdp-finder/failure-missing-input-param.yml @@ -0,0 +1,23 @@ +name: tdp-finder +description: failure with `inputs` missing `physical-processor` param +tags: +initialize: + # outputs: ['yaml'] + plugins: + tdp-finder: + method: CSVLookup + path: "builtin" + global-config: + filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/tdp-data-1.csv + query: + name: physical-processor + output: "tdp" +tree: + children: + child: + pipeline: + - tdp-finder + config: + inputs: + - timestamp: 2023-07-06T00:00 + duration: 300 diff --git a/manifests/examples/builtins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml b/manifests/examples/builtins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml new file mode 100644 index 000000000..47f392fcc --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml @@ -0,0 +1,24 @@ +name: tdp-finder +description: successful path +tags: +initialize: + # outputs: ['yaml'] + plugins: + tdp-finder: + method: CSVLookup + path: "builtin" + global-config: + filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/tdp-data-1.csv + query: + name: physical-processor + output: "tdp" +tree: + children: + child: + pipeline: + - tdp-finder + config: + inputs: + - timestamp: 2023-07-06T00:00 + duration: 300 + physical-processor: AMD 302 diff --git a/manifests/examples/builtins/csv-lookup/tdp-finder/success.yml b/manifests/examples/builtins/csv-lookup/tdp-finder/success.yml new file mode 100644 index 000000000..42545b0df --- /dev/null +++ b/manifests/examples/builtins/csv-lookup/tdp-finder/success.yml @@ -0,0 +1,24 @@ +name: tdp-finder +description: successful path +tags: +initialize: + # outputs: ['yaml'] + plugins: + tdp-finder: + method: CSVLookup + path: "builtin" + global-config: + filepath: https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/tdp-data-1.csv + query: + name: physical-processor + output: "tdp" +tree: + children: + child: + pipeline: + - tdp-finder + config: + inputs: + - timestamp: 2023-07-06T00:00 + duration: 300 + physical-processor: AMD 3020e diff --git a/manifests/examples/builtins/divide/failure-denominator-equal-zero.yml b/manifests/examples/builtins/divide/failure-denominator-equal-zero.yml index af5ed2ae0..4022d4797 100644 --- a/manifests/examples/builtins/divide/failure-denominator-equal-zero.yml +++ b/manifests/examples/builtins/divide/failure-denominator-equal-zero.yml @@ -5,8 +5,14 @@ initialize: # outputs: ['yaml'] plugins: cloud-metadata: - method: CloudMetadata - path: "@grnsft/if-plugins" + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: ['cpu-cores-utilized', 'vcpus-allocated'] divide: method: Divide path: "builtin" @@ -14,19 +20,12 @@ initialize: numerator: vcpus-allocated denominator: 0 output: cpu/number-cores - boavizta-cpu: - method: BoaviztaCpuOutput - path: "@grnsft/if-unofficial-plugins" - global-config: - allocation: LINEAR - verbose: true tree: children: child: pipeline: - cloud-metadata - divide - - boavizta-cpu config: divide: defaults: diff --git a/manifests/examples/builtins/divide/failure-invalid-config-denominator.yml b/manifests/examples/builtins/divide/failure-invalid-config-denominator.yml index 063274bc0..91129714a 100644 --- a/manifests/examples/builtins/divide/failure-invalid-config-denominator.yml +++ b/manifests/examples/builtins/divide/failure-invalid-config-denominator.yml @@ -5,8 +5,14 @@ initialize: outputs: ['yaml'] plugins: cloud-metadata: - method: CloudMetadata - path: "@grnsft/if-plugins" + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: ['cpu-cores-utilized', 'vcpus-allocated'] divide: method: Divide path: "builtin" @@ -14,19 +20,12 @@ initialize: numerator: vcpus-allocated denominator: 'vcpus' output: cpu/number-cores - boavizta-cpu: - method: BoaviztaCpuOutput - path: "@grnsft/if-unofficial-plugins" - global-config: - allocation: LINEAR - verbose: true tree: children: child: pipeline: - cloud-metadata - divide - - boavizta-cpu config: divide: defaults: diff --git a/manifests/examples/builtins/divide/failure-missing-numerator.yml b/manifests/examples/builtins/divide/failure-missing-numerator.yml index 7f03d5eba..7cf123976 100644 --- a/manifests/examples/builtins/divide/failure-missing-numerator.yml +++ b/manifests/examples/builtins/divide/failure-missing-numerator.yml @@ -5,8 +5,14 @@ initialize: # outputs: ['yaml'] plugins: cloud-metadata: - method: CloudMetadata - path: "@grnsft/if-plugins" + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: ['cpu-cores-utilized', 'vcpus-allocated'] divide: method: Divide path: "builtin" @@ -14,19 +20,12 @@ initialize: #numerator: vcpus-allocated denominator: 2 output: cpu/number-cores - boavizta-cpu: - method: BoaviztaCpuOutput - path: "@grnsft/if-unofficial-plugins" - global-config: - allocation: LINEAR - verbose: true tree: children: child: pipeline: - cloud-metadata - divide - - boavizta-cpu config: divide: defaults: diff --git a/manifests/examples/builtins/divide/success.yml b/manifests/examples/builtins/divide/success.yml index ed75a7c5c..6a32d7e2c 100644 --- a/manifests/examples/builtins/divide/success.yml +++ b/manifests/examples/builtins/divide/success.yml @@ -2,11 +2,17 @@ name: divide description: success path tags: initialize: -# outputs: ['yaml'] + # outputs: ['yaml'] plugins: cloud-metadata: - method: CloudMetadata - path: "@grnsft/if-plugins" + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: ['cpu-cores-utilized', 'vcpus-allocated'] divide: method: Divide path: "builtin" @@ -14,19 +20,12 @@ initialize: numerator: vcpus-allocated denominator: 2 output: cpu/number-cores - boavizta-cpu: - method: BoaviztaCpuOutput - path: "@grnsft/if-unofficial-plugins" - global-config: - allocation: LINEAR - verbose: true tree: children: child: pipeline: - cloud-metadata - divide - - boavizta-cpu config: divide: defaults: diff --git a/manifests/examples/builtins/exponent/success.yml b/manifests/examples/builtins/exponent/success.yml new file mode 100644 index 000000000..c8b59b78c --- /dev/null +++ b/manifests/examples/builtins/exponent/success.yml @@ -0,0 +1,25 @@ +name: exponent demo +description: +tags: +initialize: + # outputs: [yaml] + plugins: + exponent: + method: Exponent + path: 'builtin' + global-config: + input-parameter: 'cpu/energy' + exponent: 2 + output-parameter: 'energy' +tree: + children: + child: + pipeline: + - exponent + config: + exponent: + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.001 + network/energy: 0.001 diff --git a/manifests/examples/builtins/groupby/success.yml b/manifests/examples/builtins/groupby/success.yml index b81e7d53e..e8e164e91 100644 --- a/manifests/examples/builtins/groupby/success.yml +++ b/manifests/examples/builtins/groupby/success.yml @@ -1,7 +1,7 @@ name: groupby description: successful path initialize: - + # outputs: ['yaml'] plugins: group-by: path: "builtin" diff --git a/manifests/examples/builtins/interpolation/success.yml b/manifests/examples/builtins/interpolation/success.yml new file mode 100644 index 000000000..cce024727 --- /dev/null +++ b/manifests/examples/builtins/interpolation/success.yml @@ -0,0 +1,23 @@ +name: interpolation-demo +description: simple demo of interpolation plugin +tags: +initialize: + plugins: + interpolation: + method: Interpolation + path: "builtin" + global-config: + method: linear + x: [0, 10, 50, 100] + y: [0.12, 0.32, 0.75, 1.02] + input-parameter: "cpu/utilization" + output-parameter: "result" +tree: + children: + child: + pipeline: + - interpolation + inputs: + - timestamp: 2023-07-06T00:00 + duration: 3600 + cpu/utilization: 45 diff --git a/manifests/examples/builtins/mock-observations/success.yml b/manifests/examples/builtins/mock-observations/success.yml index 941344fe4..ac1464322 100644 --- a/manifests/examples/builtins/mock-observations/success.yml +++ b/manifests/examples/builtins/mock-observations/success.yml @@ -10,7 +10,7 @@ initialize: path: "builtin" global-config: timestamp-from: 2023-07-06T00:00 - timestamp-to: 2023-07-06T00:01 + timestamp-to: 2023-07-06T00:10 duration: 60 components: - cloud/instance-type: A1 diff --git a/manifests/examples/builtins/sci/failure-missing-input-param.yml b/manifests/examples/builtins/sci/failure-missing-input-param.yml index 44ced7374..54514a8e5 100644 --- a/manifests/examples/builtins/sci/failure-missing-input-param.yml +++ b/manifests/examples/builtins/sci/failure-missing-input-param.yml @@ -8,17 +8,13 @@ initialize: kind: plugin method: Sci path: "builtin" - # global-config: - # functional-unit: requests + global-config: + functional-unit: requests tree: children: child: pipeline: - sci - config: - sci: - functional-unit-time: 1 sec - functional-unit: requests # factor to convert per time to per f.unit inputs: - timestamp: 2023-07-06T00:00 duration: 3600 diff --git a/manifests/examples/builtins/sci/success.yml b/manifests/examples/builtins/sci/success.yml index c7e6dbde6..cddfe5755 100644 --- a/manifests/examples/builtins/sci/success.yml +++ b/manifests/examples/builtins/sci/success.yml @@ -16,9 +16,6 @@ tree: pipeline: - sci config: - sci: - functional-unit-time: 1 sec - functional-unit: requests # factor to convert per time to per f.unit inputs: - timestamp: 2023-07-06T00:00 duration: 3600 diff --git a/manifests/examples/builtins/subtract/success.yml b/manifests/examples/builtins/subtract/success.yml new file mode 100644 index 000000000..bcc27294c --- /dev/null +++ b/manifests/examples/builtins/subtract/success.yml @@ -0,0 +1,24 @@ +name: subtract demo +description: +tags: +initialize: + # outputs: ['yaml'] + plugins: + subtract: + method: Subtract + path: 'builtin' + global-config: + input-parameters: ['cpu/energy', 'network/energy'] + output-parameter: 'energy/diff' +tree: + children: + child: + pipeline: + - subtract + config: + subtract: + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/energy: 0.003 + network/energy: 0.001 \ No newline at end of file diff --git a/manifests/examples/builtins/sum/success.yml b/manifests/examples/builtins/sum/success.yml index fc0661bf5..454efc9e0 100644 --- a/manifests/examples/builtins/sum/success.yml +++ b/manifests/examples/builtins/sum/success.yml @@ -2,7 +2,7 @@ name: sum description: successful path tags: initialize: - outputs: ['yaml'] + # outputs: ['yaml'] plugins: sum: method: Sum From baf4b0bb156f6dfc0e20ca9c92d7bb7d19bf8f23 Mon Sep 17 00:00:00 2001 From: MariamKhalatova Date: Wed, 3 Jul 2024 20:21:35 +0400 Subject: [PATCH 3/5] fix(manifests): fix pipelines --- manifests/examples/pipelines/generics.yml | 80 +++++++++-- .../pipelines/mock-cpu-util-to-carbon.yml | 70 ---------- manifests/examples/pipelines/nesting.yml | 117 +++++++++++----- .../examples/pipelines/pipeline-teads-sci.yml | 72 +++++++--- .../pipelines/pipeline-with-aggregate.yml | 92 +++++++++---- .../pipelines/pipeline-with-mocks.yml | 87 +++++++++--- manifests/examples/pipelines/zeros.yml | 130 ++++++++++++++++++ 7 files changed, 469 insertions(+), 179 deletions(-) delete mode 100644 manifests/examples/pipelines/mock-cpu-util-to-carbon.yml create mode 100644 manifests/examples/pipelines/zeros.yml diff --git a/manifests/examples/pipelines/generics.yml b/manifests/examples/pipelines/generics.yml index 6492c9a3d..641bedcb1 100644 --- a/manifests/examples/pipelines/generics.yml +++ b/manifests/examples/pipelines/generics.yml @@ -2,20 +2,55 @@ name: generics description: a pipeline that does arbitrary calculations using our generic arithmetic builtins tags: initialize: + # outputs: [yaml] plugins: - "sum": + "interpolate": + method: Interpolation + path: 'builtin' + global-config: + method: linear + x: [0, 10, 50, 100] + y: [0.12, 0.32, 0.75, 1.02] + input-parameter: 'cpu/utilization' + output-parameter: 'cpu-factor' + "cpu-factor-to-wattage": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-factor", "cpu/thermal-design-power"] + output-parameter: "cpu-wattage" + "wattage-times-duration": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-wattage", "duration"] + output-parameter: "cpu-wattage-times-duration" + "wattage-to-energy-kwh": + method: Divide path: "builtin" - method: Sum global-config: - input-parameters: - - cpu/energy - - network/energy - output-parameter: energy-sum + numerator: cpu-wattage-times-duration + denominator: 3600000 + output: cpu-energy-raw + "calculate-vcpu-ratio": + method: Divide + path: "builtin" + global-config: + numerator: vcpus-total + denominator: vcpus-allocated + output: vcpu-ratio + "correct-cpu-energy-for-vcpu-ratio": + method: Divide + path: "builtin" + global-config: + numerator: cpu-energy-raw + denominator: vcpu-ratio + output: cpu-energy-kwh "coefficient": path: "builtin" method: Coefficient global-config: - input-parameter: energy + input-parameter: cpu-energy-kwh coefficient: 2 output-parameter: energy-doubled "multiply": @@ -28,18 +63,45 @@ tree: children: child-1: pipeline: - - sum + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio - coefficient - multiply config: defaults: cpu/thermal-design-power: 100 + vcpus-allocated: 1 + vcpus-total: 8 inputs: - timestamp: "2023-12-12T00:00:00.000Z" cloud/instance-type: A1 cloud/region: uk-west duration: 1 cpu/utilization: 50 - cpu/energy: 20 + network/energy: 10 + energy: 5 + - timestamp: "2023-12-12T00:00:01.000Z" + duration: 5 + cpu/utilization: 20 + cloud/instance-type: A1 + cloud/region: uk-west + network/energy: 10 + energy: 5 + - timestamp: "2023-12-12T00:00:06.000Z" + duration: 7 + cpu/utilization: 15 + cloud/instance-type: A1 + cloud/region: uk-west + network/energy: 10 + energy: 5 + - timestamp: "2023-12-12T00:00:13.000Z" + duration: 30 + cloud/instance-type: A1 + cloud/region: uk-west + cpu/utilization: 15 network/energy: 10 energy: 5 diff --git a/manifests/examples/pipelines/mock-cpu-util-to-carbon.yml b/manifests/examples/pipelines/mock-cpu-util-to-carbon.yml deleted file mode 100644 index 35f7cea26..000000000 --- a/manifests/examples/pipelines/mock-cpu-util-to-carbon.yml +++ /dev/null @@ -1,70 +0,0 @@ -name: mock-cpu-util-to-carbon -description: a complete pipeline that starts with mocked CPU utilization data and outputs operational carbon in gCO2eq -initialize: - #outputs: ['yaml'] - plugins: - group-by: - path: 'builtin' - method: GroupBy - operational-carbon: - path: 'builtin' - method: Multiply - global-config: - input-parameters: ['cpu/energy', 'grid/carbon-intensity'] - output-parameter: 'carbon' - watttime: - path: '@grnsft/if-unofficial-plugins' - method: WattTimeGridEmissions - teads-curve: - path: '@grnsft/if-unofficial-plugins' - method: TeadsCurve - global-config: - interpolation: spline - cloud-metadata: - method: CloudMetadata - path: "@grnsft/if-plugins" - mock-observations: - path: 'builtin' - method: MockObservations - global-config: - timestamp-from: '2024-03-05T00:00:00.000Z' - timestamp-to: '2024-03-05T00:01:00.000Z' - duration: 10 - components: - - name: server-1 - cloud/instance-type: Standard_E64_v3 - cloud/region: westus3 - - name: server-2 - cloud/instance-type: Standard_E64_v3 - cloud/region: westus3 - generators: - common: - cloud/vendor: azure - randint: - cpu/utilization: - min: 1 - max: 99 - 'time-sync': - method: TimeSync - path: "builtin" - global-config: - start-time: '2024-03-05T00:00:00.000Z' - end-time: '2024-03-05T00:01:00.000Z' - interval: 5 - allow-padding: true -tree: - pipeline: - - mock-observations - - group-by - - time-sync - - cloud-metadata - - watttime - - teads-curve - - operational-carbon - defaults: - config: - group-by: - group: - - cloud/region - - name - inputs: null diff --git a/manifests/examples/pipelines/nesting.yml b/manifests/examples/pipelines/nesting.yml index e56e8bb18..978510f48 100644 --- a/manifests/examples/pipelines/nesting.yml +++ b/manifests/examples/pipelines/nesting.yml @@ -7,31 +7,62 @@ tags: aggregation: metrics: - "carbon" - - "energy" type: "both" params: initialize: - outputs: ['yaml'] + # outputs: ['yaml'] plugins: - teads-curve: - path: "@grnsft/if-unofficial-plugins" - method: TeadsCurve + "interpolate": + method: Interpolation + path: 'builtin' global-config: - interpolation: spline - sum: + method: linear + x: [0, 10, 50, 100] + y: [0.12, 0.32, 0.75, 1.02] + input-parameter: 'cpu/utilization' + output-parameter: 'cpu-factor' + "cpu-factor-to-wattage": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-factor", "cpu/thermal-design-power"] + output-parameter: "cpu-wattage" + "wattage-times-duration": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-wattage", "duration"] + output-parameter: "cpu-wattage-times-duration" + "wattage-to-energy-kwh": + method: Divide path: "builtin" - method: Sum global-config: - input-parameters: - - cpu/energy - - network/energy - output-parameter: energy + numerator: cpu-wattage-times-duration + denominator: 3600000 + output: cpu-energy-raw + "calculate-vcpu-ratio": + method: Divide + path: "builtin" + global-config: + numerator: vcpus-total + denominator: vcpus-allocated + output: vcpu-ratio + "correct-cpu-energy-for-vcpu-ratio": + method: Divide + path: "builtin" + global-config: + numerator: cpu-energy-raw + denominator: vcpu-ratio + output: cpu-energy-kwh sci-embodied: path: "builtin" method: SciEmbodied - sci-o: - path: "@grnsft/if-plugins" - method: SciO + "operational-carbon": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-energy-kwh", "grid/carbon-intensity"] + output-parameter: "carbon-operational" sci: path: "builtin" method: Sci @@ -62,13 +93,17 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - resources-reserved: 1 - resources-total: 8 + vcpus-allocated: 1 + vcpus-total: 8 pipeline: - - teads-curve - - sum + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio - sci-embodied - - sci-o + - operational-carbon - sum-carbon - time-sync - sci @@ -108,13 +143,17 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - resources-reserved: 1 - resources-total: 8 + vcpus-allocated: 1 + vcpus-total: 8 pipeline: - - teads-curve - - sum + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio - sci-embodied - - sci-o + - operational-carbon - sum-carbon - time-sync - sci @@ -156,13 +195,17 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - resources-reserved: 1 - resources-total: 8 + vcpus-allocated: 1 + vcpus-total: 8 pipeline: - - teads-curve - - sum + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio - sci-embodied - - sci-o + - operational-carbon - sum-carbon - time-sync - sci @@ -202,13 +245,17 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - resources-reserved: 1 - resources-total: 8 + vcpus-allocated: 1 + vcpus-total: 8 pipeline: - - teads-curve - - sum + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio - sci-embodied - - sci-o + - operational-carbon - sum-carbon - time-sync - sci diff --git a/manifests/examples/pipelines/pipeline-teads-sci.yml b/manifests/examples/pipelines/pipeline-teads-sci.yml index 01c491cdc..c07b093bd 100644 --- a/manifests/examples/pipelines/pipeline-teads-sci.yml +++ b/manifests/examples/pipelines/pipeline-teads-sci.yml @@ -3,25 +3,57 @@ description: a full pipeline seeded with some hardcoded input data and yielding tags: initialize: plugins: - "teads-curve": - path: "@grnsft/if-unofficial-plugins" - method: TeadsCurve + "interpolate": + method: Interpolation + path: 'builtin' global-config: - interpolation: spline - "sum": + method: linear + x: [0, 10, 50, 100] + y: [0.12, 0.32, 0.75, 1.02] + input-parameter: 'cpu/utilization' + output-parameter: 'cpu-factor' + "cpu-factor-to-wattage": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-factor", "cpu/thermal-design-power"] + output-parameter: "cpu-wattage" + "wattage-times-duration": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-wattage", "duration"] + output-parameter: "cpu-wattage-times-duration" + "wattage-to-energy-kwh": + method: Divide path: "builtin" - method: Sum global-config: - input-parameters: - - cpu/energy - - network/energy - output-parameter: energy + numerator: cpu-wattage-times-duration + denominator: 3600000 + output: cpu-energy-raw + "calculate-vcpu-ratio": + method: Divide + path: "builtin" + global-config: + numerator: vcpus-total + denominator: vcpus-allocated + output: vcpu-ratio + "correct-cpu-energy-for-vcpu-ratio": + method: Divide + path: "builtin" + global-config: + numerator: cpu-energy-raw + denominator: vcpu-ratio + output: cpu-energy-kwh "sci-embodied": path: "builtin" method: SciEmbodied - "sci-o": - path: "@grnsft/if-plugins" - method: SciO + "operational-carbon": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-energy-kwh", "grid/carbon-intensity"] + output-parameter: "carbon-operational" "sci": path: "builtin" method: Sci @@ -47,10 +79,14 @@ tree: children: child-1: pipeline: - - teads-curve - - sum + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio - sci-embodied - - sci-o + - operational-carbon - sum-carbon - sci config: @@ -60,8 +96,8 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - resources-reserved: 1 - resources-total: 8 + vcpus-total: 8 + vcpus-allocated: 1 component: 1 inputs: - timestamp: "2023-12-12T00:00:00.000Z" diff --git a/manifests/examples/pipelines/pipeline-with-aggregate.yml b/manifests/examples/pipelines/pipeline-with-aggregate.yml index bd3e637ac..7b689f1d8 100644 --- a/manifests/examples/pipelines/pipeline-with-aggregate.yml +++ b/manifests/examples/pipelines/pipeline-with-aggregate.yml @@ -7,25 +7,62 @@ aggregation: type: "both" initialize: plugins: - "teads-curve": - path: "@grnsft/if-unofficial-plugins" - method: TeadsCurve + "interpolate": + method: Interpolation + path: 'builtin' global-config: - interpolation: spline - "sci-e": - path: "@grnsft/if-plugins" - method: SciE + method: linear + x: [0, 10, 50, 100] + y: [0.12, 0.32, 0.75, 1.02] + input-parameter: 'cpu/utilization' + output-parameter: 'cpu-factor' + "cpu-factor-to-wattage": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-factor", "cpu/thermal-design-power"] + output-parameter: "cpu-wattage" + "wattage-times-duration": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-wattage", "duration"] + output-parameter: "cpu-wattage-times-duration" + "wattage-to-energy-kwh": + method: Divide + path: "builtin" + global-config: + numerator: cpu-wattage-times-duration + denominator: 3600000 + output: cpu-energy-raw + "calculate-vcpu-ratio": + method: Divide + path: "builtin" + global-config: + numerator: vcpus-total + denominator: vcpus-allocated + output: vcpu-ratio + "correct-cpu-energy-for-vcpu-ratio": + method: Divide + path: "builtin" + global-config: + numerator: cpu-energy-raw + denominator: vcpu-ratio + output: cpu-energy-kwh "sci-embodied": path: "builtin" method: SciEmbodied - "sci-o": - path: "@grnsft/if-plugins" - method: SciO + "operational-carbon": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-energy-kwh", "grid/carbon-intensity"] + output-parameter: "carbon-operational" "sci": path: "builtin" method: Sci global-config: - functional-unit: "requests" + functional-unit: requests # factor to convert per time to per f.unit "sum-carbon": path: "builtin" method: Sum @@ -42,17 +79,18 @@ initialize: end-time: "2023-12-12T00:01:00.000Z" interval: 5 allow-padding: true - "group-by": - path: builtin - method: GroupBy tree: children: child-1: pipeline: - - teads-curve - - sci-e + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio - sci-embodied - - sci-o + - operational-carbon - sum-carbon - time-sync - sci @@ -67,8 +105,8 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - resources-reserved: 1 - resources-total: 8 + vcpus-total: 8 + vcpus-allocated: 1 inputs: - timestamp: "2023-12-12T00:00:00.000Z" cloud/instance-type: A1 @@ -96,10 +134,14 @@ tree: requests: 30 child-2: pipeline: - - teads-curve - - sci-e + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio - sci-embodied - - sci-o + - operational-carbon - sum-carbon - time-sync - sci @@ -114,8 +156,8 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - resources-reserved: 1 - resources-total: 8 + vcpus-total: 8 + vcpus-allocated: 1 inputs: - timestamp: "2023-12-12T00:00:00.000Z" duration: 1 @@ -140,4 +182,4 @@ tree: cpu/utilization: 33 cloud/instance-type: A1 cloud/region: uk-west - requests: 180 + requests: 180 \ No newline at end of file diff --git a/manifests/examples/pipelines/pipeline-with-mocks.yml b/manifests/examples/pipelines/pipeline-with-mocks.yml index 008e319b1..168ebd7fe 100644 --- a/manifests/examples/pipelines/pipeline-with-mocks.yml +++ b/manifests/examples/pipelines/pipeline-with-mocks.yml @@ -25,20 +25,57 @@ initialize: cpu/utilization: min: 1 max: 99 - "teads-curve": - path: "@grnsft/if-unofficial-plugins" - method: TeadsCurve + "interpolate": + method: Interpolation + path: 'builtin' global-config: - interpolation: spline - "sci-e": - path: "@grnsft/if-plugins" - method: SciE + method: linear + x: [0, 10, 50, 100] + y: [0.12, 0.32, 0.75, 1.02] + input-parameter: 'cpu/utilization' + output-parameter: 'cpu-factor' + "cpu-factor-to-wattage": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-factor", "cpu/thermal-design-power"] + output-parameter: "cpu-wattage" + "wattage-times-duration": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-wattage", "duration"] + output-parameter: "cpu-wattage-times-duration" + "wattage-to-energy-kwh": + method: Divide + path: "builtin" + global-config: + numerator: cpu-wattage-times-duration + denominator: 3600000 + output: cpu-energy-raw + "calculate-vcpu-ratio": + method: Divide + path: "builtin" + global-config: + numerator: vcpus-total + denominator: vcpus-allocated + output: vcpu-ratio + "correct-cpu-energy-for-vcpu-ratio": + method: Divide + path: "builtin" + global-config: + numerator: cpu-energy-raw + denominator: vcpu-ratio + output: cpu-energy-kwh "sci-embodied": path: "builtin" method: SciEmbodied - "sci-o": - path: "@grnsft/if-plugins" - method: SciO + "operational-carbon": + method: Multiply + path: builtin + global-config: + input-parameters: ["cpu-energy-kwh", "grid/carbon-intensity"] + output-parameter: "carbon-operational" "sum-carbon": path: "builtin" method: Sum @@ -68,10 +105,14 @@ tree: children: child-1: pipeline: - - teads-curve - - sci-e + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio - sci-embodied - - sci-o + - operational-carbon - sum-carbon - time-sync - sci @@ -86,9 +127,8 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - resources-reserved: 1 - resources-total: 8 - functional-unit-time: "1 min" + vcpus-total: 8 + vcpus-allocated: 1 inputs: - timestamp: "2023-12-12T00:00:00.000Z" cloud/instance-type: A1 @@ -116,10 +156,14 @@ tree: requests: 50 child-2: pipeline: - - teads-curve - - sci-e + - interpolate + - cpu-factor-to-wattage + - wattage-times-duration + - wattage-to-energy-kwh + - calculate-vcpu-ratio + - correct-cpu-energy-for-vcpu-ratio - sci-embodied - - sci-o + - operational-carbon - sum-carbon - time-sync - sci @@ -134,9 +178,8 @@ tree: device/emissions-embodied: 1533.120 # gCO2eq time-reserved: 3600 # 1hr in seconds device/expected-lifespan: 94608000 # 3 years in seconds - resources-reserved: 1 - resources-total: 8 - functional-unit-time: "1 min" + vcpus-total: 8 + vcpus-allocated: 1 inputs: - timestamp: "2023-12-12T00:00:00.000Z" duration: 1 diff --git a/manifests/examples/pipelines/zeros.yml b/manifests/examples/pipelines/zeros.yml new file mode 100644 index 000000000..da5541789 --- /dev/null +++ b/manifests/examples/pipelines/zeros.yml @@ -0,0 +1,130 @@ +name: generics +description: a pipeline that does arbitrary calculations using our generic arithmetic builtins +tags: +initialize: + plugins: + "sum-zero-and-one": + path: "builtin" + method: Sum + global-config: + input-parameters: + - some-value + - zero-value + output-parameter: one-plus-zero + "sum-zero-and-zero": + path: "builtin" + method: Sum + global-config: + input-parameters: + - zero-value + - zero-value + output-parameter: zero-plus-zero + "subtract-one-and-zero": + path: "builtin" + method: Subtract + global-config: + input-parameters: + - some-value + - zero-value + output-parameter: one-minus-zero + "subtract-zero-and-zero": + path: "builtin" + method: Sum + global-config: + input-parameters: + - zero-value + - zero-value + output-parameter: zero-minus-zero + "subtract-zero-and-one": + path: "builtin" + method: Subtract + global-config: + input-parameters: + - zero-value + - some-value + output-parameter: zero-minus-one + "coefficient-one-times-zero": + path: "builtin" + method: Coefficient + global-config: + input-parameter: zero-value + coefficient: 1 + output-parameter: zero-times-one-coefficient + "coefficient-zero-times-one": + path: "builtin" + method: Coefficient + global-config: + input-parameter: some-value + coefficient: 0 + output-parameter: one-times-zero-coefficient + "coefficient-zero-times-zero": + path: "builtin" + method: Coefficient + global-config: + input-parameter: zero-value + coefficient: 0 + output-parameter: zero-times-zero-coefficient + "multiply-one-times-zero": + path: "builtin" + method: Multiply + global-config: + input-parameters: ["some-value", "zero-value"] + output-parameter: "one-times-zero" + "multiply-zero-times-one": + path: "builtin" + method: Multiply + global-config: + input-parameters: ["zero-value", "zero-value"] + output-parameter: "zero-times-one" + exponent-one-to-zero: + method: Exponent + path: 'builtin' + global-config: + input-parameter: 'some-value' + exponent: 0 + output-parameter: 'one-raised-to-zero-power' + exponent-zero-to-zero: + method: Exponent + path: 'builtin' + global-config: + input-parameter: 'zero-value' + exponent: 0 + output-parameter: 'zero-raised-to-zero-power' + exponent-zero-to-one: + method: Exponent + path: 'builtin' + global-config: + input-parameter: 'zero-value' + exponent: 1 + output-parameter: 'zero-raised-to-first-power' + "sci": + path: "builtin" + method: Sci + global-config: + functional-unit: "zero-value" +tree: + children: + child-1: + pipeline: + - sum-zero-and-one + - sum-zero-and-zero + - subtract-one-and-zero + - subtract-zero-and-zero + - subtract-zero-and-one + - coefficient-one-times-zero + - coefficient-zero-times-one + - coefficient-zero-times-zero + - multiply-one-times-zero + - multiply-zero-times-one + - exponent-one-to-zero + - exponent-zero-to-one + - exponent-zero-to-zero + - sci + config: + defaults: + inputs: + - timestamp: "2023-12-12T00:00:00.000Z" + duration: 1 + some-value: 1 + zero-value: 0 + carbon: 10 From 9f9098dd1c7ba6eb917f65a35c1206f6a8f565a1 Mon Sep 17 00:00:00 2001 From: MariamKhalatova Date: Wed, 3 Jul 2024 20:58:20 +0400 Subject: [PATCH 4/5] revert(manifests): drop basic yaml --- manifests/examples/pipelines/basic.yml | 27 -------------------------- 1 file changed, 27 deletions(-) delete mode 100644 manifests/examples/pipelines/basic.yml diff --git a/manifests/examples/pipelines/basic.yml b/manifests/examples/pipelines/basic.yml deleted file mode 100644 index 0f3dc7735..000000000 --- a/manifests/examples/pipelines/basic.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: basic -description: a minimal manifest executing a single plugin on a single component for a single timestep -tags: -initialize: - plugins: - teads-curve: - path: '@grnsft/if-unofficial-plugins' - method: TeadsCurve - global-config: - interpolation: spline -tree: - children: - child-0: - defaults: - cpu/thermal-design-power: 100 - pipeline: - - teads-curve - inputs: - - timestamp: 2023-07-06T00:00 - duration: 1 - cpu/utilization: 20 - - timestamp: 2023-07-06T00:01 - duration: 1 - cpu/utilization: 80 - - timestamp: 2023-07-06T00:02 - duration: 1 - cpu/utilization: 20 From 661112ef42c48d7bf862873ad6ca3258fa282056 Mon Sep 17 00:00:00 2001 From: jmc <33655003+jmcook1186@users.noreply.github.com> Date: Thu, 4 Jul 2024 09:07:10 +0100 Subject: [PATCH 5/5] fix(package): rm if-plugins dependencies --- .../bugs/initialize-error-no-config.yaml | 5 +- .../bugs/initialize-error-no-path.yaml | 5 +- .../bugs/initialize-error-no-plugins.yaml | 5 +- .../bugs/input-error-missing-duration.yaml | 5 +- ...observations-failure-duration-is-zero.yaml | 5 +- .../bugs/pipeline-error-naming-mismatch.yaml | 5 +- .../pipeline-error-uninitialized-plugin.yaml | 5 +- .../outputs/bugs/pipeline-ordering-error.yaml | 5 +- .../sci-embodied-missing-resources-total.yaml | 5 +- manifests/outputs/divide.yaml | 93 +++++++++++++++++++ .../aggregate-failure-invalid-metrics.yaml | 5 +- ...gate-failure-missing-metric-in-inputs.yaml | 5 +- .../features/aggregate-horizontal.yaml | 5 +- .../outputs/features/aggregate-vertical.yaml | 5 +- manifests/outputs/features/aggregate.yaml | 5 +- .../pipelines/cloud-metadata-divide.yaml | 5 +- .../mock-obs-group-by-cloud-meta.yaml | 5 +- .../outputs/pipelines/mock-obs-groupby.yaml | 5 +- .../outputs/pipelines/mock-obs-time-sync.yaml | 5 +- .../failure-invalid-config-input-param.yaml | 5 +- .../failure-output-param-is-null.yaml | 5 +- .../outputs/plugins/coefficient/success.yaml | 5 +- .../failure-missing-cloud-vendor.yaml | 5 +- .../csv-lookup/cloud-metadata/success.yaml | 5 +- .../failure-missing-column.yaml | 5 +- .../failure-missing-output.yaml | 5 +- .../region-metadata/success-renaming.yaml | 5 +- .../csv-lookup/region-metadata/success.yaml | 5 +- .../failure-missing-input-param.yaml | 5 +- ...ailure-unsupported-physical-processor.yaml | 5 +- .../csv-lookup/tdp-finder/success.yaml | 5 +- .../failure-invalid-config-denominator.yaml | 5 +- .../divide/failure-missing-numerator.yaml | 5 +- .../success-denominator-equal-zero.yaml | 5 +- manifests/outputs/plugins/divide/success.yaml | 5 +- .../outputs/plugins/exponent/success.yaml | 5 +- .../groupby/failure-invalid-config-group.yaml | 5 +- .../failure-missing-cloud-instance-type.yaml | 5 +- .../outputs/plugins/groupby/success.yaml | 5 +- .../plugins/interpolation/interpolation.yaml | 5 +- .../plugins/interpolation/success.yaml | 5 +- .../failure-invalid-config-cpu-range.yaml | 5 +- ...lure-invalid-memory-utilization-range.yaml | 5 +- .../failure-missing-timestamp-from-param.yaml | 5 +- .../plugins/mock-observations/success.yaml | 5 +- .../failure-input-parameter-is-missing.yaml | 5 +- .../success-with-multiple-inputs.yaml | 5 +- .../outputs/plugins/multiply/success.yaml | 5 +- .../regex/failure-missing-input-param.yaml | 5 +- .../failure-not-matching-with-regex.yaml | 5 +- manifests/outputs/plugins/regex/success.yaml | 5 +- ...ailure-invalid-default-emission-value.yaml | 5 +- .../failure-missing-expected-lifespan.yaml | 5 +- .../outputs/plugins/sci-embodied/success.yaml | 5 +- .../sci/failure-invalid-config-value.yaml | 5 +- .../sci/failure-missing-input-param.yaml | 5 +- .../outputs/plugins/sci/success.yml.yaml | 5 +- .../shell/failure-invalid-command.yaml | 5 +- manifests/outputs/plugins/shell/success.yaml | 5 +- .../outputs/plugins/subtract/success.yaml | 5 +- .../sum/failure-missing-input-param.yaml | 5 +- .../sum/failure-missing-output-param.yaml | 5 +- manifests/outputs/plugins/sum/success.yaml | 5 +- .../failure-config-start-later-end.yaml | 5 +- .../failure-missing-global-config.yaml | 5 +- .../outputs/plugins/time-sync/success.yaml | 5 +- 66 files changed, 158 insertions(+), 260 deletions(-) create mode 100644 manifests/outputs/divide.yaml diff --git a/manifests/outputs/bugs/initialize-error-no-config.yaml b/manifests/outputs/bugs/initialize-error-no-config.yaml index 9d3c21a68..56be9add7 100644 --- a/manifests/outputs/bugs/initialize-error-no-config.yaml +++ b/manifests/outputs/bugs/initialize-error-no-config.yaml @@ -30,10 +30,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/bugs/initialize-error-no-path.yaml b/manifests/outputs/bugs/initialize-error-no-path.yaml index 77483ac27..e2ee4d616 100644 --- a/manifests/outputs/bugs/initialize-error-no-path.yaml +++ b/manifests/outputs/bugs/initialize-error-no-path.yaml @@ -43,10 +43,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/bugs/initialize-error-no-plugins.yaml b/manifests/outputs/bugs/initialize-error-no-plugins.yaml index 0324550ee..208010e00 100644 --- a/manifests/outputs/bugs/initialize-error-no-plugins.yaml +++ b/manifests/outputs/bugs/initialize-error-no-plugins.yaml @@ -26,10 +26,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/bugs/input-error-missing-duration.yaml b/manifests/outputs/bugs/input-error-missing-duration.yaml index 7a9a53b8e..dd339eb4f 100644 --- a/manifests/outputs/bugs/input-error-missing-duration.yaml +++ b/manifests/outputs/bugs/input-error-missing-duration.yaml @@ -43,10 +43,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml b/manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml index 6af109ec0..fedf856fb 100644 --- a/manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml +++ b/manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml @@ -46,10 +46,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/bugs/pipeline-error-naming-mismatch.yaml b/manifests/outputs/bugs/pipeline-error-naming-mismatch.yaml index b7885a361..21fc5e668 100644 --- a/manifests/outputs/bugs/pipeline-error-naming-mismatch.yaml +++ b/manifests/outputs/bugs/pipeline-error-naming-mismatch.yaml @@ -43,10 +43,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/bugs/pipeline-error-uninitialized-plugin.yaml b/manifests/outputs/bugs/pipeline-error-uninitialized-plugin.yaml index 75d87e3be..a37517432 100644 --- a/manifests/outputs/bugs/pipeline-error-uninitialized-plugin.yaml +++ b/manifests/outputs/bugs/pipeline-error-uninitialized-plugin.yaml @@ -43,10 +43,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/bugs/pipeline-ordering-error.yaml b/manifests/outputs/bugs/pipeline-ordering-error.yaml index c167f5e39..fe59b03d8 100644 --- a/manifests/outputs/bugs/pipeline-ordering-error.yaml +++ b/manifests/outputs/bugs/pipeline-ordering-error.yaml @@ -80,10 +80,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/bugs/sci-embodied-missing-resources-total.yaml b/manifests/outputs/bugs/sci-embodied-missing-resources-total.yaml index add3499be..e0a50cd90 100644 --- a/manifests/outputs/bugs/sci-embodied-missing-resources-total.yaml +++ b/manifests/outputs/bugs/sci-embodied-missing-resources-total.yaml @@ -29,10 +29,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/divide.yaml b/manifests/outputs/divide.yaml new file mode 100644 index 000000000..e0875c420 --- /dev/null +++ b/manifests/outputs/divide.yaml @@ -0,0 +1,93 @@ +name: divide +description: success path +tags: null +initialize: + plugins: + cloud-metadata: + path: builtin + method: CSVLookup + global-config: + filepath: >- + https://raw.githubusercontent.com/Green-Software-Foundation/if-data/main/cloud-metdata-aws-instances.csv + query: + instance-class: cloud/instance-type + output: + - cpu-cores-utilized + - vcpus-allocated + divide: + path: builtin + method: Divide + global-config: + numerator: vcpus-allocated + denominator: 2 + output: cpu/number-cores + outputs: + - yaml +execution: + command: >- + /home/joe/.npm/_npx/1bf7c3c15bf47d04/node_modules/.bin/ts-node + /home/joe/Code/if/src/index.ts -m ./manifests/plugins/divide/success.yml -o + ./manifests/outputs/divide + environment: + if-version: 0.4.0 + os: linux + os-version: 5.15.0-113-generic + node-version: 21.4.0 + date-time: 2024-07-03T14:02:26.789Z (UTC) + dependencies: + - '@babel/core@7.22.10' + - '@babel/preset-typescript@7.23.3' + - '@commitlint/cli@18.6.0' + - '@commitlint/config-conventional@18.6.0' + - '@grnsft/if-core@0.0.10' + - '@jest/globals@29.7.0' + - '@types/jest@29.5.8' + - '@types/js-yaml@4.0.9' + - '@types/luxon@3.4.2' + - '@types/node@20.9.0' + - axios-mock-adapter@1.22.0 + - axios@1.7.2 + - cross-env@7.0.3 + - csv-parse@5.5.6 + - csv-stringify@6.4.6 + - fixpack@4.0.0 + - gts@5.2.0 + - husky@8.0.3 + - jest@29.7.0 + - js-yaml@4.1.0 + - lint-staged@15.2.2 + - luxon@3.4.4 + - release-it@16.3.0 + - rimraf@5.0.5 + - ts-command-line-args@2.5.1 + - ts-jest@29.1.1 + - typescript-cubic-spline@1.0.1 + - typescript@5.2.2 + - winston@3.11.0 + - zod@3.22.4 + status: success +tree: + children: + child: + pipeline: + - cloud-metadata + - divide + config: + divide: null + defaults: + cloud/vendor: aws + cloud/instance-type: m5n.large + cpu/name: Intel® Core™ i7-1185G7 + inputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/utilization: 80 + outputs: + - timestamp: 2023-08-06T00:00 + duration: 3600 + cpu/utilization: 80 + cloud/vendor: aws + cloud/instance-type: m5n.large + cpu/name: Intel® Core™ i7-1185G7 + vcpus-allocated: 2 + cpu/number-cores: 1 diff --git a/manifests/outputs/features/aggregate-failure-invalid-metrics.yaml b/manifests/outputs/features/aggregate-failure-invalid-metrics.yaml index a332f8476..1a737e742 100644 --- a/manifests/outputs/features/aggregate-failure-invalid-metrics.yaml +++ b/manifests/outputs/features/aggregate-failure-invalid-metrics.yaml @@ -38,10 +38,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/features/aggregate-failure-missing-metric-in-inputs.yaml b/manifests/outputs/features/aggregate-failure-missing-metric-in-inputs.yaml index 2aeb03fab..82d6759bc 100644 --- a/manifests/outputs/features/aggregate-failure-missing-metric-in-inputs.yaml +++ b/manifests/outputs/features/aggregate-failure-missing-metric-in-inputs.yaml @@ -38,10 +38,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/features/aggregate-horizontal.yaml b/manifests/outputs/features/aggregate-horizontal.yaml index b0ee17210..3110af664 100644 --- a/manifests/outputs/features/aggregate-horizontal.yaml +++ b/manifests/outputs/features/aggregate-horizontal.yaml @@ -37,10 +37,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/features/aggregate-vertical.yaml b/manifests/outputs/features/aggregate-vertical.yaml index 5a7695520..1527a9280 100644 --- a/manifests/outputs/features/aggregate-vertical.yaml +++ b/manifests/outputs/features/aggregate-vertical.yaml @@ -37,10 +37,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/features/aggregate.yaml b/manifests/outputs/features/aggregate.yaml index 91ef6a671..062cd9932 100644 --- a/manifests/outputs/features/aggregate.yaml +++ b/manifests/outputs/features/aggregate.yaml @@ -37,10 +37,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/pipelines/cloud-metadata-divide.yaml b/manifests/outputs/pipelines/cloud-metadata-divide.yaml index 4b1f0ebba..130c4361e 100644 --- a/manifests/outputs/pipelines/cloud-metadata-divide.yaml +++ b/manifests/outputs/pipelines/cloud-metadata-divide.yaml @@ -41,10 +41,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/pipelines/mock-obs-group-by-cloud-meta.yaml b/manifests/outputs/pipelines/mock-obs-group-by-cloud-meta.yaml index 81f4ee71b..5585d4c42 100644 --- a/manifests/outputs/pipelines/mock-obs-group-by-cloud-meta.yaml +++ b/manifests/outputs/pipelines/mock-obs-group-by-cloud-meta.yaml @@ -66,10 +66,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/pipelines/mock-obs-groupby.yaml b/manifests/outputs/pipelines/mock-obs-groupby.yaml index 29b5aff0a..4783dffde 100644 --- a/manifests/outputs/pipelines/mock-obs-groupby.yaml +++ b/manifests/outputs/pipelines/mock-obs-groupby.yaml @@ -46,10 +46,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/pipelines/mock-obs-time-sync.yaml b/manifests/outputs/pipelines/mock-obs-time-sync.yaml index 54c411b96..271340c2b 100644 --- a/manifests/outputs/pipelines/mock-obs-time-sync.yaml +++ b/manifests/outputs/pipelines/mock-obs-time-sync.yaml @@ -102,10 +102,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/coefficient/failure-invalid-config-input-param.yaml b/manifests/outputs/plugins/coefficient/failure-invalid-config-input-param.yaml index 6f3e5cb23..ba10eaee3 100644 --- a/manifests/outputs/plugins/coefficient/failure-invalid-config-input-param.yaml +++ b/manifests/outputs/plugins/coefficient/failure-invalid-config-input-param.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/coefficient/failure-output-param-is-null.yaml b/manifests/outputs/plugins/coefficient/failure-output-param-is-null.yaml index 67ac62cff..dd2f6c952 100644 --- a/manifests/outputs/plugins/coefficient/failure-output-param-is-null.yaml +++ b/manifests/outputs/plugins/coefficient/failure-output-param-is-null.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/coefficient/success.yaml b/manifests/outputs/plugins/coefficient/success.yaml index edf264092..86300012c 100644 --- a/manifests/outputs/plugins/coefficient/success.yaml +++ b/manifests/outputs/plugins/coefficient/success.yaml @@ -30,10 +30,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yaml b/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yaml index 5cbc23dec..943416663 100644 --- a/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yaml +++ b/manifests/outputs/plugins/csv-lookup/cloud-metadata/failure-missing-cloud-vendor.yaml @@ -36,10 +36,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/csv-lookup/cloud-metadata/success.yaml b/manifests/outputs/plugins/csv-lookup/cloud-metadata/success.yaml index 4b02a939b..25c8db6e3 100644 --- a/manifests/outputs/plugins/csv-lookup/cloud-metadata/success.yaml +++ b/manifests/outputs/plugins/csv-lookup/cloud-metadata/success.yaml @@ -34,10 +34,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-column.yaml b/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-column.yaml index 0826f4fa2..cad931fd1 100644 --- a/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-column.yaml +++ b/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-column.yaml @@ -35,10 +35,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-output.yaml b/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-output.yaml index 57cfb9358..ad5ab9ec8 100644 --- a/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-output.yaml +++ b/manifests/outputs/plugins/csv-lookup/region-metadata/failure-missing-output.yaml @@ -34,10 +34,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/csv-lookup/region-metadata/success-renaming.yaml b/manifests/outputs/plugins/csv-lookup/region-metadata/success-renaming.yaml index 408a9d3dc..77aeecd66 100644 --- a/manifests/outputs/plugins/csv-lookup/region-metadata/success-renaming.yaml +++ b/manifests/outputs/plugins/csv-lookup/region-metadata/success-renaming.yaml @@ -35,10 +35,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/csv-lookup/region-metadata/success.yaml b/manifests/outputs/plugins/csv-lookup/region-metadata/success.yaml index aa1f3de32..10bb9a637 100644 --- a/manifests/outputs/plugins/csv-lookup/region-metadata/success.yaml +++ b/manifests/outputs/plugins/csv-lookup/region-metadata/success.yaml @@ -33,10 +33,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yaml b/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yaml index 7406ac879..56b6c2630 100644 --- a/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yaml +++ b/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yaml @@ -34,10 +34,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yaml b/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yaml index 0d4bff834..888df1ce7 100644 --- a/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yaml +++ b/manifests/outputs/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yaml @@ -34,10 +34,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/csv-lookup/tdp-finder/success.yaml b/manifests/outputs/plugins/csv-lookup/tdp-finder/success.yaml index e3dd6e9eb..bf12d4892 100644 --- a/manifests/outputs/plugins/csv-lookup/tdp-finder/success.yaml +++ b/manifests/outputs/plugins/csv-lookup/tdp-finder/success.yaml @@ -32,10 +32,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/divide/failure-invalid-config-denominator.yaml b/manifests/outputs/plugins/divide/failure-invalid-config-denominator.yaml index 1f70d83c8..299cc1ade 100644 --- a/manifests/outputs/plugins/divide/failure-invalid-config-denominator.yaml +++ b/manifests/outputs/plugins/divide/failure-invalid-config-denominator.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/divide/failure-missing-numerator.yaml b/manifests/outputs/plugins/divide/failure-missing-numerator.yaml index 065bc9a55..6aa908327 100644 --- a/manifests/outputs/plugins/divide/failure-missing-numerator.yaml +++ b/manifests/outputs/plugins/divide/failure-missing-numerator.yaml @@ -30,10 +30,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/divide/success-denominator-equal-zero.yaml b/manifests/outputs/plugins/divide/success-denominator-equal-zero.yaml index 9c333a41e..5617fdbf9 100644 --- a/manifests/outputs/plugins/divide/success-denominator-equal-zero.yaml +++ b/manifests/outputs/plugins/divide/success-denominator-equal-zero.yaml @@ -41,10 +41,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/divide/success.yaml b/manifests/outputs/plugins/divide/success.yaml index 42e60482c..3c741121f 100644 --- a/manifests/outputs/plugins/divide/success.yaml +++ b/manifests/outputs/plugins/divide/success.yaml @@ -41,10 +41,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/exponent/success.yaml b/manifests/outputs/plugins/exponent/success.yaml index 1afa27f5a..1a8588693 100644 --- a/manifests/outputs/plugins/exponent/success.yaml +++ b/manifests/outputs/plugins/exponent/success.yaml @@ -30,10 +30,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/groupby/failure-invalid-config-group.yaml b/manifests/outputs/plugins/groupby/failure-invalid-config-group.yaml index e211b0d51..3b188a07d 100644 --- a/manifests/outputs/plugins/groupby/failure-invalid-config-group.yaml +++ b/manifests/outputs/plugins/groupby/failure-invalid-config-group.yaml @@ -26,10 +26,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/groupby/failure-missing-cloud-instance-type.yaml b/manifests/outputs/plugins/groupby/failure-missing-cloud-instance-type.yaml index 38cebb9bb..ae91af1e1 100644 --- a/manifests/outputs/plugins/groupby/failure-missing-cloud-instance-type.yaml +++ b/manifests/outputs/plugins/groupby/failure-missing-cloud-instance-type.yaml @@ -26,10 +26,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/groupby/success.yaml b/manifests/outputs/plugins/groupby/success.yaml index cf1c7f734..04d54837b 100644 --- a/manifests/outputs/plugins/groupby/success.yaml +++ b/manifests/outputs/plugins/groupby/success.yaml @@ -25,10 +25,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/interpolation/interpolation.yaml b/manifests/outputs/plugins/interpolation/interpolation.yaml index 08036cf0b..9e3c45e4d 100644 --- a/manifests/outputs/plugins/interpolation/interpolation.yaml +++ b/manifests/outputs/plugins/interpolation/interpolation.yaml @@ -40,10 +40,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/interpolation/success.yaml b/manifests/outputs/plugins/interpolation/success.yaml index 5c81f15fa..bad3425f9 100644 --- a/manifests/outputs/plugins/interpolation/success.yaml +++ b/manifests/outputs/plugins/interpolation/success.yaml @@ -40,10 +40,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/mock-observations/failure-invalid-config-cpu-range.yaml b/manifests/outputs/plugins/mock-observations/failure-invalid-config-cpu-range.yaml index ebf62b776..d79f394f5 100644 --- a/manifests/outputs/plugins/mock-observations/failure-invalid-config-cpu-range.yaml +++ b/manifests/outputs/plugins/mock-observations/failure-invalid-config-cpu-range.yaml @@ -49,10 +49,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/mock-observations/failure-invalid-memory-utilization-range.yaml b/manifests/outputs/plugins/mock-observations/failure-invalid-memory-utilization-range.yaml index 72d1cf9d0..3667dff6c 100644 --- a/manifests/outputs/plugins/mock-observations/failure-invalid-memory-utilization-range.yaml +++ b/manifests/outputs/plugins/mock-observations/failure-invalid-memory-utilization-range.yaml @@ -47,10 +47,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/mock-observations/failure-missing-timestamp-from-param.yaml b/manifests/outputs/plugins/mock-observations/failure-missing-timestamp-from-param.yaml index ab340d36c..b8599cb08 100644 --- a/manifests/outputs/plugins/mock-observations/failure-missing-timestamp-from-param.yaml +++ b/manifests/outputs/plugins/mock-observations/failure-missing-timestamp-from-param.yaml @@ -46,10 +46,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/mock-observations/success.yaml b/manifests/outputs/plugins/mock-observations/success.yaml index 1a89eea75..cacd16cad 100644 --- a/manifests/outputs/plugins/mock-observations/success.yaml +++ b/manifests/outputs/plugins/mock-observations/success.yaml @@ -44,10 +44,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/multiply/failure-input-parameter-is-missing.yaml b/manifests/outputs/plugins/multiply/failure-input-parameter-is-missing.yaml index 23594fbf9..1ef59959d 100644 --- a/manifests/outputs/plugins/multiply/failure-input-parameter-is-missing.yaml +++ b/manifests/outputs/plugins/multiply/failure-input-parameter-is-missing.yaml @@ -32,10 +32,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/multiply/success-with-multiple-inputs.yaml b/manifests/outputs/plugins/multiply/success-with-multiple-inputs.yaml index 22d23b8ed..76c3d93d3 100644 --- a/manifests/outputs/plugins/multiply/success-with-multiple-inputs.yaml +++ b/manifests/outputs/plugins/multiply/success-with-multiple-inputs.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/multiply/success.yaml b/manifests/outputs/plugins/multiply/success.yaml index 19183c43c..60546f50e 100644 --- a/manifests/outputs/plugins/multiply/success.yaml +++ b/manifests/outputs/plugins/multiply/success.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/regex/failure-missing-input-param.yaml b/manifests/outputs/plugins/regex/failure-missing-input-param.yaml index 8ffe1bd24..8399ac20e 100644 --- a/manifests/outputs/plugins/regex/failure-missing-input-param.yaml +++ b/manifests/outputs/plugins/regex/failure-missing-input-param.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/regex/failure-not-matching-with-regex.yaml b/manifests/outputs/plugins/regex/failure-not-matching-with-regex.yaml index da1e88503..4b1ae47d6 100644 --- a/manifests/outputs/plugins/regex/failure-not-matching-with-regex.yaml +++ b/manifests/outputs/plugins/regex/failure-not-matching-with-regex.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/regex/success.yaml b/manifests/outputs/plugins/regex/success.yaml index e63d81e75..763cd4093 100644 --- a/manifests/outputs/plugins/regex/success.yaml +++ b/manifests/outputs/plugins/regex/success.yaml @@ -30,10 +30,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/sci-embodied/failure-invalid-default-emission-value.yaml b/manifests/outputs/plugins/sci-embodied/failure-invalid-default-emission-value.yaml index 12978e16e..a3df4f806 100644 --- a/manifests/outputs/plugins/sci-embodied/failure-invalid-default-emission-value.yaml +++ b/manifests/outputs/plugins/sci-embodied/failure-invalid-default-emission-value.yaml @@ -30,10 +30,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/sci-embodied/failure-missing-expected-lifespan.yaml b/manifests/outputs/plugins/sci-embodied/failure-missing-expected-lifespan.yaml index 4288c8a7a..073b2cb45 100644 --- a/manifests/outputs/plugins/sci-embodied/failure-missing-expected-lifespan.yaml +++ b/manifests/outputs/plugins/sci-embodied/failure-missing-expected-lifespan.yaml @@ -27,10 +27,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/sci-embodied/success.yaml b/manifests/outputs/plugins/sci-embodied/success.yaml index 1a8099221..5f74a121e 100644 --- a/manifests/outputs/plugins/sci-embodied/success.yaml +++ b/manifests/outputs/plugins/sci-embodied/success.yaml @@ -26,10 +26,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/sci/failure-invalid-config-value.yaml b/manifests/outputs/plugins/sci/failure-invalid-config-value.yaml index babc11c32..61c424e91 100644 --- a/manifests/outputs/plugins/sci/failure-invalid-config-value.yaml +++ b/manifests/outputs/plugins/sci/failure-invalid-config-value.yaml @@ -28,10 +28,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/sci/failure-missing-input-param.yaml b/manifests/outputs/plugins/sci/failure-missing-input-param.yaml index 5ce6ba144..656f21c1d 100644 --- a/manifests/outputs/plugins/sci/failure-missing-input-param.yaml +++ b/manifests/outputs/plugins/sci/failure-missing-input-param.yaml @@ -30,10 +30,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/sci/success.yml.yaml b/manifests/outputs/plugins/sci/success.yml.yaml index c9fc1e7f8..bd7b81f0c 100644 --- a/manifests/outputs/plugins/sci/success.yml.yaml +++ b/manifests/outputs/plugins/sci/success.yml.yaml @@ -28,10 +28,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/shell/failure-invalid-command.yaml b/manifests/outputs/plugins/shell/failure-invalid-command.yaml index 308dd47ea..f9ec8894b 100644 --- a/manifests/outputs/plugins/shell/failure-invalid-command.yaml +++ b/manifests/outputs/plugins/shell/failure-invalid-command.yaml @@ -29,10 +29,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/shell/success.yaml b/manifests/outputs/plugins/shell/success.yaml index 573ee41ee..3a8825817 100644 --- a/manifests/outputs/plugins/shell/success.yaml +++ b/manifests/outputs/plugins/shell/success.yaml @@ -28,10 +28,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/subtract/success.yaml b/manifests/outputs/plugins/subtract/success.yaml index feff487d4..5d028f63f 100644 --- a/manifests/outputs/plugins/subtract/success.yaml +++ b/manifests/outputs/plugins/subtract/success.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/sum/failure-missing-input-param.yaml b/manifests/outputs/plugins/sum/failure-missing-input-param.yaml index c9f1171d7..ce59a1f4e 100644 --- a/manifests/outputs/plugins/sum/failure-missing-input-param.yaml +++ b/manifests/outputs/plugins/sum/failure-missing-input-param.yaml @@ -32,10 +32,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/sum/failure-missing-output-param.yaml b/manifests/outputs/plugins/sum/failure-missing-output-param.yaml index e38b08539..548a8b14e 100644 --- a/manifests/outputs/plugins/sum/failure-missing-output-param.yaml +++ b/manifests/outputs/plugins/sum/failure-missing-output-param.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/sum/success.yaml b/manifests/outputs/plugins/sum/success.yaml index 9b201185e..1d9b47a3f 100644 --- a/manifests/outputs/plugins/sum/success.yaml +++ b/manifests/outputs/plugins/sum/success.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/time-sync/failure-config-start-later-end.yaml b/manifests/outputs/plugins/time-sync/failure-config-start-later-end.yaml index 001223fc5..e0957366a 100644 --- a/manifests/outputs/plugins/time-sync/failure-config-start-later-end.yaml +++ b/manifests/outputs/plugins/time-sync/failure-config-start-later-end.yaml @@ -34,10 +34,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/time-sync/failure-missing-global-config.yaml b/manifests/outputs/plugins/time-sync/failure-missing-global-config.yaml index 98fec7aea..79f3bb69e 100644 --- a/manifests/outputs/plugins/time-sync/failure-missing-global-config.yaml +++ b/manifests/outputs/plugins/time-sync/failure-missing-global-config.yaml @@ -28,10 +28,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9' diff --git a/manifests/outputs/plugins/time-sync/success.yaml b/manifests/outputs/plugins/time-sync/success.yaml index 01c5b695b..1f0a7f07e 100644 --- a/manifests/outputs/plugins/time-sync/success.yaml +++ b/manifests/outputs/plugins/time-sync/success.yaml @@ -31,10 +31,7 @@ execution: - '@commitlint/cli@18.6.0' - '@commitlint/config-conventional@18.6.0' - '@grnsft/if-core@0.0.10' - - '@grnsft/if-plugins@v0.3.2 extraneous -> file:../../../../if-models' - - >- - @grnsft/if-unofficial-plugins@v0.3.1 extraneous -> - file:../../../../if-unofficial-models + - '@jest/globals@29.7.0' - '@types/jest@29.5.8' - '@types/js-yaml@4.0.9'