[vcpkg-ci] fix macos setup scripts (#12639)

* [vcpkg-ci] fix macos setup scripts

* the disk feature is still experimental

* fix Get-InstalledVirtualBoxExtensionPacks

* use new bash install script for brew

instead of old-style ruby
This commit is contained in:
nicole mazzuca 2020-07-31 11:52:24 -07:00 committed by GitHub
parent 683ec4724e
commit f0ae3efbb4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 28 additions and 9 deletions

View File

@ -25,7 +25,7 @@ and `Setup-VagrantMachines.ps1`, and make sure to push any changes!
Before anything else, one must download `brew` and `powershell`.
```sh
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
$ brew cask install powershell
```

View File

@ -19,7 +19,7 @@ The username for the archives share.
.PARAMETER ArchivesAccessKey
The access key for the archives share.
.PARAMETER ArchivesUri
.PARAMETER ArchivesUrn
The URN of the archives share; looks like `foo.windows.core.net`.
.PARAMETER ArchivesShare
@ -105,7 +105,7 @@ $configuration = @{
archives = @{
username = $ArchivesUsername;
access_key = $ArchivesAccessKey;
url = $ArchivesUri;
urn = $ArchivesUrn;
share = $ArchivesShare;
};
}

View File

@ -31,7 +31,7 @@ function Get-CommandExists
[String]$Name
)
$null -ne (Get-Command -Name $Command -ErrorAction SilentlyContinue)
$null -ne (Get-Command -Name $Name -ErrorAction SilentlyContinue)
}
<#
@ -124,6 +124,7 @@ function Get-InstalledVirtualBoxExtensionPacks
$currentString = ""
$lines | ForEach-Object {
$Line = $_
if ($Line[0] -eq ' ') {
$currentString += "`n$($Line.Trim())"
} else {

View File

@ -29,7 +29,7 @@ devops_url = 'https://dev.azure.com/vcpkg'
agent_pool = 'vcpkgAgentPool'
pat = configuration['pat']
archives = configuration['archives']
archives_url = "//#{archives['username']}:#{url_encode(archives['access_key'])}@#{archives['url']}/#{archives['share']}"
archives_url = "//#{archives['username']}:#{url_encode(archives['access_key'])}@#{archives['urn']}/#{archives['share']}"
Vagrant.configure('2') do |config|
# give them extra time to boot up
@ -42,7 +42,25 @@ Vagrant.configure('2') do |config|
node.vm.hostname = machine[:hostname]
node.vm.synced_folder '.', '/vagrant', disabled: true
node.vm.disk :disk, name: "#{machine[:hostname]}-data", size: "#{config['disk_size']}GB"
diskname = "#{machine[:hostname]}-data.vmdk"
# I don't like this, but as far as I can tell, it's the only way
# to do this. When vagrant finishes the `disk` feature, switch
# over to that -- Nicole Mazzuca
if (not File.exists? diskname) then
system "VBoxManage createmedium --filename #{diskname} --size #{1024 * 220}"
end
node.vm.provider 'virtualbox' do |vb|
vb.memory = machine[:ram]
vb.cpus = machine[:cpu]
vb.customize ['modifyvm', :id, '--ioapic', 'on']
vb.customize ['storageattach', :id,
'--storagectl', 'SATA Controller',
'--port', '1', '--device', '0', '--type', 'hdd',
'--medium', "#{diskname}"
]
end
node.vm.provision 'shell',
run: 'once',
@ -71,7 +89,7 @@ Vagrant.configure('2') do |config|
node.vm.provision 'shell',
run: 'once',
name: 'Install brew and xcode command line tools',
inline: '/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"',
inline: '/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"',
privileged: false
node.vm.provision 'shell',

View File

@ -34,13 +34,13 @@
"required": [
"username",
"access_key",
"url",
"urn",
"share"
],
"properties": {
"username": { "type": "string" },
"access_key": { "type": "string" },
"url": { "type": "string" },
"urn": { "type": "string" },
"share": { "type": "string" }
}
}