Automated Sync from main to stable - #14
Merged
Merged
Conversation
* test(tmachine): add K3s conformance scenario Signed-off-by: Simon Scatton <sscatton@nvidia.com> * refactor(tmachine): use Helm values file for K3s installer Signed-off-by: Simon Scatton <sscatton@nvidia.com> * ci(tmachine): run K3s conformance in integration jobs Signed-off-by: Simon Scatton <sscatton@nvidia.com> * ci(tmachine): verify installer scripts and document version baseline Signed-off-by: Simon Scatton <sscatton@nvidia.com> --------- Signed-off-by: Simon Scatton <sscatton@nvidia.com>
Store operation spans and request spans for supervisor-polled RPCs (GetSandboxConfig, ReportProviderReadiness) use DEBUG level, so the default INFO filter no longer exports them. The provider credential refresh worker opens its span only when a state has work. Refs NVIDIA#2698 Signed-off-by: Kris Hicks <khicks@nvidia.com>
Add odh-openshell-openclaw, an unsupported reference image that runs the OpenClaw agent harness in an OpenShell sandbox. It installs OpenClaw 2026.9.5 on ubi9/nodejs-24-minimal from the same npm lockfile as the AIPCC agentic OpenClaw image, built from a hermetic npm and rpm prefetch. The only RPM is crypto-policies-scripts, for DEFAULT:PQ. OpenClaw sits world-readable under /usr/local, which the default Landlock policy already covers, and the image runs as 1000:1000 with no ENTRYPOINT and no baked policy. The openclaw-start wrapper onboards OpenClaw on first run against an OpenAI-compatible endpoint from MODEL_BASE_URL, MODEL_ID and a provider-injected CUSTOM_API_KEY, then starts it. An example provider profile, a glibc ceiling lint, a smoke test and a README sit next to the prefetch configs. build-local.sh gains a per-component prefetch input and an openclaw target that restores the npm files Hermeto rewrites; the existing components build as before. renovate.json gains a regex manager so MintMaker bumps the nodejs-24-minimal digest; the npm inputs stay untracked on purpose and follow the AIPCC agentic image. The Tekton pipelines follow once the Konflux component is registered in odh-konflux-central. Related: RHAISTRAT-1845 Signed-off-by: Emilien Macchi <emacchi@redhat.com>
* fix(cli): accept sandbox name before -- in exec Closes NVIDIA#3882 Signed-off-by: Eric Curtin <eric.curtin@docker.com> * fix(cli): define exec grammar in clap Signed-off-by: Eric Curtin <eric.curtin@docker.com> * docs(sandboxes): remove exec overview change from PR Signed-off-by: Drew Newberry <anewberry@nvidia.com> --------- Signed-off-by: Eric Curtin <eric.curtin@docker.com> Signed-off-by: Drew Newberry <anewberry@nvidia.com> Co-authored-by: Drew Newberry <anewberry@nvidia.com>
…aw-image CARRY: feat(konflux): add OpenClaw reference harness image
) * fix(network): refuse protocol upgrades on GraphQL endpoints Refuse Upgrade headers before forwarding GraphQL-over-HTTP requests. Share the protocol refusal table with JSON-RPC and MCP, and close unexpected protocol switches before relaying frames. Keep GraphQL-over-WebSocket inspection on separate WebSocket endpoints. Cover upgrade refusal, audit mode, subscription handshakes, and ordinary HTTP and WebSocket controls. Update the current policy documentation. Signed-off-by: Shiju <shiju@nvidia.com> * fix(network): refuse GraphQL upgrades before reading bodies Validate the HTTP head and endpoint authority before upgrade refusal, then inspect ordinary GraphQL bodies. Preserve missing-authority credential rejection after body inspection. Signed-off-by: Shiju <shiju@nvidia.com> --------- Signed-off-by: Shiju <shiju@nvidia.com>
* feat(service): add bearer authorization passthrough Signed-off-by: Derek Carr <decarr@redhat.com> * docs(sdk): add service authorization migration guide Signed-off-by: Derek Carr <decarr@redhat.com> * fix(server): remove stale version import Signed-off-by: Derek Carr <decarr@redhat.com> * docs(upgrade): remove service authorization SDK guide Signed-off-by: Derek Carr <decarr@redhat.com> * fix(e2e): relabel provider readiness TLS mount Signed-off-by: Derek Carr <decarr@redhat.com> * test(e2e): stabilize exposed service routing Signed-off-by: Derek Carr <decarr@redhat.com> * test(e2e): support HTTPS service routing Signed-off-by: Derek Carr <decarr@redhat.com> --------- Signed-off-by: Derek Carr <decarr@redhat.com>
Conforma rejects repository IDs such as ubi-9-baseos-rpms because allowed IDs include the architecture. Qualify the multi-arch inputs with $basearch and record the expanded ID in the lockfiles without changing package versions. CodeReady Builder uses codeready-builder-for-ubi-9-$basearch-rpms. The section names in the UBI image's ubi.repo omit the architecture. Signed-off-by: KorneAlex <okorniie@redhat.com>
Regenerate the lockfiles with rpm-lockfile-prototype after rebasing onto main, so MintMaker sees tool output instead of a hand-merged lockfile. Signed-off-by: KorneAlex <okorniie@redhat.com>
CARRY: fix(konflux): include CPU architecture in UBI RPM repo IDs
log_response has always logged every gateway response at INFO, including health probes and the GetSandboxConfig and provider-readiness polls each supervisor makes. NVIDIA#3915 demoted the request spans for those polled paths to DEBUG, which stripped the request{method path} prefix from the log line at INFO but left the line itself, so the gateway log fills with bare 'response status=200' lines several times per second. Follow the span's level: polled requests log their response at DEBUG, or WARN on a 5xx so probe and poll failures stay visible. Signed-off-by: Kris Hicks <khicks@nvidia.com>
…e code (NVIDIA#3979) * refactor(sandbox): remove unreachable root-side identity and workspace code RFC 0012 moved the workload into its own capability-free container that starts as the final sandbox identity. The sandbox no longer runs a root supervisor that prepares the filesystem, rewrites account files, resolves OCI USER entries, or drops privileges before launching the workload, so that code had no production callers. Remove the unreachable paths and their tests: - prepare_filesystem / prepare_filesystem_with_identity, the /sandbox and OCI workspace chown preparation, and the root-side workspace validation (validate_oci_workspace and its privilege-dropped subprocess) - the hidden validate-workspace subcommand - drop_privileges / drop_privileges_with_identity, capability bounding set clearing, validate_sandbox_user/group, and /etc/passwd and /etc/group rewriting - the sandbox-side OCI USER resolver (identity.rs) and ResolvedProcessIdentity; the boundary now writes the driver-resolved UID/GID into the policy directly The workspace check that still runs inside the capability-free boundary (validate_oci_workspace_as_effective_identity) is unchanged. Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> * chore(sandbox): remove unused capability dependency and refresh Landlock comments Signed-off-by: Matthew Grossman <mgrossman@nvidia.com> --------- Signed-off-by: Matthew Grossman <mgrossman@nvidia.com>
…t registry (NVIDIA#3991) 679b190 added global.image.registry (ghcr.io/nvidia) as the fallback for empty per-image registries and split e2e image references into registry and repository. Locally built images such as openshell/gateway:<tag> have no registry host, so the chart rewrote them to ghcr.io/nvidia/openshell/* and the k3d cluster could not pull them. Clear global.image.registry in the Kubernetes e2e wrapper, which sets every image's registry explicitly. Signed-off-by: Kris Hicks <khicks@nvidia.com>
* fix(gator): require full head SHA for /ok to test copy-pr-bot will stop accepting abbreviated SHAs in /ok to test comments. Tell gator to read the full 40-character head SHA immediately before posting, and make the gh wrapper reject any /ok to test comment that is not exactly the command with the current full head SHA. Signed-off-by: Jim Meyer <jimeyer@nvidia.com> * fix(gator): drop gh wrapper /ok to test guard Keep the change to the gator-gate skill instructions only. Signed-off-by: Jim Meyer <jimeyer@nvidia.com> * fix(gator): unify /ok to test SHA placeholder Use <full-head-sha> for every /ok to test reference in the gator-gate skill and state the full-SHA requirement directly. Signed-off-by: Jim Meyer <jimeyer@nvidia.com> --------- Signed-off-by: Jim Meyer <jimeyer@nvidia.com>
…VIDIA#3984) Start driver cleanup after terminal finalization and retain disconnect fallback. Add detached success and failure e2e coverage across supervisor-based drivers. Closes NVIDIA#3938 Signed-off-by: John Myers <9696606+johntmyers@users.noreply.github.com>
* refactor(auth): separate sandbox identity from TLS Signed-off-by: Drew Newberry <anewberry@nvidia.com> * docs(auth): clarify gateway mTLS behavior Signed-off-by: Drew Newberry <anewberry@nvidia.com> * test(auth): include workspace scope in TLS authorization checks Signed-off-by: Drew Newberry <anewberry@nvidia.com> * test(e2e): bound service auth sandbox names for large PIDs Signed-off-by: Drew Newberry <anewberry@nvidia.com> --------- Signed-off-by: Drew Newberry <anewberry@nvidia.com>
… docker tag to v9.8-1790647840 (opendatahub-io#67) Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com> Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
* chore(build): remove bundled Z3 support Signed-off-by: Simon Scatton <sscatton@nvidia.com> Signed-off-by: Piotr Mlocek <pmlocek@nvidia.com> * fix(build): preserve vendored Z3 for local gateway artifacts Signed-off-by: Simon Scatton <sscatton@nvidia.com> --------- Signed-off-by: Simon Scatton <sscatton@nvidia.com> Signed-off-by: Piotr Mlocek <pmlocek@nvidia.com>
…A#4011) * fix(runtime): recover SSH relays and bound startup diagnostics Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(server): deliver pending relays once per supervisor session Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(server): satisfy relay delivery clippy diagnostics Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(server): bound relay setup with one absolute deadline Signed-off-by: Drew Newberry <anewberry@nvidia.com> --------- Signed-off-by: Drew Newberry <anewberry@nvidia.com>
…IA#4048) Signed-off-by: Simon Scatton <sscatton@nvidia.com>
Signed-off-by: Evan Lezar <elezar@nvidia.com>
* feat(ci): detect breaking protobuf changes Compare the proto module against the PR or merge-group base and report Buf violations in Branch Checks. Add local reproduction and fixture coverage. Closes NVIDIA#3794 Signed-off-by: Mrunal Patel <mrunalp@gmail.com> * fix(ci): pin protobuf check container image Signed-off-by: Mrunal Patel <mrunalp@gmail.com> * fix(ci): qualify protobuf compatibility by release train Signed-off-by: Simon Scatton <sscatton@nvidia.com> * refactor(ci): reuse protobuf compatibility action Signed-off-by: Simon Scatton <sscatton@nvidia.com> * refactor(ci): run protobuf checks as a Nix app with one ref Signed-off-by: Simon Scatton <sscatton@nvidia.com> --------- Signed-off-by: Mrunal Patel <mrunalp@gmail.com> Signed-off-by: Simon Scatton <sscatton@nvidia.com> Co-authored-by: Mrunal Patel <mrunalp@gmail.com>
… compile vm driver from source (NVIDIA#2151)
Signed-off-by: Evan Lezar <elezar@nvidia.com>
Build the odh-openshell-e2e UBI9 test image containing the OpenShell CLI, a compiled nextest archive, and tools for OpenShift. Prefetch both Cargo lockfiles, RPMs, and pinned cluster tools through Hermeto for the network-isolated Konflux build. Leave Tekton YAML generation to Konflux automation. Add local build and smoke checks, deployment scripts, tier selection, and JUnit and HTML reports. Serialize lifecycle and SELinux tests across nextest processes, restore lifecycle coverage, and fail empty tiers. Forward termination to nextest and clean up failed deployments while preserving local gateway registration on validation failures. Require namespace ownership before replacement. Remove the privileged SCC grant, use test-runner image metadata, and document the build, onboarding, and runtime flow under deploy/konflux/e2e-odh. Signed-off-by: Bobbins228 <mcampbel@redhat.com>
…4056) * test(tmachine): add Fedora RPM package installer Signed-off-by: Evan Lezar <elezar@nvidia.com> * ci: qualify Ubuntu branch installs with DEB packages Signed-off-by: Evan Lezar <elezar@nvidia.com> * ci: align package installers across integration matrices Signed-off-by: Evan Lezar <elezar@nvidia.com> --------- Signed-off-by: Evan Lezar <elezar@nvidia.com>
* fix(snap): simplify snap hooks The `post-refresh` hook runs after initial snap installation as well, so there is no need to call the `install` hook from within the `post-refresh` hook; instead, the logic can simply be moved into the `post-refresh` hook directly, and the `install` hook removed. Also, the existing `install` hook logic looked for an insecure configuration, and if found, replaced the entire configuration file with a minimal default in the current format. But OpenShell does that default behavior without any config file, so we may as well simply remove the configuration file entirely to keep up-to-date with the current default behavior. Let OpenShell create a configuration file if it needs to, rather than auto-create one via the packaging scripts. Signed-off-by: Oliver Calder <oliver.calder@canonical.com> * fix(snap): remove the connect-plug-docker hook The `openshell:docker` is auto-connected to the system `:docker` slot, so there should not be a need to separately restart the gateway service when the interface is connected. For locally-built test snaps which were not published to the store, the autoconnection is not made, but when the snap is installed, the gateway will attempt to start anyway and fail to find any available compute driver, so quickly restart until it hits the systemd start-limit, after which systemd prevents the service from being started again. If a user tries to manually connect their locally-built `openshell` snap to the `:docker` slot, then the `connect-plug-docker` hook runs and triggers a restart of the gateway, which will usually fail because the start limit has already been hit. An error in the hook will thus cause the interface connection to be undone, which is undesirable. Thus, we can remove this hook entirely, and instead allow interface connections to succeed as intended. The user still needs to manually restart the gateway service after making a manual connection (as was the case previously) and probably needs to `systemctl reset-failed` first, but at least connection will succeed beforehand so they can proceed with these steps. Signed-off-by: Oliver Calder <oliver.calder@canonical.com> * fix(snap): set refresh-mode: endure again, with manual restart Return to the previous behavior before commit a67567e, where the gateway is not stopped before refreshes. The `post-refresh` hook now restarts the gateway if the TLS configuration was corrected, so we don't have to enforce restarting the gateway on every refresh even when not necessary. Thus, set `refresh-mode: endure`, and let the hook decide when the gateway needs to be restarted. Signed-off-by: Oliver Calder <oliver.calder@canonical.com> * fix(snap): update docs and tests to reflect snap hook changes Signed-off-by: Oliver Calder <oliver.calder@canonical.com> * docs(snap): remove verbose explanation of snap gateway refresh behavior Signed-off-by: Oliver Calder <oliver.calder@canonical.com> --------- Signed-off-by: Oliver Calder <oliver.calder@canonical.com>
…-image-odh CARRY: feat(odh): add Konflux e2e test image
…olicy write (NVIDIA#3785) * fix(supervisor): wait for repair when the gateway refuses a startup policy write Startup writes the sandbox policy to the gateway in two cases: it uploads a discovered image policy when the gateway has none, and it writes the policy back after adding the proxy baseline filesystem paths. When the gateway refused either write with FAILED_PRECONDITION or INVALID_ARGUMENT, for example because the policy binds a provider that is not attached, startup treated the refusal as a permanent error and the supervisor exited. The sandbox never reached the ConfigurationInvalid repair state that other startup rejections use. Report such a refusal as a configuration rejection carrying the gateway's message, log it once per write and error code, and keep polling, so attaching the provider or replacing the policy completes startup. Other error codes keep their current handling: transient codes are retried, and permission, not-found and authentication failures still end startup. Skip the baseline-path write-back while a global policy is active. The gateway refuses every sandbox policy write in that state, so startup exited whenever a global policy lacked a baseline path. The supervisor now adds the paths to its own copy of the policy without saving a revision. Signed-off-by: Shiju <shiju@nvidia.com> * test(supervisor): stabilize startup refusal log capture Keep a second tracing dispatcher alive while capturing startup refusal logs. With only one dispatcher, a parallel test thread without a default subscriber can cache Interest::never for the shared OCSF callsite after the capture thread rebuilds the cache. Preserve the exact log-count, diagnostic, configuration-generation and repair assertions. Production startup behavior is unchanged. Signed-off-by: Shiju <shiju@nvidia.com> * fix(supervisor): reconcile stale startup rejection reports Refetch desired configuration immediately when a rejection report is aborted because its generation changed. Preserve acknowledged rejection pacing and all other report error handling. Signed-off-by: Shiju <shiju@nvidia.com> * test(supervisor): box startup repair race futures Keep the repair regressions below the large-future lint threshold without changing their inputs, scheduling, or assertions. Signed-off-by: Shiju <shiju@nvidia.com> --------- Signed-off-by: Shiju <shiju@nvidia.com>
…DIA#4006) With a non-terminal stdin, sandbox exec read stdin to EOF before it sent the exec request. A pipe that never closes (CI runners, supervisors, agent harnesses) blocked the CLI forever in read(2) without the gateway ever seeing the request, and a slow producer delayed the command until EOF. Collect piped stdin on a detached reader thread for at most 200 ms. Input that reaches EOF within that window still travels in the single request that older gateways need. If the pipe is still open, start the command through the streaming RPC and forward the collected prefix plus the rest of stdin as it arrives, closing remote stdin at EOF. The 4 MiB cap covers the prefix and the streamed remainder together. Closes NVIDIA#3993 Signed-off-by: Federico Kamelhar <federico.kamelhar@oracle.com>
…A#3987) * chore(agents): simplify contributor instructions and workflows Closes NVIDIA#3980 Signed-off-by: John Myers <johntmyers@users.noreply.github.com> * docs(contributing): scope verification to affected components Signed-off-by: John Myers <johntmyers@users.noreply.github.com> * docs(contributing): standardize issue branch naming Signed-off-by: John Myers <johntmyers@users.noreply.github.com> --------- Signed-off-by: John Myers <johntmyers@users.noreply.github.com> Co-authored-by: John Myers <johntmyers@users.noreply.github.com>
…VIDIA#3846) * fix(supervisor): bound pending exec stdin and cancel stalled writers Signed-off-by: Shiju <shiju@nvidia.com> * docs(supervisor): separate pending stdin guidance from CLI modes Keep the pending-input limit beside the RPC lifecycle contract so the streaming CLI documentation can merge independently. Signed-off-by: Shiju <shiju@nvidia.com> --------- Signed-off-by: Shiju <shiju@nvidia.com>
NVIDIA#3923) * fix(policy): refresh pending proposals when the sandbox policy changes Approving, removing, or undoing a rule, or updating the sandbox policy, changes the inputs every other pending proposal was evaluated against. Only proposals the new policy covered were reconciled; the rest kept their old prover result and review token. The review surface (GetDraftPolicy) therefore showed a stale evaluation, and the first approval of the next proposal refreshed it and failed with FAILED_PRECONDITION, so approving proposals one after another always failed once. Re-evaluate the remaining pending proposals at each policy change, reusing the cached prover result unless the proposal's inputs changed. Approval still rejects a review token that does not match the stored evaluation, so a reviewer holding a pre-refresh evaluation must still refetch it. When a refresh does happen at approval time (inputs changed between fetch and approve), the CLI now explains that the rule was re-evaluated and how to review it, instead of printing the raw gRPC status. Closes NVIDIA#3884 Signed-off-by: fede-kamel <fkamelhar@gmail.com> * fix(policy): make pending proposal refresh race-safe and bounded Store refreshed evaluations with a compare-and-swap: the store re-reads the proposal, refuses when its rule name, proposed rule, or review token changed since the evaluation read it, copies only the evaluation fields onto the stored record, and updates only if the payload is still the one it read. A refresh can no longer revert a concurrent edit or observation, and the edit path uses the same guard against a concurrent refresh. Bound each refresh to the 32 newest pending proposals; the rest keep the approval-time recheck, which still refuses a stale review token. Operator decisions (approve, approve-all, remove, undo) refresh before responding. UpdateConfig, which holds the gateway-wide sandbox sync guard, and agent-driven auto-approval refresh in a background task instead, one per sandbox with later changes coalesced into a single rerun. Refs NVIDIA#3884 Signed-off-by: fede-kamel <fkamelhar@gmail.com> * docs(policy): describe proposal rechecks after approvals and approve-all Explain that approving, removing, or undoing a rule rechecks the other pending proposals so they can be approved one after another, when the recheck is deferred or bounded, and what rule approve reports when a proposal changed after it was listed. Show rule approve-all in Run Your First Agent with its security-flag behavior. Refs NVIDIA#3884 Signed-off-by: fede-kamel <fkamelhar@gmail.com> * fix(policy): refresh pending proposals after a full policy replacement A full policy UpdateConfig (openshell policy set) re-reads the latest revision after its atomic write, finds the revision it just committed, and returns before reaching the pending-proposal refresh at the end of the handler. Pending proposals kept their stale evaluation, so rule get showed the old candidate and the next approval failed with the refresh precondition. Schedule the background refresh right after the commit. Refs NVIDIA#3884 Signed-off-by: fede-kamel <fkamelhar@gmail.com> --------- Signed-off-by: fede-kamel <fkamelhar@gmail.com>
Since NVIDIA#2726 the canonical main process's stdout and stderr are captured in pipes that feed only the in-memory replay buffer used by sandbox connect. Agent output therefore never reaches the container's own stdout and stderr, so it is missing from kubectl logs, docker logs, and podman logs and from anything that collects container logs. Before NVIDIA#2726 the entrypoint inherited the container's descriptors and its output appeared there. Copy the main process's output to the launcher's stdout and stderr in addition to the replay buffer, restoring the earlier behavior: - Output is copied byte for byte to the matching stream from a forwarder thread per stream, after it is published to the replay buffer. When the container runtime falls behind on a stream, that stream's reader waits instead of dropping output, so backpressure reaches the agent as it did with inherited descriptors, while the other stream and attachments keep receiving output. - Before the main process's exit is published, the output readers finish and queued output is drained to the container log, so an agent's final lines are not lost at shutdown. A 30 second deadline covers both; when it expires, readers waiting on the container log are released and drain the pipes into the replay buffer only, so a stalled container log cannot block exit reporting. - PTY-mode processes are not copied. The terminal stream carries escape sequences and echoed input, and terminal commands never reached the container log before NVIDIA#2726. - Exec, SSH, and SFTP sessions are not copied. Launcher log lines keep their existing format and remain in the container's stderr. They are written as whole lines, and a newline is inserted first when the agent left stderr mid-line, so launcher and agent lines do not merge. The Docker and VM drivers appended the tail of the workload's output to failure messages: Docker the workload container's log, and the VM driver the guest console, which carries the launcher's stdout and stderr. Those messages land in the sandbox's Ready condition and in platform events that the gateway republishes to the sandbox event stream. With agent output in that log, those messages would carry arbitrary agent output, including anything sensitive the agent prints, into gateway status and events. The supervisor starts its health endpoint only after the agent starts, so every Docker failure path could include agent output, and the VM driver reports one whenever the VM or host supervisor exits. Forward only the supervisor's log tail, matching the Podman driver, which reads the workload log solely to match fixed launcher markers and never forwards raw workload output. The workload's output remains available through docker logs and the VM's rootfs-console.log. Document where main process output appears in the logging docs and the cluster debugging skill. Closes NVIDIA#3928 Signed-off-by: Kris Hicks <khicks@nvidia.com>
Signed-off-by: John Myers <johntmyers@users.noreply.github.com> Co-authored-by: John Myers <johntmyers@users.noreply.github.com>
…#2253) * feat(examples): add Jupyter sandbox fleet Signed-off-by: Drew Newberry <anewberry@nvidia.com> * refactor(examples): simplify Jupyter sandbox demo Signed-off-by: Drew Newberry <anewberry@nvidia.com> * fix(examples): refresh Jupyter sandbox for current SDK Signed-off-by: Drew Newberry <anewberry@nvidia.com> * refactor(examples): simplify Jupyter sandbox demo Signed-off-by: Drew Newberry <anewberry@nvidia.com> * feat(examples): execute notebooks on sandbox Jupyter kernel Signed-off-by: Drew Newberry <anewberry@nvidia.com> * docs(examples): use CLI for Jupyter sandbox setup Signed-off-by: Drew Newberry <anewberry@nvidia.com> * docs(examples): use published Jupyter image and gateway CLI Signed-off-by: Drew Newberry <anewberry@nvidia.com> * docs(examples): execute Jupyter demo notebook in place Signed-off-by: Drew Newberry <anewberry@nvidia.com> * docs(examples): update Jupyter base image Signed-off-by: Drew Newberry <anewberry@nvidia.com> --------- Signed-off-by: Drew Newberry <anewberry@nvidia.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.
Automated Sync from main to stable
This PR automatically syncs the
mainbranch to thestablebranch by opening a pull request frommainintostable.Sync Summary
Latest commit:
924a6868Merge remote-tracking branch 'upstream/main'Total commits to sync: 52
Source:
https://github.com/red-hat-data-services/OpenShell.git@mainTarget:
https://github.com/red-hat-data-services/OpenShell.git@stablePR head:
mainCommits to be synced
924a6868Merge remote-tracking branch 'upstream/main'418af8d3Merge remote-tracking branch 'upstream/main'6cbf3db5Merge remote-tracking branch 'upstream/main'348a1fc6feat(examples): run Jupyter notebooks in an OpenShell sandbox (feat(examples): run Jupyter notebooks in an OpenShell sandbox NVIDIA/OpenShell#2253)91c2f2f3Merge remote-tracking branch 'upstream/main'53ed5988Merge remote-tracking branch 'upstream/main'1b77cd4echore(gator): default to GPT-6.1 Sol (fixes chore(gator): default to GPT-6.1 Sol with medium reasoning NVIDIA/OpenShell#4064) (chore(gator): default to GPT-6.1 Sol NVIDIA/OpenShell#4065)8091f668feat(sandbox): write agent output to the container log (feat(sandbox): write agent output to the container log NVIDIA/OpenShell#4005)71440b28fix(policy): refresh pending proposals when the sandbox policy changes (fix(policy): refresh pending proposals when the sandbox policy changes NVIDIA/OpenShell#3923)8d418f1ffix(supervisor): bound pending exec stdin and cancel stalled writers (fix(supervisor): bound pending exec stdin and cancel stalled writers NVIDIA/OpenShell#3846)6e369f23chore(agents): simplify contributor instructions and workflows (chore(agents): simplify contributor instructions and workflows NVIDIA/OpenShell#3987)ffcbe628fix(cli): start sandbox exec without waiting for piped stdin EOF (fix(cli): start sandbox exec without waiting for piped stdin EOF NVIDIA/OpenShell#4006)f2901393fix(supervisor): wait for repair when the gateway refuses a startup policy write (fix(supervisor): wait for repair when the gateway refuses a startup policy write NVIDIA/OpenShell#3785)169d9c97Merge remote-tracking branch 'upstream/main'56266adbMerge remote-tracking branch 'upstream/main'ca16a509Merge pull request CARRY: feat(odh): add Konflux e2e test image opendatahub-io/openshell#61 from Bobbins228/feat/e2e-testing-image-odh1ad4e428fix(snap): simplify snap hooks (fix(snap): simplify snap hooks NVIDIA/OpenShell#3988)cb193ef1ci: use package installers consistently in integration tests (ci: use package installers consistently in integration tests NVIDIA/OpenShell#4056)35b92b5cCARRY: feat(odh): add Konflux e2e testing image82e88937test(tmachine): add Fedora RPM package installer (test(tmachine): add Fedora RPM package installer NVIDIA/OpenShell#4025)b3e92013feat(flake): add packages required to run mise command allowing us to compile vm driver from source (feat(flake): Add missing packages to flake for running mise commands NVIDIA/OpenShell#2151)5698c4f7fix(ci): qualify protobuf compatibility by release train (fix(ci): qualify protobuf compatibility by release train NVIDIA/OpenShell#4049)0e8d9e55test(e2e): remove schema parity campaign (test(e2e): remove schema parity campaign NVIDIA/OpenShell#3864)fde79f1afix(ci): align integration inputs with release candidate source (fix(ci): align integration inputs with release candidate source NVIDIA/OpenShell#4048)fe386375fix(runtime): recover SSH relays and bound startup diagnostics (fix(runtime): recover SSH relays and bound startup diagnostics NVIDIA/OpenShell#4011)ac34d783Merge remote-tracking branch 'upstream/main'e21b7fd8chore(build): remove bundled Z3 support (chore(build): remove bundled Z3 support NVIDIA/OpenShell#3275)12cfa2fcMerge remote-tracking branch 'upstream/main'87d63705Merge remote-tracking branch 'upstream/main'67292402chore(deps): update registry.access.redhat.com/ubi9/nodejs-24-minimal docker tag to v9.8-1790647840 (chore(deps): update registry.access.redhat.com/ubi9/nodejs-24-minimal docker tag to v9.8-1790647840 opendatahub-io/openshell#67)021400berefactor(auth): separate sandbox identity from TLS (refactor(auth): separate sandbox identity from TLS NVIDIA/OpenShell#3110)6379f8aaMerge remote-tracking branch 'upstream/main'669612f3Merge remote-tracking branch 'upstream/main'5ad8493eMerge remote-tracking branch 'upstream/main'2935e973fix(gateway): delete finalized ephemeral sandboxes while connected (fix(gateway): delete finalized ephemeral sandboxes while connected NVIDIA/OpenShell#3984)5a91572bfix(gator): require full head SHA for /ok to test (fix(gator): require full head SHA for /ok to test NVIDIA/OpenShell#4007)9912d21dfix(e2e): keep locally built Kubernetes images off the chart's default registry (fix(e2e): keep locally built Kubernetes images off the chart's default registry NVIDIA/OpenShell#3991)4784e794refactor(sandbox): remove unreachable root-side identity and workspace code (refactor(sandbox): remove unreachable root-side identity and workspace code NVIDIA/OpenShell#3979)dde8a9a5fix(server): log polled request responses at debug (fix(server): log polled request responses at debug NVIDIA/OpenShell#3974)05a36da9Merge pull request CARRY: fix(konflux): include CPU architecture in UBI RPM repo IDs opendatahub-io/openshell#64 from KorneAlex/fix/ubi-rpm-repo-idse73cf143CARRY: chore(konflux): regenerate UBI RPM lockfilescccc610eCARRY: fix(konflux): include CPU architecture in UBI RPM repo IDs912a077bfeat(service): add bearer authorization passthrough (feat(service): add bearer authorization passthrough NVIDIA/OpenShell#3796)9d4f527bMerge remote-tracking branch 'upstream/main'37f086bdMerge remote-tracking branch 'upstream/main'374c0359fix(network): refuse protocol upgrades on GraphQL endpoints (fix(network): refuse protocol upgrades on GraphQL endpoints NVIDIA/OpenShell#3841)2ec9cb49Merge pull request CARRY: feat(konflux): add OpenClaw reference harness image opendatahub-io/openshell#66 from opendatahub-io/carry/openclaw-image07a486d7fix(cli): accept sandbox name before -- in exec (fix(cli): accept sandbox name before -- in exec NVIDIA/OpenShell#3901)5c8eedd4CARRY: feat(konflux): add OpenClaw reference harness image5a1aa3b7Merge remote-tracking branch 'upstream/main'7caff12dperf(otel): stop exporting spans from steady-state polling (perf(otel): stop exporting spans from steady-state polling NVIDIA/OpenShell#3915)21fea959test(tmachine): add K3s conformance scenario (test(tmachine): add K3s conformance scenario NVIDIA/OpenShell#3848)Merging
GitHub automerge is enabled for this pull request once required checks pass.