Repository navigation
Conversation
[core] library: export_notifications: adjust the post-processing status
…o-version-conflict fix: Resolve kaleido version conflict breaking image builds
[core] Finish updating the get_ci_metadata_dir function
[legacy] Remove the MatrixBenchmarking and Topsail artifacts
[core] notifications: send: update the CI base link
…forge-resolver gitops: add an Intlab Forge overlay
…forge-resolver rhaiis: add B200 cluster preset
…amd-vllm-image rhaiis: update default AMD vLLM image
…code (link generation)
[core] notifications: send: accept the foreign testing PR number
[core] ci_entrypoint: prepare_ci: skip the git banner in when foreign testing
…id the test to fail
[core] notifications: send: properly disable the github export to avoid the test to fail
…rst pipeline step
[core] ci_entrypoint: fournos: don't crash in the resolve step
…ign-repository-checkout [foreign-testing] Initialize foreign repository checkout
```
projects/caliper/engine/model.py:11
/home/kpouget/openshift/forge/projects/caliper/engine/
model.py:11: PytestCollectionWarning: cannot collect
test class 'TestBaseNode' because it has a __init__
constructor (from:
projects/guidellm/tests/test_dashboard.py)
@DataClass
projects/caliper/engine/model.py:11
/home/kpouget/openshift/forge/projects/caliper/engine/
model.py:11: PytestCollectionWarning: cannot collect
test class 'TestBaseNode' because it has a __init__
constructor (from:
projects/guidellm/tests/test_postprocess_parser.py)
@DataClass
-- Docs: https://docs.pytest.org/en/stable/how-to/captur
e-warnings.html
```
[projects] Rename s/TestBaseNode/BaseTestNode to mute pytest warning
Move all FORGE-specific bootstrap logic (FournosJob fetch, env export, PR checkout, kubeconfig setup, run_ci dispatch) from inline YAML bash into a single bin/fournos_entrypoint script. Both task-forge-step.yaml and resolve-job.yaml now simply invoke command: ["/opt/fournos/entrypoint"] — no engine-specific bash in YAML. The Containerfile installs yq and creates the /opt/fournos/entrypoint symlink pointing to bin/fournos_entrypoint, satisfying the Fournos execution-engine contract. This is the FORGE-side counterpart to the Fournos multi-engine decoupling work. Co-authored-by: Cursor <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Move all FORGE-specific bootstrap logic from inline YAML bash into a single
bin/fournos_entrypointscript, implementing the Fournos execution-engine entrypoint contract (/opt/fournos/entrypoint).This is the FORGE-side counterpart to the Fournos multi-engine decoupling work (ashtarkb/fournos#1).
Motivation
Previously, FORGE bootstrap bash (~170 lines total) was duplicated across three YAML files — two in the FORGE gitops repo and one in the Fournos repo. This coupling meant:
The new Fournos architecture defines a universal contract: every engine image provides
/opt/fournos/entrypoint. Both the resolve Job and Tekton Tasks just callcommand: ["/opt/fournos/entrypoint"]— no engine-specific bash in YAML.Changes
New:
bin/fournos_entrypointThe single source of truth for all FORGE bootstrap logic (~110 lines). Sequence:
FJOB_NAME,FOURNOS_WORKLOAD_NAMESPACE,FOURNOS_STEP)oc get fjob/...spec.env.*keys as environment variablesPULL_PULL_SHAorPULL_NUMBER)spec.executionEngine.forge.projectbin/run_ci "$FORGE_PROJECT" ci "$FOURNOS_STEP"Modified:
projects/core/image/Containerfileyq(used by the entrypoint to parse FournosJob YAML)/opt/fournos/entrypointsymlink →$APP_HOME/bin/fournos_entrypointModified:
fournos/gitops/base/workflows/task-forge-step.yamlscript:blockcommand: ["/opt/fournos/entrypoint"]andargs: []ARTIFACT_DIRenv var pointing to the Tekton workspace pathModified:
fournos/gitops/base/workflows/resolve-job.yamlargs:command: ["/opt/fournos/entrypoint"]andargs: []Before → After
task-forge-step.yamlcommand: ["/opt/fournos/entrypoint"]resolve-job.yamlcommand: ["/opt/fournos/entrypoint"]bin/fournos_entrypointContainerfile/opt/fournos/entrypointsymlinkNet effect: ~130 lines of duplicated inline bash replaced by 1 canonical script + 2 one-liner invocations.
Made with Cursor