Skip to content
Permalink
Browse files
GEODE-6054: Move Windows CI workers to Server 2016 and VS 2017 (#439)
* Build with Visual Studio 2017 runtime.
* Fix up VS2015 dependencies in 3rd-party OSS
* Add 2017 provisioner file
* Use default version of OpenSSH
* Added script to fix ssh-user permissions
* Swith from choco to vs bootstrapper
* Execute Repair-AuthorizedKeyPermission on boot
* Fixed path to OpenSSHUtils
* Wait for install to finish, before exit
* Merging init-ssh and install-ssh to avoid permission issues
* Point to proper vcvarsall.bat location
* added windows 10 sdk to package ids
* Mark ThinClientPoolTestsN as FLAKY
* Up SSD size for build-windows AMI, to agree with new base image
* GEODE-6054: Run EC2Launch script at end of packer scripts, add cleanup script where missing
* installing .NET 3.5 for nunit
* Add component IDs for VisualStudio2017 install
* Use two part install of visual studio
* Switch to direct aka download of vs bootstrapper
* GEODE-6054: Replace EC2Config with EC2Launch in base AMI step
* Refactor initialization process
* add 60s delay before install-dependencies

Co-authored-by: Ivan Godwin <igodwin@pivotal.io>
Co-authored-by: Mike Martell <mmartell@pivotal.io>
Co-authored-by: Ernie Burghardt <eburghardt@pivotal.io>
Co-authored-by: Jake Barrett <jbarrett@pivotal.io>
Co-authored-by: Matt Reddington <mreddington@pivotal.io>
  • Loading branch information
5 people authored and pdxcodemonkey committed Jan 28, 2019
1 parent 7dae2c1 commit 587abebf0d450b92000d276c7e7cbb91ccf20513
Show file tree
Hide file tree
Showing 22 changed files with 150 additions and 155 deletions.
@@ -1,5 +1,6 @@
/build-*/

/cmake-build-*/
/build/
/.settings/
/.cproject
@@ -15,8 +15,6 @@ rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
rem See the License for the specific language governing permissions and
rem limitations under the License.

set vs=Microsoft Visual Studio 14.0

call "c:\Program Files (x86)\%vs%\VC\vcvarsall.bat" %1

call "c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" %1
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build
echo Environment setup for %vs% %1.
@@ -94,6 +94,7 @@ endforeach()

# Label any flaky tests here
set_property(TEST ThinClientCqStatusTestTwoServers PROPERTY LABELS FLAKY)
set_property(TEST ThinClientPoolTestsN PROPERTY LABELS FLAKY)
set_property(TEST ThinClientQueryTestsN PROPERTY LABELS FLAKY)

# Label any tests that always fail here
@@ -15,9 +15,6 @@
* limitations under the License.
*/




#include "Execution.hpp"
#include "begin_native.hpp"
#include <geode/Execution.hpp>
@@ -49,7 +46,8 @@ namespace Apache

for each(TFilter item in routingObj)
{
rsptr->push_back(Serializable::GetUnmanagedValueGeneric<TFilter>( item ));
auto v = Serializable::GetUnmanagedValueGeneric<TFilter>(item);
rsptr->push_back(v);
}

try
@@ -104,7 +102,6 @@ namespace Apache
}
_GF_MG_EXCEPTION_CATCH_ALL2/* due to auto replace */
}

generic<class TResult>
IResultCollector<TResult>^ Execution<TResult>::Execute(String^ func, TimeSpan timeout)
{
@@ -44,7 +44,7 @@ namespace Apache
generic<class TKey, class TValue>
TValue LocalRegion<TKey, TValue>::Get(TKey key, Object^ callbackArg)
{
std::shared_ptr<native::CacheableKey> keyptr = Serializable::GetUnmanagedValueGeneric<TKey>( key );
auto keyptr = Serializable::GetUnmanagedValueGeneric<TKey>( key );
auto nativeptr= this->getRegionEntryValue(keyptr);
if (nativeptr == nullptr)
{
@@ -812,7 +812,8 @@ namespace Apache

try
{
return m_nativeptr->get()->containsValueForKey(Serializable::GetUnmanagedValueGeneric<TKey>(key));
auto v = Serializable::GetUnmanagedValueGeneric<TKey>(key);
return m_nativeptr->get()->containsValueForKey(v);
}
finally
{
@@ -185,7 +185,7 @@ namespace Apache
System::Collections::Generic::IEnumerator<KeyValuePair<TKey, TValue>>^
Region<TKey, TValue>::GetEnumerator()
{
std::vector<std::shared_ptr<native::RegionEntry>> vc;
std::vector<std::shared_ptr<native::RegionEntry>> vc;

_GF_MG_EXCEPTION_TRY2/* due to auto replace */

@@ -216,7 +216,7 @@ namespace Apache
System::Collections::IEnumerator^
Region<TKey, TValue>::GetEnumeratorOld()
{
std::vector<std::shared_ptr<native::RegionEntry>> vc;
std::vector<std::shared_ptr<native::RegionEntry>> vc;

_GF_MG_EXCEPTION_TRY2/* due to auto replace */

@@ -299,7 +299,7 @@ namespace Apache
{
_GF_MG_EXCEPTION_TRY2/* due to auto replace */

std::vector<std::shared_ptr<native::CacheableKey>> vc;
std::vector<std::shared_ptr<native::CacheableKey>> vc;
try
{
vc = m_nativeptr->get()->serverKeys();
@@ -325,7 +325,7 @@ namespace Apache
{
_GF_MG_EXCEPTION_TRY2/* due to auto replace */

std::vector<std::shared_ptr<native::Cacheable>> vc;
std::vector<std::shared_ptr<native::Cacheable>> vc;
try
{
vc = m_nativeptr->get()->values();
@@ -656,8 +656,8 @@ namespace Apache

for each(TKey item in keys)
{
vecKeys.push_back(
Serializable::GetUnmanagedValueGeneric<TKey>(item));
auto v = Serializable::GetUnmanagedValueGeneric<TKey>(item);
vecKeys.push_back(v);
}

native::HashMapOfCacheable native_value;
@@ -694,12 +694,12 @@ namespace Apache
if (keys != nullptr) {
_GF_MG_EXCEPTION_TRY2/* due to auto replace */

std::vector<std::shared_ptr<native::CacheableKey>> vecKeys;
std::vector<std::shared_ptr<native::CacheableKey>> vecKeys;

for each(TKey item in keys)
{
vecKeys.push_back(
Serializable::GetUnmanagedValueGeneric<TKey>(item));
auto v = Serializable::GetUnmanagedValueGeneric<TKey>(item);
vecKeys.push_back(v);
}

std::shared_ptr<native::HashMapOfCacheable> valuesPtr;
@@ -748,9 +748,12 @@ namespace Apache
{
_GF_MG_EXCEPTION_TRY2/* due to auto replace */

std::vector<std::shared_ptr<native::CacheableKey>> vecKeys;
for each(TKey item in keys)
vecKeys.push_back(Serializable::GetUnmanagedValueGeneric<TKey>(item));
std::vector<std::shared_ptr<native::CacheableKey>> vecKeys;
for each(TKey item in keys)
{
auto v = Serializable::GetUnmanagedValueGeneric<TKey>(item);
vecKeys.push_back(v);
}

std::shared_ptr<native::Serializable> callbackptr = Serializable::GetUnmanagedValueGeneric<Object^>(callbackArg);

@@ -954,7 +957,7 @@ namespace Apache
{
_GF_MG_EXCEPTION_TRY2/* due to auto replace */

std::vector<std::shared_ptr<native::RegionEntry>> vc;
std::vector<std::shared_ptr<native::RegionEntry>> vc;
try
{
vc = m_nativeptr->get()->entries(recursive);
@@ -1054,7 +1057,7 @@ namespace Apache

_GF_MG_EXCEPTION_TRY2/* due to auto replace */

std::vector<std::shared_ptr<native::RegionEntry>> vc;
std::vector<std::shared_ptr<native::RegionEntry>> vc;
try
{
vc = m_nativeptr->get()->entries(false);
@@ -1120,7 +1123,8 @@ namespace Apache

for each(TKey item in keys)
{
vecKeys.push_back(Serializable::GetUnmanagedValueGeneric<TKey>(item));
auto v = Serializable::GetUnmanagedValueGeneric<TKey>(item);
vecKeys.push_back(v);
}
try
{
@@ -1146,8 +1150,8 @@ namespace Apache

for each(TKey item in keys)
{
vecKeys.push_back(
Serializable::GetUnmanagedValueGeneric<TKey>(item));
auto v = Serializable::GetUnmanagedValueGeneric<TKey>(item);
vecKeys.push_back(v);
}

try
@@ -1206,7 +1210,7 @@ namespace Apache
{
_GF_MG_EXCEPTION_TRY2/* due to auto replace */

std::vector<std::shared_ptr<native::CacheableKey>> vc;
std::vector<std::shared_ptr<native::CacheableKey>> vc;
try
{
vc = m_nativeptr->get()->getInterestList();
@@ -1233,7 +1237,7 @@ namespace Apache
{
_GF_MG_EXCEPTION_TRY2/* due to auto replace */

std::vector<std::shared_ptr<native::CacheableString>> vc;
std::vector<std::shared_ptr<native::CacheableString>> vc;
try
{
vc = m_nativeptr->get()->getInterestListRegex();
@@ -39,7 +39,7 @@ endif()
if (${WIN32})
set ( _BOOTSTRAP_COMMAND .\\bootstrap.bat )
set ( _B2_COMMAND .\\b2 )
set ( _B2_FLAGS ${_B2_FLAGS} toolset=msvc-14.0 )
set ( _B2_FLAGS ${_B2_FLAGS} toolset=msvc-14.1 )
else()
set ( _BOOTSTRAP_COMMAND ./bootstrap.sh )
set ( _B2_COMMAND ./b2 )
@@ -31,6 +31,10 @@ ExternalProject_Add( ${PROJECT_NAME}-extern

ExternalProject_Get_Property( ${PROJECT_NAME}-extern INSTALL_DIR )

if(WIN32)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64 /D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING")
endif()

include(GNUInstallDirs)

function(ADD_GTEST_LIBRARY)
@@ -30,59 +30,53 @@
{
"device_name":"/dev/sda1",
"delete_on_termination":true,
"volume_size":60
"volume_size":100
}
]
}
],
"provisioners":[
"provisioners": [
{
"pause_before":"30s",
"type":"powershell",
"inline":[
"Install-WindowsFeature -name NET-Framework-Core"
]
},
{
"type":"powershell",
"scripts":[
"pause_before":"60s",
"type": "powershell",
"scripts": [
"windows/install-dependencies.ps1"
]
},
{
"type":"file",
"source":"{{user `gemfire_archive`}}",
"destination":"gemfire.tar.gz"
"type": "file",
"source": "{{user `gemfire_archive`}}",
"destination": "gemfire.tar.gz"
},
{
"type":"powershell",
"scripts":[
"type": "powershell",
"scripts": [
"windows/install-gemfire.ps1"
]
},
{
"type":"powershell",
"scripts":[
"type": "powershell",
"scripts": [
"windows/add-user-build.ps1"
]
},
{
"type":"file",
"source":"windows/init-user-build.ps1",
"destination":"C:/Users/build/init-user-build.ps1"
"type": "file",
"source": "windows/init-user-build.ps1",
"destination": "C:/Users/build/init-user-build.ps1"
},
{
"type":"powershell",
"scripts":[
"type": "powershell",
"scripts": [
"windows/cleanup.ps1"
]
},
{
"type":"powershell",
"scripts":[
"windows/setup-ec2config.ps1"
"type": "powershell",
"scripts": [
"windows/setup-ec2launch.ps1"
],
"only":[
"only": [
"amazon-ebs"
]
}
@@ -3,7 +3,7 @@
"region":"us-west-2",
"source_ami":"",
"source_image_name":"X.vmx",
"image_name":"dev-windows-2012-r2"
"image_name":"dev-windows-2016"
},
"builders":[
{
@@ -3,7 +3,7 @@
"region":"us-west-2",
"source_ami":"",
"source_image_name":"X.vmx",
"image_name":"test-windows-2012-r2"
"image_name":"test-windows-2016"
},
"builders":[
{
@@ -3,7 +3,7 @@
"region":"us-west-2",
"source_ami":"",
"source_image_name":"X.vmx",
"image_name":"test-windows-2012"
"image_name":"test-windows-2016"
},
"builders":[
{
@@ -3,7 +3,7 @@
"region":"us-west-2",
"source_ami":"",
"source_image_name":"X.vmx",
"image_name":"windows-2012-r2-base"
"image_name":"windows-2016-base"
},
"builders":[
{
@@ -33,28 +33,16 @@
"source":"windows/Packer.psm1",
"destination":"Documents/WindowsPowerShell/Modules/Packer/Packer.psm1"
},
{
"type":"powershell",
"scripts":[
"windows/install-windows-8.1-2012-r2-wmf-5.ps1"
]
},
{
"type":"powershell",
"scripts":[
"windows/install-chocolatey.ps1"
]
},
{
"type":"powershell",
"scripts":[
"windows/install-doxygen.ps1"
]
},
{
"type":"file",
"source":"windows/init-ssh.ps1",
"destination":"$Env:ProgramFiles/Amazon/Ec2ConfigService/Scripts/init-ssh.ps1"
"destination":"$Env:ProgramData/Amazon/EC2-Windows/Launch/Scripts/init-ssh.ps1"
},
{
"type":"powershell",
@@ -71,7 +59,7 @@
{
"type":"powershell",
"scripts":[
"windows/setup-ec2config.ps1"
"windows/setup-ec2launch.ps1"
],
"only":[
"amazon-ebs"

0 comments on commit 587abeb

Please sign in to comment.