Commit Graph
25 Commits
Author SHA1 Message Date
Oliver Calder 994750e3a1 feat(snap): vendor ssh in openshell snap and remove ssh-keys interface (#2280)
Previously, the openshell snap used the ssh-keys interface to get access
to the host's ssh binary, which is used for sandbox connect/exec/forward.
However, ssh-keys is a privileged interface which also grants access to
the public and private ssh keys on the host. As such, it required manual
connection in order to be used.

This weakened the security sandbox of the snap, and hurt the UX of
installing it.

This commit changes this by removing the `ssh-keys` interface and
instead vendoring the `ssh` binary within the snap.

This is safe because OpenShell always invokes the `ssh` binary with
`StrictHostKeyChecking=no`, `UserKnownHostsFile=/dev/null`, and
`GlobalKnownHostsFile=/dev/null`, and never uses any host credentials or
ssh configuration. Openshell only ever access to `~/.ssh/config` to
write OpenShell-managed aliases, and this can safely live within the
snap sandbox, rather than leaking into the host environment.

Signed-off-by: Oliver Calder <oliver.calder@canonical.com>
2026-07-15 03:05:33 +00:00
dependabot[bot] 3ace968b64 chore(deps): bump azure/setup-helm from 5.0.0 to 5.0.1 (#1996)
Bumps [azure/setup-helm](https://github.com/azure/setup-helm) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/azure/setup-helm/releases)
- [Changelog](https://github.com/Azure/setup-helm/blob/main/CHANGELOG.md)
- [Commits](https://github.com/azure/setup-helm/compare/dda3372f752e03dde6b3237bc9431cdc2f7a02a2...9bc31f4ebc9c6b171d7bfbaa5d006ae7abdb4310)

---
updated-dependencies:
- dependency-name: azure/setup-helm
  dependency-version: 5.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-25 16:42:32 -07:00
krishicks b7ce0be4b6 ci(release): authenticate snap canary artifact download (#1711)
The Ubuntu Snap canary downloads its artifact from a different workflow run
(the triggering Release Dev run) via run-id. Cross-run downloads require
authentication, so pass github.token to actions/download-artifact.

Signed-off-by: Kris Hicks <khicks@nvidia.com>
2026-06-03 11:33:21 -05:00
krishicks 61b33ea42e ci(release): fix Ubuntu Snap canary install and registration (#1699)
Install the Snap built by the triggering Release Dev workflow by setting
merge-multiple: true on the artifact download. actions/download-artifact
otherwise extracts each artifact into its own subdirectory, leaving the
package at release/snap-linux-amd64/*.snap, so the install glob
./release/*.snap matched nothing. Merging flattens the artifact's contents
directly into release/ where the dangerous local snap install expects it.

Harden the Snap canary setup by enabling snapd.socket, waiting for snap
seeding (snap wait system seed.loaded), and running every step with strict
shell options (set -euo pipefail) so failures surface immediately.

Register the snapped gateway with the CLI as the documented local plaintext
snap-docker gateway, and print version and snap services, before running
openshell status so the canary verifies a configured and reachable gateway
instead of only the install.

Signed-off-by: Kris Hicks <khicks@nvidia.com>
2026-06-02 18:12:04 -07:00
krishicks 1d2d8c386f ci(release): bring Fedora RPM canary to parity (#1688)
The RPM canary needs to exercise the install.sh user-service path, but a GitHub
Actions job container does not boot with systemd as PID 1. The Fedora RPM
canary needs to exercise the install.sh user-service path, but a GitHub Actions
job container does not boot with systemd as PID 1. This means the Fedora RPM
canary was incomplete as compared to the others.

With this change, we run Fedora as a nested privileged systemd container
instead, wait for systemd to become reachable, then start the root user manager
so systemctl --user works for the RPM gateway unit, achieving parity with the
other canary tests.

Signed-off-by: Kris Hicks <khicks@nvidia.com>
2026-06-02 15:04:57 -07:00
Drew Newberry 6c7950da90 ci(snap): add snap release pipeline (#1600) 2026-05-27 15:50:03 -07:00
Mesut Oezdil cd70249629 ci: pin azure/setup-helm and helm/kind-action to commit SHAs (#1544)
* ci: pin azure/setup-helm and helm/kind-action to commit SHAs

* chore(python): add py.typed marker for PEP 561 compliance

* ci: use full semver in pinned action version comments

Signed-off-by: mesutoezdil <mesudozdil@gmail.com>

---------

Signed-off-by: mesutoezdil <mesudozdil@gmail.com>
2026-05-25 14:03:32 -07:00
Taylor Mutch 48333e5e75 ci(canary): keep helm jwt secret generation enabled (#1521)
Signed-off-by: Taylor Mutch <taylormutch@gmail.com>
2026-05-22 07:21:57 -07:00
dependabot[bot] 3cde651834 chore(deps): bump azure/setup-helm from 4 to 5 (#1468)
Bumps [azure/setup-helm](https://github.com/azure/setup-helm) from 4 to 5.
- [Release notes](https://github.com/azure/setup-helm/releases)
- [Changelog](https://github.com/Azure/setup-helm/blob/main/CHANGELOG.md)
- [Commits](https://github.com/azure/setup-helm/compare/v4...v5)

---
updated-dependencies:
- dependency-name: azure/setup-helm
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-20 09:35:48 -07:00
Taylor Mutch 2a065a5ff2 ci(canary): add kind-based helm chart smoke test (#1336) 2026-05-19 17:25:57 -07:00
Drew Newberry 529be37fd4 chore(installer): promote package install script (#1261) 2026-05-08 17:04:15 -07:00
Drew Newberry 645b880513 feat(install): add rpm dev installer support (#1262)
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
2026-05-08 09:45:30 -05:00
Drew Newberry 52097f2d4c ci(release): run package release canaries (#1256) 2026-05-07 21:57:55 -07:00
Drew Newberry 70a0f6c547 refactor(cli): remove gateway lifecycle management (#1221) 2026-05-07 09:54:13 -07:00
jtoelke2 152d059400 ci(vm): remove remaining EKS release assumptions (#1195)
Signed-off-by: Jonas Toelke <jtoelke@nvidia.com>
2026-05-06 11:27:02 -05:00
Drew Newberry 4d388d2677 ci(vm): cleanup vm build infra (#1186) 2026-05-06 08:58:02 -07:00
jtoelke2 e73a4eae53 ci(os-49): draft release runner cutover (#1164) 2026-05-05 10:18:29 -05:00
Drew Newberry 51351e4745 chore(ci): update checkout action to v6 (#1086)
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
2026-04-30 13:22:47 -07:00
Drew Newberry 1a706f33cf fix(ci): simplify dev release install instructions to use install.sh (#453) 2026-03-18 13:53:03 -07:00
Drew Newberry dcd991275c fix(ci): use published install script in release workflows (#416) 2026-03-17 21:09:26 -07:00
Drew Newberry ddca0df918 ci(canary): add two-step gateway start + sandbox create canary test (#325) 2026-03-15 11:20:07 -07:00
Drew Newberry 0a7ffe1669 ci(release): gate python wheels on e2e for tagged releases (#319) 2026-03-15 00:39:00 -07:00
Drew Newberry c58049cf2e ci: various CI improvements (#312) 2026-03-14 18:31:50 -07:00
Drew Newberry 1a35265d8e fix(canary): use curl instead of gh CLI for release download (#299) 2026-03-13 21:47:36 -07:00
Drew Newberry 3bcbd93401 ci(release): add canary triggered after release workflow (#298) 2026-03-13 20:22:38 -07:00