https://raw.github.com/edx/configuration/master/vagrant/release/devstack/Vagrantfile
when I try to do vagrant up, I get Bringing machine 'default' up with 'virtualbox' provider...
[default] Importing base box 'focaccia-devstack'...
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.
Command: ["import", "C:/Users/Ophir/.vagrant.d/boxes/focaccia-devstack/virtualbox/box.ovf", "--vsys", "0", "--vmname
", "devstack_default_1391112633_1391946834728_88780", "--vsys", "0", "--unit", "10", "--disk", "C:\\Users\\Ophir\\Vi
rtualBox VMs\\devstack_default_1391112633\\box-disk1.vmdk"]
Stderr: 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Interpreting C:\Users\Ophir\.vagrant.d\boxes\focaccia-devstack\virtualbox\box.ovf...
OK.
0%...10%...20%...30%...
Progress state: VBOX_E_FILE_ERROR
VBoxManage.exe: error: Appliance import failed
VBoxManage.exe: error: Could not create the clone medium 'C:\Users\Ido Ophir\VirtualBox VMs\devstack_default_1391112633\
box-disk1.vmdk'.
VBoxManage.exe: error: VMDK: Compressed image is corrupted 'C:\Users\Ido Ophir\.vagrant.d\boxes\focaccia-devstack\virtua
lbox\box-disk1.vmdk' (VERR_ZIP_CORRUPTED)
VBoxManage.exe: error: Details: code VBOX_E_FILE_ERROR (0x80bb0004), component Appliance, interface IAppliance
VBoxManage.exe: error: Context: "int __cdecl handleImportAppliance(struct HandlerArg *)" at line 779 of file VBoxManageA
ppliance.cpp
>
> Thanks, for this link however I still can not make it work.
>
> I had some error messages and I installed the latest versions of nodejs and npm to overcome those errors.
> I then came back to this post to check again and I worked through the steps provided in the link but I am still with the same error.
>
> The current status for the devstack is
> 1) The VM is up
> 2) I can connect with ssh.
> 3) I can't connect on other ports (e.g 4567), nor can't I see the studio or the main edx screen as I see in the fullstack
I will assume that you know the fullstack runs the servers as services automatically, and - per workflow section description in wiki - devstack does not: you must use some method to start a development server, such as
rake devstack[lms]
> 4) I tried to do vagrant provision and I get
I'm not sure what is wrong here, but something does not look correct.
For one thing, for devstack you should not have needed to install anything manually.
I suggest you consider starting over:
vagrant destroy
vagrant up
Good luck, and let us know how it goes.
Best regards,
- Yarko
בתאריך יום חמישי, 20 בפברואר 2014 07:22:14 UTC+2, מאת Yarko Tymciurak:
Compiling /edx/app/edxapp/edx-platform/scripts/release.py ...
Compiling /edx/app/edxapp/edx-platform/scripts/run_watch_data.py ...
Compiling /edx/app/edxapp/edx-platform/scripts/runone.py ...
Compiling /edx/app/edxapp/edx-platform/setup.py ...
Listing /edx/app/edxapp/edx-platform/test_root ...
Listing /edx/app/edxapp/edx-platform/test_root/data ...
Listing /edx/app/edxapp/edx-platform/test_root/data/video ...
Listing /edx/app/edxapp/edx-platform/test_root/db ...
Listing /edx/app/edxapp/edx-platform/test_root/log ...
Listing /edx/app/edxapp/edx-platform/test_root/uploads ...
Listing /edx/app/edxapp/edx-platform/ws_migrations ...FATAL: all hosts have already failed -- aborting
PLAY RECAP ********************************************************************
to retry, use: --limit @/root/vagrant-devstack.retry
localhost : ok=24 changed=14 unreachable=0 failed=1
Stderr from the command:
stdin: is not a tty
If there are network delays or timeouts, this can happen.
Simply retry.
If 'vagrant status' shows running, then try 'vagrant provision', otherwise I believe 'vagrant up --provision' should do it.
To type the commands, go to the root edx-platform
folder and enter:
# You need to run this from cygwin, not the Windows command-line (see above)
git rm --cached -r . && git reset --hard
git config --global alias.add-symlink '!__git_add_symlink(){ dst=$(echo "$2")/../$(echo "$1"); if [ -e "$dst" ]; then hash=$(echo "$1" | git hash-object -w --stdin); git update-index --add --cacheinfo 120000 "$hash" "$2"; git checkout -- "$2"; else echo "ERROR: Target $dst does not exist!"; echo " Not creating invalid symlink."; fi; }; __git_add_symlink "$1" "$2"'
git config --global alias.rm-symlink '!__git_rm_symlink(){ git checkout -- "$1"; link=$(echo "$1"); POS=$'\''/'\''; DOS=$'\''\\\\'\''; doslink=${link//$POS/$DOS}; dest=$(dirname "$link")/$(cat "$link"); dosdest=${dest//$POS/$DOS}; if [ -f "$dest" ]; then rm -f "$link"; cmd //C mklink //H "$doslink" "$dosdest"; elif [ -d "$dest" ]; then rm -f "$link"; cmd //C mklink //J "$doslink" "$dosdest"; else echo "ERROR: Something went wrong when processing $1 . . ."; echo " $dest may not actually exist as a valid target."; fi; }; __git_rm_symlink "$1"'
git config --global alias.rm-symlinks '!__git_rm_symlinks(){ for symlink in `git ls-files -s | grep -E "^120000" | cut -f2`; do git rm-symlink "$symlink"; git update-index --assume-unchanged "$symlink"; done; }; __git_rm_symlinks'
git config --global alias.checkout-symlinks '!__git_checkout_symlinks(){ POS=$'\''/'\''; DOS=$'\''\\\\'\''; for symlink in `git ls-files -s | grep -E "^120000" | cut -f2`; do git update-index --no-assume-unchanged "$symlink"; if [ -d "$symlink" ]; then dossymlink=${symlink//$POS/$DOS}; cmd //C rmdir //S //Q "$dossymlink"; fi; git checkout -- "$symlink"; echo "Restored git symlink $symlink <<===>> `cat $symlink`"; done; }; __git_checkout_symlinks'
git rm-symlinks
after the last command (
git rm-symlinks
) the prompt changed to windows prompt. (??)
$ git rm-symlinks
cat: cms/static/coffee/fixtures: Is a directory
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\Ophir\Documents\edxnew\devstack\edx-platform>
3) I tried vagrant up
...
TASK: [edxapp | writing supervisor script] ***********************************
failed: [localhost] => (item=lms) => {"failed": true, "item": "lms"}
msg: Destination directory /edx/app/supervisor/conf.available.d does not exist
failed: [localhost] => (item=cms) => {"failed": true, "item": "cms"}
msg: Destination directory /edx/app/supervisor/conf.available.d does not exist
FATAL: all hosts have already failed -- aborting
PLAY RECAP ********************************************************************
to retry, use: --limit @/root/vagrant-devstack.retry
localhost : ok=30 changed=20 unreachable=0 failed=1
Stderr from the command:
stdin: is not a tty
4) ok, I checked status - running so I tried vagrant provision
...
TASK: [edxapp | Install edx-platform npm dependencies] ************************
failed: [localhost] => {"changed": true, "cmd": "npm install ", "delta": "0:00:01.502748", "end": "2014-03-23 07:32:17.0
46578", "item": "", "rc": 1, "start": "2014-03-23 07:32:15.543830"}
stderr: npm http GET http://registry.npmjs.org/coffee-script
npm http 304 http://registry.npmjs.org/coffee-script
npm ERR! error installing coffee...@1.6.1
npm ERR! Error: ENOENT, no such file or directory '/edx/app/edxapp/edx-platform/node_modules/coffee-script/bin/cake'
npm ERR! You may report this log at:
npm ERR! <http://bugs.debian.org/npm>
npm ERR! or use
npm ERR! reportbug --attach /edx/app/edxapp/edx-platform/npm-debug.log npm
npm ERR!
npm ERR! System Linux 3.2.0-23-generic
npm ERR! command "node" "/usr/bin/npm" "install"
npm ERR! cwd /edx/app/edxapp/edx-platform
npm ERR! node -v v0.6.12
npm ERR! npm -v 1.1.4
npm ERR! path /edx/app/edxapp/edx-platform/node_modules/coffee-script/bin/cake
npm ERR! code ENOENT
npm ERR! message ENOENT, no such file or directory '/edx/app/edxapp/edx-platform/node_modules/coffee-script/bin/cake'
npm ERR! errno {}
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /edx/app/edxapp/edx-platform/npm-debug.log
npm not ok
FATAL: all hosts have already failed -- aborting
PLAY RECAP ********************************************************************
to retry, use: --limit @/root/vagrant-devstack.retry
localhost : ok=17 changed=6 unreachable=0 failed=1
Stderr from the command:
stdin: is not a tty
5) ohoho, this is the exact error that I had (on a different host computer), before I manually installed in the guest the latest versions of npm nodejs and coffe-script (1.6.3).
You actually advised me not to install manually, so I am back to square zero. :-(
6) So I tried again the
dealing-with-line-endings-and-symlinks-under-windows
7) and again vagrant provision
TASK: [edxapp | writing supervisor script] ***********************************
failed: [localhost] => (item=lms) => {"failed": true, "item": "lms"}
msg: Destination directory /edx/app/supervisor/conf.available.d does not exist
failed: [localhost] => (item=cms) => {"failed": true, "item": "cms"}
msg: Destination directory /edx/app/supervisor/conf.available.d does not exist
FATAL: all hosts have already failed -- aborting
PLAY RECAP ********************************************************************
to retry, use: --limit @/root/vagrant-devstack.retry
localhost : ok=27 changed=12 unreachable=0 failed=1
Stderr from the command:
stdin: is not a tty
8) again vagrant provision (without dealing with the symlinks) and got the npm ERR! error installing coffee...@1.6.1, retried and got the same result as
step 7
Any ideas?
Anyway I took the other advise in the
dealing-with-line-endings-and-symlinks-under-windows and installed mitxvm-edx-platform-02sep13a.box
and it is working indeed.
I will start playing with MIT version till I will manage to set the edx version.
Thanks,
Ophir
I got rid of the coffee-script error that I showed you earlier https://www.dropbox.com/s/o1xftmdefgmvxch/2014-05-30_8-57-40%20-%20devstack%20%28Windows%2064%20errror%29.jpg by not executing the https://github.com/edx/configuration/wiki/Vagrant-troubleshooting#dealing-with-line-endings-and-symlinks-under-windows in the cygwin terminal. I used the git version in SourceTree instead and that actually created the Junctions and Hardlinks for Windows symlinks FYI.
TEMPORARY FIX: You may get an error in provisioning: The following required packages can not be built: freetype
. To fix this:
vagrant ssh
sudo apt-get install libfreetype6-dev
exit
vagrant reload --provision