Skip to content

[CI] publish master helm-chart - #80

Draft
cheina97 wants to merge 29 commits into
masterfrom
frc/masterchart
Draft

[CI] publish master helm-chart#80
cheina97 wants to merge 29 commits into
masterfrom
frc/masterchart

Conversation

@cheina97

@cheina97 cheina97 commented Aug 12, 2026

Copy link
Copy Markdown
Member

ci: publish Helm charts for every master commit without GitHub Releases

What

Updates the release job in .github/workflows/integration.yml so that the Helm chart is published for every push to master, in addition to the existing v* tag releases. Master builds do not create a GitHub Release or git tag.

Why

Today, testing upstream changes rebased onto the fork requires cutting a tag or a release. This makes it possible to install a chart built from the latest master commit directly from the Helm repository, simply by referencing its SemVer prerelease version.

How

  • The workflow trigger remains branches: [master].
  • The release job runs on refs/heads/master in addition to refs/tags/v*.
  • Chart versions are computed dynamically:
    • Tags: v0.x.x (unchanged).
    • Master: 0.0.0-master.<short-sha>.
  • Master charts are packaged and pushed directly to the gh-pages branch into a charts/ directory, and index.yaml is regenerated with helm repo index ... --merge.
  • For master builds, .Values.tag is set to the commit SHA so the chart pulls images from the -ci suffixed repositories (us-docker.pkg.dev/castai-hub/library/liqo/<component>-ci:<sha>).
  • The GitHub token is provided to git via the credential cache helper rather than embedding it in the remote URL.
  • The GitHub Pages chart URL is computed from GITHUB_REPOSITORY instead of being hardcoded to castai/liqo.
  • Tag releases keep using ncipollo/release-action + cr index as before.
  • Tag-only steps (cr download, liqoctl artifact download, GitHub Releases, cr index) are skipped on master pushes.
  • A final Chart release info step prints the chart version, ref, commit, and install commands to the job summary.

Versioning example

# index.yaml
entries:
  liqo:
    - version: 0.10.0
      urls:
        - https://github.com/castai/liqo/releases/download/v0.10.0/liqo-0.10.0.tgz
    - version: 0.0.0-master.abc123d
      urls:
        - https://castai.github.io/liqo/charts/liqo-0.0.0-master.abc123d.tgz

Usage

# Install the latest stable release (default)
helm install omni-agent castai-liqo/liqo

# Install a specific master commit chart
helm install omni-agent castai-liqo/liqo --version 0.0.0-master.abc123d

# List all versions including master charts
helm search repo castai-liqo/liqo --versions --devel

Verification

  • Validated workflow YAML with python3 -c 'import yaml; yaml.safe_load(...)'.
  • Ran actionlint; only pre-existing info-level SC2086 warnings in the configure job remain.
  • Actual chart publishing can only be verified by pushing to master or tagging.

Image tags for master charts

The master chart version is 0.0.0-master.<short-sha>, but the images referenced by the chart use the full commit SHA as the tag and the -ci repository suffix. For example:

us-docker.pkg.dev/castai-hub/library/liqo/liqo-controller-manager-ci:abc123def456...

This matches what the build-standard and build-go jobs push for non-tag commits.

mjudeikis and others added 28 commits August 12, 2026 13:33
This patch makes provisioning of VPC on all edges optional and based on
the the omni.cast.ai/provision-on-all-edge-nodes annotation
this patch fixes an issue with the virtual kubelet: when it starts the
node is created only with unknown conditions.
This is because the input from the RemoteNode and ForeignCluster
are applied only after the node is created, during the reconcile. This
patch introduces an hydrate function, which populate the node before its
creation.
Introduce VK reflection of the following resources:

- ResourceSlice
- DeviceClass
- ResourceClaim
@kimchi-review

kimchi-review Bot commented Aug 12, 2026

Copy link
Copy Markdown

Kimchi Code Review

Property Value
Commit aac90a9
Author @cheina97
Files changed 0
Review status Completed
Comments 4 (1 critical, 1 info, 2 warning)
Duration 122s

Summary

📊 Review Score: 68/100 (overall code quality — 0 lowest, 100 highest)
⏱️ Estimated effort to review: 2/5 (1 = trivial, 5 = very complex)

🧪 Tests: no — No automated tests are included for GitHub Actions workflow changes; validation would require running the workflow on a fork or with act.

🔒 Security concerns found: The GITHUB_TOKEN is embedded directly in the git remote URL for pushing to gh-pages, which increases exposure risk if logs leak or git commands print the remote. The workflow also lacks handling for concurrent updates to gh-pages.

📝 Found 4 issue(s). See inline comments for details.

What to expect

Kimchi will analyze the changes in this pull request and post:

  • A summary of the overall changes
  • Inline comments on specific lines with findings categorized by issue type

The review typically completes within a few minutes. This comment will be updated once the review is ready.

Interact with Kimchi
  • @getkimchi review — re-trigger a full review on the latest commit
  • @getkimchi summary — regenerate the PR summary
  • @getkimchi ignore — skip this PR (no review will be posted)
  • Reply to any inline comment to ask follow-up questions or request clarification
Configuration

Reviews are configured by your organization admin.
Review instructions, excluded directories, and severity thresholds can be adjusted per repository in the Kimchi dashboard.


Powered by Kimchi — AI-powered code review by CAST AI

@github-actions github-actions Bot added the ci label Aug 12, 2026

@kimchi-review kimchi-review Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📊 Review Score: 62/100 (overall code quality — 0 lowest, 100 highest)
⏱️ Estimated effort to review: 3/5 (1 = trivial, 5 = very complex)

🧪 Tests: no — No tests were added or modified. This is a GitHub Actions workflow change, which typically relies on manual workflow validation rather than unit tests, but no workflow-level tests or validation scripts were introduced.

🔒 Security concerns found: The Publish chart to GitHub Pages step embeds ${{ secrets.GITHUB_TOKEN }} directly into a Git remote URL (https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/...). Although GitHub Actions masks secrets in logs, constructing URLs containing secrets can lead to exposure in error messages, process listings, or third-party tooling and is considered an unsafe secret-handling pattern. The actions/checkout step already disabled persist-credentials, which is good, but this step reintroduces credential persistence in URL form.

📝 Found 6 issue(s). See inline comments for details.

Comment thread .github/workflows/integration.yml
Comment thread .github/workflows/integration.yml
Comment thread .github/workflows/integration.yml Outdated
Comment thread .github/workflows/integration.yml
Comment thread .github/workflows/integration.yml
Comment thread .github/workflows/integration.yml
@cheina97 cheina97 changed the title [CI] publish branches helm-chart [CI] publish master helm-chart Aug 12, 2026
@cheina97
cheina97 force-pushed the frc/masterchart branch 3 times, most recently from 9732bc8 to 2627430 Compare August 12, 2026 16:33
@cheina97

Copy link
Copy Markdown
Member Author

@getkimchi review

@kimchi-review

kimchi-review Bot commented Aug 12, 2026

Copy link
Copy Markdown

🔄 Starting review on aac90a9
Triggered by @cheina97 via the command.

@kimchi-review kimchi-review Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📊 Review Score: 68/100 (overall code quality — 0 lowest, 100 highest)
⏱️ Estimated effort to review: 2/5 (1 = trivial, 5 = very complex)

🧪 Tests: no — No automated tests are included for GitHub Actions workflow changes; validation would require running the workflow on a fork or with act.

🔒 Security concerns found: The GITHUB_TOKEN is embedded directly in the git remote URL for pushing to gh-pages, which increases exposure risk if logs leak or git commands print the remote. The workflow also lacks handling for concurrent updates to gh-pages.

📝 Found 4 issue(s). See inline comments for details.

Comment thread .github/workflows/integration.yml
Comment thread .github/workflows/integration.yml
Comment thread .github/workflows/integration.yml
Comment thread .github/workflows/integration.yml
@fra98

fra98 commented Aug 20, 2026

Copy link
Copy Markdown
Member

Converting to draft as now we have this which does similar thing. Let's close this one eventually

@fra98
fra98 marked this pull request as draft August 20, 2026 14:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants