Conversation
Sync Release with Main
Create `if-api` to run `if-run` as an API server. Signed-off-by: Mitsuru Kariya <mitsuru.kariya@nttdata.com>
1. remove duplicate outputs The following manifests were equivalent to each other, so the latter one is removed. - manifests/outputs/builtins/interpolation/success.yaml manifests/outputs/builtins/interpolation/interpolation.yaml - manifests/outputs/features/regroup/failure-invalid-regroup.yaml manifests/outputs/features/failure-invalid-regroup.yaml - manifests/outputs/features/regroup/failure-missing-cloud-instance-type.yaml manifests/outputs/features/failure-missing-cloud-instance-type.yaml 2. remove `kind` from `initialize.plugins.*` In the following manifests, there was an unnecessary property called `kind` under `initialize.plugins.*`, so the property is removed. - manifests/examples/builtins/mock-observations/failure-invalid-config-cpu-range.yml - manifests/examples/builtins/mock-observations/failure-invalid-memory-utilization-range.yml - manifests/examples/builtins/mock-observations/failure-missing-timestamp-from-param.yml - manifests/examples/builtins/mock-observations/success.yml - manifests/examples/builtins/sci/failure-invalid-config-value.yml - manifests/examples/builtins/sci/failure-missing-input-param.yml - manifests/examples/builtins/sci/success.yml - manifests/examples/pipelines/pipeline-with-mocks.yml - manifests/examples/pipelines/scenario-5.yml - manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml - manifests/outputs/builtins/mock-observations/failure-invalid-config-cpu-range.yaml - manifests/outputs/builtins/mock-observations/failure-invalid-memory-utilization-range.yaml - manifests/outputs/builtins/mock-observations/failure-missing-timestamp-from-param.yaml - manifests/outputs/builtins/sci/failure-invalid-config-value.yaml - manifests/outputs/builtins/sci/failure-missing-input-param.yaml 3. remove `output` from `initialize` In the following manifest, there was an unnecessary property called `output` under `initialize`, so the property is removed. - manifests/examples/builtins/time-sync/failure-missing-config.yml - manifests/examples/builtins/time-sync/success.yml - manifests/outputs/builtins/time-sync/failure-missing-config.yaml
feat(src): add if-api
fix(manifests): fix sample manifests
PR #1108 fixed the issue to prevent duplicate regrouping when the tree has already been regrouped. However, this fix caused only the first subtree to be executed when regrouping needed to be performed on multiple subtrees. Specifically, the execution results of the following manifests became different from before: - manifests/examples/pipelines/scenario-3.yml - manifests/examples/pipelines/pipeline-with-aggregate.yml This PR improves the method for checking if regrouping has been completed and fixes it to correctly detect when regrouping needs to be executed on multiple subtrees. Additionally, it also adds the output results for the above two manifests that were removed in PR #1037. Signed-off-by: Mitsuru Kariya <mitsuru.kariya@nttdata.com>
Although not directly related to this fix, the following sample output related to regroup were also removed in PR #1037, so add it. - manifests/outputs/features/regroup/success.yaml Signed-off-by: Mitsuru Kariya <mitsuru.kariya@nttdata.com>
fix(src): fix regroup
Restore the following files from past history where output files exist in `manifests/outputs` but corresponding input files don't exist in `manifests/examples`. (In parentheses are the commit hash where they were deleted and the filename at that time) - manifests/examples/bugs/aggregation-error-wrong-metric.yml (a5c9ad2 manifests/bugs/aggregation-error-wrong-metric.yml) - manifests/examples/bugs/input-error-missing-duration.yml (a5c9ad2 manifests/bugs/input-error-missing-duration.yml) - manifests/examples/bugs/mock-observations-failure-duration-is-zero.yml (a5c9ad2 manifests/bugs/mock-observations-failure-duration-is-zero.yml) - manifests/examples/bugs/pipeline-error-naming-mismatch.yml (a5c9ad2 manifests/bugs/pipeline-error-naming-mismatch.yml) - manifests/examples/bugs/pipeline-error-uninitialized-plugin.yml (a5c9ad2 manifests/bugs/pipeline-error-uninitialized-plugin.yml) - manifests/examples/bugs/pipeline-ordering-error.yml (a5c9ad2 manifests/bugs/pipeline-ordering-error.yml) - manifests/examples/features/aggregate-failure-invalid-metrics.yml (a5c9ad2 manifests/features/aggregate-failure-invalid-metrics.yml) - manifests/examples/features/aggregate-failure-missing-metric-in-inputs.yml (a5c9ad2 manifests/features/aggregate-failure-missing-metric-in-inputs.yml) - manifests/examples/features/aggregate-horizontal.yml (a5c9ad2 manifests/features/aggregate-horizontal.yml) - manifests/examples/features/aggregate-vertical.yml (a5c9ad2 manifests/features/aggregate-vertical.yml) - manifests/examples/features/aggregate.yml (a5c9ad2 manifests/features/aggregate.yml) - manifests/examples/pipelines/cloud-metadata-divide.yml (a5c9ad2 manifests/integrations/cloud-metadata-divide.yml) - manifests/examples/builtins/sci-embodied/failure-invalid-default-emission-value.yml (b2c4f22 manifests/examples/builtins/sci-embodied/failure-invalid-default-emission-value.yml) - manifests/examples/builtins/divide/success-denominator-equal-zero.yml (1f60948 manifests/examples/builtins/divide/failure-denominator-equal-zero.yml) Signed-off-by: Mitsuru Kariya <mitsuru.kariya@nttdata.com>
Create a `Dockerfile` to run `if-api` as a container. Signed-off-by: Mitsuru Kariya <mitsuru.kariya@nttdata.com>
feat(util): add Dockerfile
chore(manifests): restore sample manifests
Create a helm chart for deploying the container to Kubernetes. Signed-off-by: Mitsuru Kariya <mitsuru.kariya@nttdata.com>
Signed-off-by: Yasumasa Suenaga <yasuenag@gmail.com>
Signed-off-by: mouhamadalmounayar <muhammad.mnayar@gmail.com>
Signed-off-by: mouhamadalmounayar <muhammad.mnayar@gmail.com>
Signed-off-by: mouhamadalmounayar <muhammad.mnayar@gmail.com>
Signed-off-by: mouhamadalmounayar <muhammad.mnayar@gmail.com>
Add GHA workflow to publish Web API container image
feat(config): add helm-chart
Parameter metadata audit feature
Signed-off-by: Yasumasa Suenaga <yasuenag@gmail.com>
Add GHA workflow to publish Helm Chart
Signed-off-by: Arne Tarara <arne@datafuse.de>
Upgraded eco-ci to @v5
…triggers for manual execution
…lities-plus-release Fix vulnerabilities plus release
…elease-v1.1.0-beta.0
…0-beta.0 Release v1.1.0 beta.0
Enable release workflows
upgrade Node.js version to 20 in release workflows
| needs: [ final-check-before-release ] | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: Download source tree for the release | ||
| uses: actions/download-artifact@v4 | ||
| with: | ||
| name: src | ||
| path: ${{ github.workspace }} | ||
|
|
||
| - name: Publish to npm (pre-release) | ||
| if: env.IS_PRE_RELEASE == 'true' | ||
| run: npm publish --tag beta | ||
| - name: Extract source tree | ||
| run: tar xfz src.tar.gz | ||
|
|
||
| - name: Initialize npm config | ||
| run: npm config set //registry.npmjs.org/:_authToken $NPM_TOKEN | ||
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | ||
| NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | ||
|
|
||
| - name: Publish to npm | ||
| if: env.IS_PRE_RELEASE == 'false' | ||
| run: npm publish | ||
| run: | | ||
| CMD="npm publish" | ||
| if [ "${{ needs.final-check-before-release.outputs.is-pre-release }}" == 'true' ]; then | ||
| CMD="$CMD --tag beta" | ||
| fi | ||
| $CMD | ||
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | ||
|
|
||
| release-container-image: |
Check warning
Code scanning / CodeQL
Workflow does not contain permissions Medium
Show autofix suggestion
Hide autofix suggestion
Copilot Autofix
AI 9 months ago
To fix the problem, we should add an explicit permissions block either at the workflow root (to apply to all jobs by default), or at the job level for each job that does not already set permissions. Since release-container-image already sets packages: write, the main jobs of concern are final-check-before-release and release-publish-npm.
The safest and most maintainable approach is to set a restrictive default (contents: read) at the workflow root. This way, all jobs get minimum permissions unless they need more and set their own permissions block (as release-container-image already does). This aligns with GitHub and CodeQL recommendations.
Implementation steps:
- Add the following at the top-level of the workflow (after the
name:field, before or afteron:):permissions: contents: read
- No additional imports or methods are needed.
| @@ -1,3 +1,5 @@ | ||
| permissions: | ||
| contents: read | ||
| name: Release publish NPM / container image | ||
| on: | ||
| push: |
|
Big thanks to team to release v1.1.0! I'm happy to see that. @jmcook1186 @narekhovhannisyan Could you kick https://github.com/Green-Software-Foundation/if/blob/main/.github/workflows/publish-helm-chart.yml to publish Helm chart? As I mentioned in #1154 , it should be kicked manually. |
Merge pull request #1163 from Green-Software-Foundation/release-v1.1.0
What's Changed
New Contributors
Full Changelog: v1.0.2...v1.1.0
What's Changed
New Contributors
Full Changelog: v1.0.2...v1.1.0