Есть ли способ получить vagrant
до l oop через каталоги и выполнить действия с файлами?
Я только что добавил эту строку в свой Vagrantfile.
config.ssh.private_key_path = ".vagrant/machines/demo#{i}/virtualbox/private_key', '~/.ssh/id_rsa"
Это другие биты того же Vagrantfile
(1..3).each do |i|
config.vm.define "demo#{i}" do |config|
config.vm.box = "bento/ubuntu-16.04"
config.vm.box_version = "202002.04.0"
config.vm.hostname = "demo#{i}"
config.vm.network :private_network, ip: "10.0.0.#{i + 10}"
config.vm.network :public_network, bridge: "en0: Wi-Fi (Wireless)"
config.ssh.forward_agent = true
config.vm.synced_folder '.', '/vagrant', disabled: true
config.vm.synced_folder "demo/shared", "/vagrant/shared"
config.vm.synced_folder "demo/dual", "/vagrant/dual"
config.ssh.private_key_path = ".vagrant/machines/demo#{i}/virtualbox/private_key, ~/.ssh/id_rsa"
config.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--cpuexecutioncap", "50"]
#vb.gui = true
vb.memory = "2096"
vb.cpus = "2"
end
end
end
end
Но при выполнении vagrant reload
ошибок с * `private_key_path` file must exist: .vagrant/machines/demo1/virtualbox/private_key', '~/.ssh/id_rsa
Что интересно, поскольку путь и файл определенно существуют.
pwd ; ls -R
/Users/xxx/.vagrant/machines
demo1 demo2 demo3
./demo1/virtualbox:
action_provision action_set_name box_meta creator_uid private_key id synced_folders
./demo2/virtualbox:
action_provision action_set_name box_meta creator_uid private_key id synced_folders
./demo3/virtualbox:
action_provision action_set_name box_meta creator_uid private_key id synced_folders
Я ожидаю, что vagrant просто проведет l oop через каждый каталог и прочитает файлы
Есть ли способ заставить vagrant сделать это?