Make ADS An Optional Install Alongside SSMS
Starting with SSMS 18.7, Azure Data Studio is being automatically installed alongside SSMS with no option to not install it. ADS is still available as a standalone install, though.
I'd like a way to make the install optional for people who don't need any ADS functionality.
Particularly for admins putting SSMS on their SQL Server for whom additional unknown dependencies might not be tolerable to security teams, not having to remember to uninstall additional items every time they update SSMS would be helpful. Even with an automated deployment, it requires an installation and then multiple uninstaller runs.
On top of that, ADS is updated monthly, and SSMS has a less frequent release cadence. That leaves most people juggling two installers anyway, or only updating ADS when they update SSMS. That seems an odd choice, especially given the lack of reciprocal bundling.
From Apr 24, 2019 (https://cloudblogs.microsoft.com/sqlserver/2019/04/24/sql-server-management-studio-ssms-18-0-released-for-general-availability/):
Think of these two tools not as separate tools doing different things, but as one integrated tool. Each tool has different experiences built into it and can be launched from the other seamlessly.
From Oct 20,2020 (https://cloudblogs.microsoft.com/sqlserver/2020/10/20/sql-server-management-studio-18-7-now-generally-available/):
SQL Server Management Studio is a foundational tool for many working with Microsoft data solutions. First released in 2018, Azure Data Studio is a cross-platform and open source desktop environment for data professionals using the Azure Data family of on-premises and cloud data platform solutions. Architecturally, SQL Server Management Studio has long been combined with additional tools, including Profiler, Database Engine Tuning Advisor (DTA), and Database Mail. As Azure Data Studio continues to mature, the Microsoft data tools experience on Windows has become a combination of SSMS and Azure Data Studio. Beginning in the 18.7 release of SQL Server Management Studio, Azure Data Studio is installed alongside SSMS automatically. Users of SQL Server Management Studio will be able to benefit from the innovations in Azure Data Studio, whether their environments are cloud, on-premises, or hybrid.
The hero we need...
I finally stumbled upon the correct command line call:
Note that you STILL get the dialog that states that Azure Data Studio WILL be installed!!
Microsoft, please fix that. And also update the SSMS 18.8 notes to explicitly state how to not install ADS. Thanks in advance.
So in my attempt to get rid of SSMS 18.8's failed installation, I used the command line call the exe tells me to use to uninstall, namely:
SURPRISE!! It gives the attached dialog, and does INDEED proceed to yet another failed installation (as per my last post).
Late to the party, but this is utterly egregious!!!
I see now that there is an option in 18.8 to use a flag to prevent ADS installation:
At this time, the installation of Azure Data Studio can be skipped by launching the SSMS installer with the command line flag DoNotInstallAzureDataStudio=1.
What is not mentioned, is which of the numerous ways of sending a "flag" into an executable are to be used? Uncertain, I tried this:
To which I received a popup as attached. This lead me to assume I should use this for the installation to NOT install ADS:
Since I wasn't certain that would work, I followed along, and sure enough making a ton of disk writes as part of the SSMS installation here came ADS down my throat!! I cancelled and it rolled back without error.
Next I tried this:
FAIL, as I noticed this time the the initial installation dialog actually stated "Microsoft SQL Server management Studio with Azure Data Studio"
Then the installation errored out, before I could cancel it, with attached dialog. The log error was this:
5C80:03D8][2021-02-11T12:00:58]e000: BootstrapperEngineDataModel.OnError: Burn engine encountered error. PackageId: sql_ssms_x64, ErrorType: WindowsInstaller, ErrorCode: 1303, Data: 1303,D:\Program Files (x86)\SSMS18\Common7\IDE\SqlWorkbenchProjects, ErrorMessage: The installer has insufficient privileges to access this directory: D:\Program Files (x86)\SSMS18\Common7\IDE\SqlWorkbenchProjects. The installation cannot continue. Log on as administrator or contact your system administrator., UIHint: 5
[5C80:03D8][2021-02-11T12:00:58]i000: MainViewModel.AddFailedCondition: Error: SQL Server Management Studio: The installer has insufficient privileges to access this directory: D:\Program Files (x86)\SSMS18\Common7\IDE\SqlWorkbenchProjects. The installation cannot continue. Log on as administrator or contact your system administrator.
[5C80:03D8][2021-02-11T12:00:58]e000: MainViewModel.OnPackageError: setup failed for packageId: sql_ssms_x64, package: SQL Server Management Studio, errorCode: 1303, errorMessage: The installer has insufficient privileges to access this directory: D:\Program Files (x86)\SSMS18\Common7\IDE\SqlWorkbenchProjects. The installation cannot continue. Log on as administrator or contact your system administrator.
My original SSMS installation is now non-functional.
and everything played out the same as with single dash.
So now I get to somehow try to salvage an operational SSMS copy of my prior version, clean up the **** that is left from the apparently failed rollback of the ADS install, and I STILL have NO IDEA how to install SSMS WITHOUT ADS using the proffered command line flag.
Jake O'Neill commented
It shouldn't be installed in the first place unless the user asks for it. I know Microsoft are aggressively pushing their cloud based platform but removing the choice is a new low and the dismissive response above will only create hesitation and pushback against MS. The product should speak for itself, if it's great we'll install it, till then it's bloatware.
This is in a agreement with our sql team in London.
Jason Baginski commented
I have to agree to the terms and conditions of Azure Data Studio in order to install SQL Management Studio?
Greg Wojan commented
Just... Wow! I can't even... :( I just installed SSMS 18.7.1 on a new laptop that already had a user installation of Azure Data Studio present and the SSMS installer dropped a system install of Azure Data Studio! Not cool Microsoft! This is not cool at all!
What a terrible user experience! From the Start Menu only the user install is visible. From the command line the system install is first in the PATH. :( Not only that, the system install was added to both the user PATH and system PATH. I'm already having issues with really long PATH variables so this is TERRIBLE!
Please, I implore you, make ADS an optional install or better yet don't bundle it with SSMS. #MajorFAIL
This is a very bad idea to add more to the installation of SSMS
There is a legitimate reason to have it installed on some database servers for administrative purposes but as a general rule we try to limit installed software on servers to minimize patching needs. There have been issues where servers with ssms installed have needed to be patched because of security errata in the software needed for SSMS (XML Parser for instance) and adding ADS as nice as it is to the servers just opens up a new can of security related worms. Now we have typescript runtimes, automatically installed python runtimes and a whole new can of worms to monitor.
Please revisit this.
Joel Miller commented
Agreed. I have also had my organization stop all automated upgrades. We usually keep completely current within a few days of GA. Each piece of software is supposed to reviewed, approved, and deployed to everyone. Some people will want/need SSMS. Some will want/need ADS. Some users will have both. There are times where we need to install the newest SSMS because of a feature but we will NOT approve the newest version of ADS as there might be a bug or other issue (sometimes even on our side). These items should not be tied together. Either merge them completely or separate them. At least give us the option to select not to install ADS with a switch.
Hugo Kornelis commented
Is this response from a product manager for real? Are we back in the '90s of software companies shoving their favorite add-ons through their cutomer's tools?
I get that you want people to use the shiny new toy. This is not the way. This actually brings out the adolescent in me: it makes me even LESS likely to want to use ADS.
You want people to use ADS? Simple solution: make it better!
Kurt Moskal commented
This is a bad move. If I want Azure Data Studio I'll install Azure Data Studio. Please remove it or at least give option to not install it.
You can automate it by just runing the Uninstall quietly afterwards, stupid, but the only way to get it of the Server that has no internet connection anyway...
UninstallString "C:\Program Files\Azure Data Studio\unins000.exe"
QuietUninstallString "C:\Program Files\Azure Data Studio\unins000.exe" /SILENT
Cláudio Silva commented
Agreed. Please make it optional.
I would prefer to have "extra work" when I want do install ADS rather having an "extra extra work" for uninstalling it.
Cross platform is not a feature.
Database Diagrams, Integrated Debugger and other SSMS-proven functionality are
Bad way to enforce adoption of an inferior tool
Jason Baginski commented
Are we shooting for auto-installing browser toolbars with SSMS v19? If you want to pop up a notification while installing SSMS letting users know that ADS is an alternate option and give links to download it to see if it'll meet your needs. Great. No problem. People might not know about it(I didn't). Forcing it on users is a giant step backwards in all respects.
Sean Gallardy commented
I would also like the choice of choosing to install extra products or not, based on my needs and usage patterns. Bundling is fine if you give an option, as others have stated, so why not just give the option?
I can't view these as "one integrated tool" as the Docs clearly show they are used for two very different things and in real life they are used for two very different things. Maybe we could get a roadmap of where the tools are actually merged and we're back to one tool that doesn't require any extra security gotchas like python or running local webhosts?
Sean Decker commented
This is a on old MS respons of telling the customers what they need . You have ignored the compliance and security surface arguments. As others have said include it the installer but don't force the install. Please be less dismissive
Greg Wojan commented
Wow! This is just such a horrible idea! ☹️ Don't get me wrong, I really like some of the functionality of ADS but it should NEVER be bundled with SSMS. All y'all should know better than that...
Many companies run approved product lists and aren't as likely to approve ADS due to its extensibility. Not my justification...theirs. By enforcing this, I can see the solution being don't update SSMS!
Allan Hirt commented
This was a very misguided idea. It's more surface area to patch and may even prevent some organizations from upgrading to 18.7 or later. The installer should at a minimum allow you to choose which components you want - or do not want. This isn't about usage and being complimentary. I don't think anyone is arguing that.
I know Microsoft thinks this is a great idea, but when you work in corporate environments where build standards are strict, you basically just gave them the equivalent of the middle finger with no real opt out.
I applaud your intent but the execution was ill thought out.
18.7 should be pulled until there is at least an option in the installer to handle a normal scenario.