GitHub Codespaces Machine Types
You set up github codespaces machine types in your project file or team settings. This choice sets the CPU, RAM, and disk space for each cloud workspace. Engineering teams often pick large cloud machines so builds finish fast. They also load broad cloud keys and database roles into these remote workspaces. When roles are too broad, one stolen workspace can expose production data. How github codespaces machine types work in practice A remote workspace runs inside a virtual machine hosted in th
Machine Identity + GitHub Actions Security: the complete guide
Architecture patterns, implementation strategies, and security best practices. Delivered to your inbox.
You set up github codespaces machine types in your project file or team settings. This choice sets the CPU, RAM, and disk space for each cloud workspace. Engineering teams often pick large cloud machines so builds finish fast. They also load broad cloud keys and database roles into these remote workspaces. When roles are too broad, one stolen workspace can expose production data.
How github codespaces machine types work in practice
A remote workspace runs inside a virtual machine hosted in the cloud. When a developer starts a session, the platform reads the project setup file. This file tells the host what minimum hardware the project needs to run. Team admins can also set a rule that caps the largest allowed size. This rule stops developers from picking expensive hardware for small code tasks.
Small machines work well for simple web apps and basic script edits. Larger machines help when teams build big backend services or run local containers. Memory and CPU limits affect how fast tests run and how compilers work. Teams can change the hardware size later if a project grows over time. The platform stops the workspace, moves the disk to new hardware, and restarts it.
How teams manage secrets and roles on cloud machines
Remote workspaces need secrets to talk to databases, cloud APIs, and internal services. Teams usually store these keys inside the platform secret store for the project. When the virtual machine starts, the host loads those keys into the shell. Any tool or script inside that workspace can read those secret values right away.
Admins often share one set of staging or production keys across a whole team. Every developer who boots a workspace gets the exact same database role and permissions. This setup makes onboarding fast because new hires do not set up local keys. Still, shared keys make it hard to see which person ran a specific query. Database logs only show the shared role name from the cloud workspace.
Machine Identity + GitHub Actions Security: architecture patterns and best practices
Continue reading? Get the full guide.
Free. No spam. Unsubscribe anytime.
What native machine controls solve and where gaps remain
Native hardware rules solve billing spikes and keep build times steady across a team. Admins control who can start a workspace and which hardware sizes they can pick. They can also set idle timers to shut down machines when developers walk away. These controls manage the virtual machine lifecycle and keep cloud compute costs in check.
Yet hardware rules only control the box itself, not what runs inside it. Once a workspace starts, the native setup does not inspect database queries or commands. If a workspace holds a write key, a bad script can drop a table. Native machine settings also cannot mask sensitive fields like emails or card numbers. Data masking must rewrite matched fields in results before they reach the remote disk. Without query checks and masking, a broad role puts live data at risk.
Add runtime guardrails and masking beside your databases and APIs
Login rules, role grants, and CI checks govern who connects to your stack. Yet any allowed script, engineer, or AI agent still runs commands with the full scope of its role. For workloads on Postgres, MySQL, SQL Server, MongoDB, ClickHouse, Kubernetes, SSH, or internal HTTP services, hoop.dev sits beside the service as an open-source proxy, a sidecar for your database or API.
Before a query runs, hoop.dev guardrails check the statement against your rules. An AI Analyzer you configure can score intent or hold risky calls for human review. Next, hoop.dev data masking rewrites sensitive fields in responses, and each verdict is logged per listener. Explore the MIT-licensed project on GitHub.
Frequently asked questions
Can developers change their machine size after creating a workspace?
Yes, developers can switch to a different hardware size from their workspace settings menu. The platform restarts the machine and keeps all saved files on the disk intact.
How do teams stop developers from picking oversized cloud machines?
Team admins can set a policy that limits the maximum hardware size per project. Developers will only see and pick from the machine sizes allowed by that policy.
Do larger machine types change how workspace secrets or permissions work?
No, hardware size only changes CPU, memory, and storage for the virtual machine. Secret access and database permissions depend on user roles and stored keys, not hardware.
Related guides
In this post