Changelog #22

Cache Volumes on Windows Runners
Windows GitHub Actions runners can now use cache volumes: NVMe-backed storage attached directly to the runner, so restoring a dependency or build cache doesn't pay for a network round trip.
Enable caching on the windows/amd64 profile in the
profile editor, then add
nscloud-cache-action to your workflow:
- name: Configure cache
uses: namespacelabs/nscloud-cache-action@v1
with:
cache: <framework>Windows caching is in early access. Contact us or email support@namespace.so to enable it for your workspace.
Bazel Remote Asset API
Namespace's Bazel cache now implements the Remote Asset API. Bazel's remote cache stores build outputs, but external dependencies traditionally go straight to the origin instead. The Remote Asset API changes that by letting Bazel route those fetches through the cache as well.
Our remote Bazel caches now support:
- Checksum-verified fetches using the
checksum.sriqualifier (SHA-256). - Custom HTTP headers via the
http_header:andhttp_header_url:qualifiers. - HTTP and HTTPS URIs.
Enable it from a runner profile alongside Bazel caching, or pass a flag when configuring the cache from the CLI:
nsc cache bazel setup --enable_remote_asset_api --bazelrc /etc/bazel.bazelrcMore updates
nsc previously required WSL on Windows: install WSL, then run the Linux install script
inside it. There's now a native PowerShell installer, so nsc installs directly on Windows:
irm https://get.namespace.so/cloud/install.ps1 | iex.
A reservation queues an instance request until capacity is available by a deadline, instead of failing immediately. nsc reservation list, describe, and cancel let you inspect and manage them, and nsc reservation wait <reservation_id> blocks until a reservation is fulfilled and returns the resulting instance ID.
nsc ssh --container_name github-runner connects into the GitHub Actions runner container inside an environment, rather than the environment itself, so you can inspect a job while it's running.
nsc artifact extend pushes out the expiration of a finalized artifact, so you can create artifacts with a short expiration and extend them whenever they're accessed rather than setting a single fixed retention up front.
The jobs command is now named job (the old name still works), and gained a new describe subcommand: nsc github job describe <job-id> prints the full detail for a single GitHub Actions job, including the repository, workflow, timing, and the runner instance it executed on. nsc github job list now has documented filters for --repository, --conclusion, --sender_login, --since, --pending, and --running.
nsc github profile rebuild-base-image --profile_id <id> triggers a rebuild of a runner profile's custom base image.
nsc egress logs <instance-id> prints the egress filtering decisions recorded for an instance, with --after/--before to bound the time range and -o json for structured output.
Available for eligible workspaces, with memory up to 512 GB depending on plan. Contact us to enable them for your team.
The compute docs now cover ApplicationRequest, which lets you install and launch custom applications on macOS instances through the Compute API.
The instance and job pages now have a button to copy the SSH command directly. The kubeconfig download moved into a dropdown to keep the page less cluttered.
If your workspace is connected to an SSO directory, the members page now shows which members have their role locked and enforced by the directory versus managed manually, with a link to manage directory groups directly.


