Jim is correct. You typically would want to run the command from the root with the full path e.g. ./home/vagrant/pep_code/build/ninja (if ninja is a script).
If ninja is an app, you would do something like ninja <full path to file> e.g. ninja /home/vagrant/pep_code/build/<build_file> On Thursday, June 29, 2023 at 11:06:20 AM UTC-4 Jim McGinness wrote: > Each shell provisioning line runs as its own process. Directory changes do > not persist from one line to the next. You will need to gather your > individual lines into an actual script to get the result you want. For more > info, see > > https://developer.hashicorp.com/vagrant/docs/provisioning/shell > > -- jmcg > > On Thu, Jun 29, 2023 at 9:51 AM Giacomo Tommaso Petrucci < > [email protected]> wrote: > >> Greetings, >> >> I wrote the following Vagrantfile: >> >> Vagrant.configure("2") do |config| >> config.vm.box = "ubuntu/jammy64" >> config.vm.synced_folder "pep_code", "/home/vagrant/pep_code" >> >> # Update and install dependencies >> config.vm.provision "shell", inline: "echo Updating..." >> config.vm.provision "shell", inline: "sudo apt-get update && sudo >> apt-get -y upgrade" >> config.vm.provision "shell", inline: "sudo apt-get -y install clang >> ninja-build golang golang-goprotobuf-dev ccache distcc git cmake valgrind >> libboost-all-dev zlib1g-dev libbz2-dev libsqlite3-dev libcurl4-openssl-dev >> curl libpam0g-dev libssl-dev libreadline-dev patch vim flex qtbase5-dev >> qtdeclarative5-dev qttools5-dev qttools5-dev-tools libunwind-dev libc6-dev >> libc6-dev-i386 software-properties-common gcc-multilib" >> config.vm.provision "file", source: "pep_code", destination: >> "/home/vagrant/pep_code" >> config.vm.provision "shell", inline: "cd /home/vagrant/pep_code" >> config.vm.provision "shell", inline: "git init" >> config.vm.provision "shell", inline: "git config --global user.name >> \"Giacomo\"" >> config.vm.provision "shell", inline: "git config --global user.email >> \"[redacted]\"" >> config.vm.provision "shell", inline: "git add * && git commit -m >> \"fix\"" >> config.vm.provision "shell", inline: "mkdir build && cd build" >> config.vm.provision "shell", inline: "CC=clang CXX=clang++ cmake >> -DWITH_CASTOR=OFF .." >> config.vm.provision "shell", inline: "ninja" >> end >> >> It fails while provisioning with the following message: >> >> default: CMake Error: The source directory "/home" does not appear to >> contain CMakeLists.txt. >> default: Specify --help for usage, or press the help button on the >> CMake GUI. >> The SSH command responded with a non-zero exit status. Vagrant >> assumes that this means the command failed. The output for this command >> should be in the log above. Please read the output to determine what >> went wrong. >> >> >> I was expecting the lines >> >> config.vm.provision "shell", inline: "cd /home/vagrant/pep_code" >> >> and >> >> config.vm.provision "shell", inline: "mkdir build && cd build" >> >> to change the working directory of the provisioning process, but this >> doesn't seem the case. Docker has an instruction for this, WORKDIR. Does >> Vagrant have something similar? A quick Google search didn't turn up >> anything. >> Thank you for your help, >> >> Giacomo Tommaso Petrucci >> >> -- >> This mailing list is governed under the HashiCorp Community Guidelines - >> https://www.hashicorp.com/community-guidelines.html. Behavior in >> violation of those guidelines may result in your removal from this mailing >> list. >> >> GitHub Issues: https://github.com/hashicorp/vagrant/issues >> Discuss: https://discuss.hashicorp.com/c/vagrant/24 >> --- >> You received this message because you are subscribed to the Google Groups >> "Vagrant" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/vagrant-up/5ab0c5fe-f707-474a-9e3a-4720f31f331dn%40googlegroups.com >> >> <https://groups.google.com/d/msgid/vagrant-up/5ab0c5fe-f707-474a-9e3a-4720f31f331dn%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- This mailing list is governed under the HashiCorp Community Guidelines - https://www.hashicorp.com/community-guidelines.html. Behavior in violation of those guidelines may result in your removal from this mailing list. GitHub Issues: https://github.com/hashicorp/vagrant/issues Discuss: https://discuss.hashicorp.com/c/vagrant/24 --- You received this message because you are subscribed to the Google Groups "Vagrant" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/vagrant-up/3b269811-b8c5-4f28-9610-78eceb5a170dn%40googlegroups.com.
