We work hard to make sure that Codespaces is always available to you. However, forces beyond our control sometimes impact the service in ways that can cause unplanned service disruptions.
Although disaster recovery scenarios are rare occurrences, we recommend that you prepare for the possibility that there is an outage of an entire region. If an entire region experiences a service disruption, the locally redundant copies of your data would be temporarily unavailable.
The following guidance provides options on how to handle service disruption to the entire region where your codespace is deployed.
Note: You can reduce the potential impact of service-wide outages by pushing to remote repositories frequently.
In this case, no action on your part is required. Know that we are working diligently to restore service availability.
While Codespaces provides the benefit of a pre-configured developer environmnent, your source code should always be accessible through the repository hosted on GitHub.com. In the event of a Codespaces outage, you can still clone the repository locally or edit files in the GitHub browser editor. For more information, see Editing files in your repository.
While this option does not configure a development environment for you, it will allow you to make changes to your source code as needed while you wait for the service disruption to resolve.
If your repository has a
devcontainer.json, consider using the Remote-Containers extension in Visual Studio Code to build and attach to a local development container for your repository. The setup time for this option will vary depending on your local specifications and the complexity of your dev container setup.
Note: Be sure your local setup meets the minimum requirements before attempting this option.
Note: This option is not yet available in Codespaces
You'll soon be able to specify the region when you create a codespace. When this option becomes available, we suggest you recreate your codespace in an unaffected region to continue working in the case of a regional outage. This new codespace will have all of the changes as of your last push to GitHub.
You can optimize recovery time in by configuring a
devcontainer.json in the project's repository, which allows you to define the tools, runtimes, frameworks, editor settings, extensions, and other configuration necessary to restore the development environment automatically. See Configuring Codespace for your project.