VS: Allow CMAKE_GENERATOR_INSTANCE to specify portable instance

Previously the `CMAKE_GENERATOR_INSTANCE` value was used only to filter
the instances reported by the Visual Studio Installer tool.  If the
specified install location is not known to the VS Installer, try to
collect information about the instance directly from its files on disk.

Fixes: #21639
Issue: #22197
23 jobs for !6651 with vs-instance in 33 minutes and 10 seconds (queued for 2 seconds)
detached
Status Name Job ID Coverage
  Build
manual build:centos6-x86_64 #6270147
cmake build docker linux manual
manual build:fedora34-ninja #6270148
cmake build docker linux linux-3.17 manual
manual build:macos-x86_64-makefiles #6270150
cmake macos shell xcode-13.0 nonconcurrent manual
manual build:macos-x86_64-ninja #6270149
cmake macos shell xcode-13.0 nonconcurrent manual
passed build:windows-vs2019-x64-ninja #6270151
cmake windows shell vs2019 msvc-19.29-16.11 nonconcurrent manual

00:11:58

passed lint:codespell #6270143
cmake build docker linux

00:00:22

passed lint:debian10-iwyu #6270144
cmake build docker linux

00:01:38

passed lint:fedora34-sphinx #6270146
cmake build docker linux linux-3.17

00:08:05

passed lint:fedora34-tidy #6270145
cmake build docker linux linux-3.17

00:07:33

 
  Test
created test:fedora34-ninja #6270152
cmake docker linux linux-3.17 x11
created test:macos-x86_64-makefiles #6270154
cmake macos shell xcode-13.0 nonconcurrent
created test:macos-x86_64-ninja #6270153
cmake macos shell xcode-13.0 nonconcurrent
failed test:windows-vs2019-x64-ninja #6270155
cmake windows shell vs2019 msvc-19.29-16.11 nonconcurrent

00:13:04

 
  Test Ext
created test:cuda10.2-nvidia #6270158
cmake cuda-rt docker linux
created test:debian10-ninja #6270156
cmake build docker linux linux-3.17
created test:fedora34-makefiles #6270157
cmake build docker linux linux-3.17
created test:fedora34-ninja-multi #6270159
cmake build docker linux linux-3.17
created test:macos-x86_64-xcode #6270160
cmake macos shell xcode-13.0 concurrent
skipped test:windows-vs2019-x64 #6270161
cmake windows shell vs2019 msvc-19.29-16.11 concurrent
 
  External
passed cdash

passed ghostflow-check-master

passed cdash

passed cdash

 
Name Stage Failure
failed
test:windows-vs2019-x64-ninja Test
GO version:   go1.16.2
Built: 2021-05-20T14:35:58+0000
OS/Arch: windows/amd64
Uploading artifacts...
Runtime platform
arch=amd64 os=windows pid=5964 revision=7f7a4bb0 version=13.11.0~beta.4.g6c211521
build/junit.xml: found 1 matching files and directories

Uploading artifacts as "junit" to coordinator... ok
id=6270155 responseStatus=201 Created token=LHXq6gjS
Cleaning up file based variables
ERROR: Job failed: exit status 1