{"id":17981825,"url":"https://github.com/ljtill/microsoft-dev-box","last_synced_at":"2025-03-25T18:31:30.710Z","repository":{"id":58006933,"uuid":"525352597","full_name":"ljtill/microsoft-dev-box","owner":"ljtill","description":"[WIP] Microsoft Dev Box Infra-as-Code","archived":false,"fork":false,"pushed_at":"2024-03-04T21:39:27.000Z","size":82,"stargazers_count":2,"open_issues_count":5,"forks_count":8,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-20T17:22:38.722Z","etag":null,"topics":["azure","azure-bicep","dev-machine","github-actions","microsoft-dev-box"],"latest_commit_sha":null,"homepage":"","language":"Bicep","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ljtill.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-08-16T11:36:37.000Z","updated_at":"2025-02-24T12:52:05.000Z","dependencies_parsed_at":"2024-10-29T18:48:43.265Z","dependency_job_id":null,"html_url":"https://github.com/ljtill/microsoft-dev-box","commit_stats":null,"previous_names":["ljtill/bicep-dev-box","ljtill/microsoft-dev-box"],"tags_count":0,"template":false,"template_full_name":"ljtill/bicep-scaffold","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ljtill%2Fmicrosoft-dev-box","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ljtill%2Fmicrosoft-dev-box/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ljtill%2Fmicrosoft-dev-box/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ljtill%2Fmicrosoft-dev-box/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ljtill","download_url":"https://codeload.github.com/ljtill/microsoft-dev-box/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245520001,"owners_count":20628813,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["azure","azure-bicep","dev-machine","github-actions","microsoft-dev-box"],"created_at":"2024-10-29T18:12:13.997Z","updated_at":"2025-03-25T18:31:25.702Z","avatar_url":"https://github.com/ljtill.png","language":"Bicep","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dev Box\n\nMicrosoft Dev Box is an Azure service that gives developers access to\nready-to-code, project-specific dev boxes that are preconfigured and centrally\nmanaged. Support hybrid dev teams of any size with high-performance, cloud-based\nworkstations, and let developers focus on writing code by streamlining access to\nthe tools they need.\n\nThis repository contains the infra-as-code components to quickly scaffold a new\nMicrosoft Dev Box environment.\n\n_Please note these artifacts are under development and subject to change._\n\n---\n\n### Getting Started\n\nBefore deploying the Dev Box resources, update the parameters file `src/parameters/main.bicepparam`.\n\n#### Using locally with Bash\n\n```bash\n./eng/deploy.sh -s \"{GUID}\"\n./eng/deploy.sh -s \"{GUID}\"\n```\n\nTo override the default parameters file, use the `-p {FilePath}` parameter.\n\n#### Using locally with PowerShell\n\n```powershell\n./eng/deploy.ps1 -SubscriptionId \"{GUID}\"\n./eng/delete.ps1 -SubscriptionId \"{GUID}\"\n```\n\nTo override the default config file, use the `-ConfigFile {FilePath}` parameter.\n\n#### Using with GitHub Actions\n\nAzure Active Directory - Application\n\n- Navigate to the 'App Registration' blade wihin the Azure portal\n- Select 'New registration' and provide a Name for the application\n- Select the newly created application and select 'Certificates \u0026 secrets'\n- Select 'Federated Credentials' and 'Add credential'\n- Provide the 'Organization (username)' and Repository for the credential\n- Select 'Entity type' - Branch and provide 'main'\n- Repeat process for 'Entity type' - Pull Request\n\nAzure Resource Manager - Role Assignment\n\n- Navigate to the Subscription in the Azure portal\n- Select 'Access control (IAM)' and 'Add' - 'Add role assignment'\n- Select Role - Contributor and select 'Members'\n- Provide the 'Name' of the application from the previous steps\n\nGitHub Actions - Secrets\n\n- Navigate to 'Settings' on the repository\n- Select 'Secrets' and 'Actions' link\n- Select 'New repository secret' and create secrets for the following:\n  - AZURE_TENANT_ID\n  - AZURE_SUBSCRIPTION_ID\n  - AZURE_CLIENT_ID\n\n### Authentication\n\nAfter deploying the Azure resources, permission needs to be provided to allow users to access Dev Box.\n\nAzure Resource Manager\n\n- Navigate to the DevCenter Project resource in the Azure Portal\n- Select 'Access control (IAM)' and 'Add' - 'Add role assignment'\n- Select Role 'DevCenter Dev Box User' and select Members\n- Provide the 'Name' of the User / Groups to allow access to the Dev Box portal\n\n---\n\n### Deployed Resources\n\n- Virtual Network\n- Network Security Group\n- Compute Gallery\n- Managed Identity\n- DevCenter\n- DevCenter Network Connection\n- DevCenter Definitions\n- DevCenter Project\n- DevCenter Pools\n\n---\n\n### Links\n\n- [Microsoft Dev Box](https://learn.microsoft.com/azure/dev-box/overview-what-is-microsoft-dev-box)\n  - [Key Concepts](https://learn.microsoft.com/azure/dev-box/concept-dev-box-concepts)\n  - [How-to Guides](https://learn.microsoft.com/azure/dev-box/how-to-project-admin)\n  - [Connect](https://learn.microsoft.com/azure/dev-box/tutorial-connect-to-dev-box-with-remote-desktop-app)\n  - [Portal](https://devbox.microsoft.com/)\n- [Azure Bicep](https://docs.microsoft.com/azure/azure-resource-manager/bicep)\n- [OpenID Connect](https://docs.github.com/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-azure)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fljtill%2Fmicrosoft-dev-box","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fljtill%2Fmicrosoft-dev-box","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fljtill%2Fmicrosoft-dev-box/lists"}