aboutsummaryrefslogtreecommitdiff
path: root/scripts/azure-pipelines/osx/configuration/Vagrantfile
diff options
context:
space:
mode:
authornicole mazzuca <mazzucan@outlook.com>2021-04-29 07:39:04 -0700
committerGitHub <noreply@github.com>2021-04-29 07:39:04 -0700
commite6cabdece52f3ffc21cf1101b2c72275cac9dbba (patch)
tree757887f241188668314ec51f62bfb2de6b2419a2 /scripts/azure-pipelines/osx/configuration/Vagrantfile
parent326eabc1917c45d24ee71044cf98b9d1b051cbc6 (diff)
downloadvcpkg-e6cabdece52f3ffc21cf1101b2c72275cac9dbba.tar.gz
vcpkg-e6cabdece52f3ffc21cf1101b2c72275cac9dbba.zip
[ci] Update macOS to 11 (#17376)
* start 2021-04-16 process Major new things: * update to macOS Big Sur (11.*) * switch from VirtualBox to Parallels due to ^ (and also ARM) Minor new things: * update from xcode CLT 12 to 12.4 This PR includes new stuff for creating the base box for parallels. Still to do: using the new box type. * update the vagrantfile stuff * link the CI to the new version * modify how macOS boxes are made the Vagrantfile for the final VM will only download the azure pipeline stuff this allows us to keep the versions of brew applications stable * fix cpus and memory * add vagrant plugins to installables * Skip cppgraphqlgen ICE. * [sdformat6] Remove unneeded include(FindBoost) which causes problems when the system cmake version doesn't match the one deployed by vcpkg. * switch to dmg for installing osxfuse/sshfs * Set cores to 11 (leaving 1 thread for host) Co-authored-by: Billy Robert ONeal III <bion@microsoft.com>
Diffstat (limited to 'scripts/azure-pipelines/osx/configuration/Vagrantfile')
-rw-r--r--scripts/azure-pipelines/osx/configuration/Vagrantfile118
1 files changed, 0 insertions, 118 deletions
diff --git a/scripts/azure-pipelines/osx/configuration/Vagrantfile b/scripts/azure-pipelines/osx/configuration/Vagrantfile
deleted file mode 100644
index 08c472fe6..000000000
--- a/scripts/azure-pipelines/osx/configuration/Vagrantfile
+++ /dev/null
@@ -1,118 +0,0 @@
-require 'json'
-
-require "erb"
-include ERB::Util
-
-configuration = JSON.parse(File.read("#{__dir__}/vagrant-configuration.json"))
-
-server = {
- :hostname => configuration['machine_name'],
- :box => configuration['box_name'],
- :box_version => configuration['box_version'],
- :disk_size => configuration['disk_size'],
- :ram => 12000,
- :cpu => 5
-}
-
-brew_formulas = [
- 'autoconf',
- 'automake',
- 'bison',
- 'gfortran',
- 'gperf',
- 'libtool',
- 'meson',
- 'mono',
- 'nasm',
- 'pkg-config',
- 'yasm' ]
-
-brew_cask_formulas = [
- 'powershell' ]
-
-azure_agent_url = 'https://vstsagentpackage.azureedge.net/agent/2.179.0/vsts-agent-osx-x64-2.179.0.tar.gz'
-devops_url = configuration['devops_url']
-agent_pool = configuration['agent_pool']
-pat = configuration['pat']
-
-Vagrant.configure('2') do |config|
- # give them extra time to boot up
- config.vm.boot_timeout = 600
-
- config.vm.box = server[:box]
- config.vm.box_version = server[:box_version]
- config.vm.hostname = server[:hostname]
- config.vm.synced_folder '.', '/vagrant', disabled: true
-
- diskname = "#{server[: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 * server[:disk_size]} --variant Fixed"
- end
-
- config.vm.provider 'virtualbox' do |vb|
- vb.memory = server[:ram]
- vb.cpus = server[:cpu]
- vb.customize ['modifyvm', :id, '--ioapic', 'on']
- vb.customize ['storageattach', :id,
- '--storagectl', 'SATA Controller',
- '--port', '1', '--device', '0', '--type', 'hdd',
- '--medium', "#{diskname}"
- ]
- end
-
- config.vm.provision 'shell',
- run: 'once',
- name: 'Format and mount the data filesystem',
- inline: 'diskutil partitionDisk /dev/disk0 1 GPT jhfs+ data 0',
- privileged: true
-
- config.vm.provision 'shell',
- run: 'once',
- name: 'Link the data filesystem to the home directory',
- inline: "ln -s /Volumes/data ~/Data",
- privileged: false
-
- config.vm.provision 'shell',
- run: 'once',
- name: 'Download azure agent',
- inline: "curl -s -o ~/Downloads/azure-agent.tar.gz #{azure_agent_url}",
- privileged: false
-
- config.vm.provision 'shell',
- run: 'once',
- name: 'Unpack azure agent',
- inline: 'mkdir myagent; cd myagent; tar xf ~/Downloads/azure-agent.tar.gz',
- privileged: false
-
- config.vm.provision 'shell',
- run: 'once',
- name: 'Install brew applications',
- inline: "brew install #{brew_formulas.join(' ')} && brew install --cask #{brew_cask_formulas.join(' ')}",
- privileged: false
-
- config.vm.provision 'shell',
- run: 'once',
- name: 'Add VM to azure agent pool',
- inline: "cd ~/myagent;\
- ./config.sh --unattended \
- --url #{devops_url} \
- --work ~/Data/work \
- --auth pat --token #{pat} \
- --pool #{agent_pool} \
- --agent `hostname` \
- --replace \
- --acceptTeeEula",
- privileged: false
-
- # Start listening for jobs
- config.vm.provision 'shell',
- run: 'always',
- name: 'Start running azure pipelines',
- inline: 'cd /Users/vagrant/myagent;\
- nohup ./run.sh&',
- privileged: false
-end