The fixes we have in place include some time-consuming database migrations. During our dry run deployments, we found that virtually all requests to the database will time out while these migrations are running. We have decided to take the precaution of shutting the gallery down during these migrations to ensure the best and fastest possible deployment. We are sorry for the inconvenience this will cause.
The nuget.org website is expected to be down from 11pm-12am PDT tonight. During this time, all requests to browse, search, install, or update packages will fail. You will see errors in Visual Studio when you use the Online tab in the Manage NuGet Packages dialog.
This blog will be updated once the deployment is completed.
Many users have found Scott Hanselman’s tips on How to access NuGet when NuGet.org is down (or you’re on a plane) to be helpful.
During this downtime, we will be doing the following:
- Creating a pre-migration database backup
- Executing the database migrations against the database
- Performing a post-migration database backup
- Deploying changes to the gallery web application
- Verifying the successful deployment within a Staging instance of our Web Role
Once we have verified the successful staging deployment, we will swap the instances over to production. At that time service will resume.
If you’re curious about what is getting deployed, feel free to check out the commit history on the master branch in our GitHub repository at https://github.com/NuGet/NuGetGallery. The changes being deployed are from August 21st and 22nd.
Out of this situation comes a new feature request for the gallery: read-only mode. Ideally, deployments of this type could be handled by putting the gallery into a read-only mode and performing the deployment to a new web role with a copy of the database while the read-only gallery stays online. We will invest in setting up that model to be used in the future.