Skip to content

feat: add Helion setup script for modular installation#119

Draft
cmagina wants to merge 5 commits intoredhat-et:mainfrom
cmagina:pr-05-helion-setup-script
Draft

feat: add Helion setup script for modular installation#119
cmagina wants to merge 5 commits intoredhat-et:mainfrom
cmagina:pr-05-helion-setup-script

Conversation

@cmagina
Copy link
Copy Markdown
Collaborator

@cmagina cmagina commented Feb 7, 2026

Summary

This PR is part 5 of 11 in the rework modernization effort. It adds the Helion setup script as part of the modular framework installation architecture.

Changes:

  • ✅ Add scripts/setup_helion.sh for Helion installation and configuration

Features:

  • Downloads Helion source from GitHub when not mounted as a volume
  • Installs build dependencies for Helion compilation
  • Supports multiple installation modes via INSTALL_HELION environment variable:
    • source: Build from source (with auto-download if not mounted)
    • release, nightly: Install wheels from PyPI
    • skip: Skip Helion installation
  • Provides flexible configuration for different container setups

Why this change?

Helion is an important framework supported by this repository. This dedicated setup script:

Testing:

Dependencies:

Related PRs:

🤖 Generated with Claude Code

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 30, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 1496203a-fa81-4e64-b35e-eafb05261931

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@cmagina cmagina force-pushed the pr-05-helion-setup-script branch 3 times, most recently from b7adda5 to 15fd159 Compare March 31, 2026 00:09
@cmagina cmagina requested a review from hinriksnaer March 31, 2026 13:17
@cmagina cmagina force-pushed the pr-05-helion-setup-script branch 2 times, most recently from 3eb97ee to 3d64784 Compare April 2, 2026 17:21
Add scripts/setup_helion.sh to support Helion installation and
configuration within containers. This script:

- Downloads Helion source from GitHub when not mounted as a volume
- Installs build dependencies for Helion compilation
- Supports installing Helion wheels from PyPI (release, nightly)
- Provides flexible configuration via INSTALL_HELION environment variable

The script supports multiple installation modes:
- source: Build from source (with auto-download if not mounted)
- release/nightly: Install wheels from PyPI
- skip: Skip Helion installation

This is part of the modular script architecture introduced in PR redhat-et#115.

Signed-off-by: Craig Magina <cmagina@redhat.com>
@cmagina cmagina force-pushed the pr-05-helion-setup-script branch from 3d64784 to 1bcbbd4 Compare April 2, 2026 17:22

if [ -n "${PIP_HELION_INDEX_URL:-}" ]; then
echo "Using the specified index, $PIP_HELION_INDEX_URL"
PIP_INSTALL_ARGS+=("--index-url $PIP_HELION_INDEX_URL")
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

double space after --index-url

popd 1>/dev/null
fi
else
echo "Torch repo already present, not cloning ..."
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

NIT: should be "helion"

echo "Installing Helion dependencies ..."
pip_install numpy

devinstall_torch release
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

is this something we want to do unconditionally?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

That is a fair question, but if we don't then after running devinstall_helion release an attempt to run a helion program will fail with torch missing. Triton has a similar problem with torch not getting pulled in automatically when installing triton release.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

I think I have a solution, let me know what you think.

- scripts/entrypoint.sh
- scripts/devinstall_software.sh
- scripts/ldpretend.sh
- scripts/devinstall_helion.sh
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

shouldn't helion build after triton since it's a dependency?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

That is just a list of files to watch for changes to trigger a github workflow, i.e. build the image.

cmagina added 4 commits April 6, 2026 18:29
- Removed double space
- Corrected copy/paste error
- Fixed installing torch no matter what as a dep
- Re-ordered to after triton as triton is a dependency of helion

Signed-off-by: Craig Magina <cmagina@redhat.com>
Signed-off-by: Craig Magina <cmagina@redhat.com>
Signed-off-by: Craig Magina <cmagina@redhat.com>
Signed-off-by: Craig Magina <cmagina@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants