Git Product home page Git Product logo

vulcan's Introduction

Vulcan [DEPRECATED]

A build server in the cloud.

NOTE: The Vulcan build service is no longer maintained or supported, and it's no longer recommended for building binaries. Use heroku run instead.

Install

$ gem install vulcan

Usage

$ vulcan help
Tasks:
  vulcan build            # build a piece of software for the heroku cloud using COMMAND as a build command if no COMMAND is...
  vulcan create APP_NAME  # create a build server on Heroku
  vulcan help [TASK]      # Describe available tasks or one specific task
  vulcan update           # update the build server

$ vulcan help build
Usage:
  vulcan build

Options:
  -c, [--command=COMMAND]     # the command to run for compilation
  -n, [--name=NAME]           # the name of the library (defaults to the directory name)
  -o, [--output=OUTPUT]       # output build artifacts to this file
  -p, [--prefix=PREFIX]       # vulcan will look in this path for the compiled artifacts
  -s, [--source=SOURCE]       # the source directory to build from
  -d, [--deps=one two three]  # urls of vulcan compiled libraries to build with
  -v, [--verbose]             # show the full build output

build a piece of software for the heroku cloud using COMMAND as a build command
if no COMMAND is specified, a sensible default will be chosen for you

Examples

Create a Build Server

You must have a verified Heroku account with your credit card entered to create a build server. This is required to add the free Cloudant add-on.

$ vulcan create vulcan-david
Creating vulcan-david... done, stack is cedar
http://vulcan-david.herokuapp.com/ | [email protected]:vulcan-david.git
...

Build

$ vulcan build -s ~/Code/memcached -p /tmp/memcached -c "./autogen.sh && ./configure --prefix=/tmp/memcached && make install"
>> Packaging local directory
>> Uploading code for build
>> Building with: ./autogen.sh && ./configure --prefix=/tmp/memcached && make install
>> Downloading build artifacts to: /tmp/memcached.tgz

$ tar tvf /tmp/memcached.tgz
drwx------  0 u24714 24714       0 Sep 21 20:25 bin/
-rwxr-xr-x  0 u24714 24714  273082 Sep 21 20:25 bin/memcached
drwx------  0 u24714 24714       0 Sep 21 20:25 include/
drwx------  0 u24714 24714       0 Sep 21 20:25 include/memcached/
-rw-r--r--  0 u24714 24714   14855 Sep 21 20:25 include/memcached/protocol_binary.h
drwx------  0 u24714 24714       0 Sep 21 20:25 share/
drwx------  0 u24714 24714       0 Sep 21 20:25 share/man/
drwx------  0 u24714 24714       0 Sep 21 20:25 share/man/man1/
-rw-r--r--  0 u24714 24714    5304 Sep 21 20:25 share/man/man1/memcached.1

Keep the Build Server Updated

$ vulcan update
Initialized empty Git repository in /private/var/folders/rm/qksq9jk15vx0xcjxkqc8yg5w0000gn/T/d20110921-70016-1iksqwy/.git/
Counting objects: 176, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (156/156), done.
Writing objects: 100% (176/176), 326.86 KiB, done.
Total 176 (delta 5), reused 0 (delta 0)

-----> Heroku receiving push
-----> Node.js app detected
-----> Vendoring node 0.4.7
-----> Installing dependencies with npm 1.0.27

       Dependencies installed
-----> Discovering process types
       Procfile declares types -> web
-----> Compiled slug size is 5.5MB
-----> Launching... done, v5
       http://vulcan-david.herokuapp.com deployed to Heroku

To [email protected]:vulcan-david.git
 + 2e69a42...eddcb91 master -> master (forced update)

vulcan's People

Contributors

bergie avatar bobzoller avatar ddollar avatar fredngo avatar geemus avatar halorgium avatar hone avatar lpetre avatar mattmanning avatar ricaurte avatar schneems avatar svc-scm avatar thedrow avatar tomykaira avatar wuputah avatar zeke avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vulcan's Issues

Dependency Feature (--deps) doesn't work

First, see this comment I made on the original Pull request:
#16 (comment)

The only related output I see in verbose mode is this:
downloading https://s3.amazonaws.com/gisio-geoserver/tools/fuse-2.9.vulcan.tgz
I don't see anywhere that it might have extracted and/or installed this package; indeed, the source I'm trying to compile depends on this dependency installed and it can't find it:
configure: error: Package requirements (fuse >= 2.3 glib-2.0 gthread-2.0) were not met:

Any advice is appreciated.

Support for heroku 2x instances (double memory)

I'm currently having problems compiling php5.5 because of the 512mb memory limit. It's possible to set size of dyno with '-s --size'

Usage: heroku run COMMAND

 run an attached dyno

 -s, --size SIZE      # specify dyno size

Maybe a good idea to add this option. I would do it myself but I don't know Ruby.

Can't compile nano - "reason":"Document is missing attachment"

Hi, I'm trying to compile nano

I did this:

sudo gem install vulcan
gem update vulcan

curl -O http://www.nano-editor.org/dist/v2.2/nano-2.2.6.tar.gz
tar -xvzf nano-2.2.6.tar.gz

vulcan create compile-nano
vulcan update
vulcan build --verbose --source=nano-2.2.6 --command="./configure; make; make install"

I'm getting an error:

$ cat /tmp/nano-2.2.tgz 
{"error":"not_found","reason":"Document is missing attachment"}

What am I missing? Sorry, I'm nooby at this.

Thanks!

Here's the full output from the vulcan build command:

$ vulcan build --verbose --source=nano-2.2.6 --command="./configure; make; make install"
Packaging local directory... done
Uploading source package... done
Building with: ./configure; make; make install
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking whether ln -s works... yes
checking for strerror in -lcposix... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking for msgfmt... no
checking for gmsgfmt... :
checking for xgettext... no
checking for msgmerge... no
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking whether NLS is requested... yes
checking for GNU gettext in libc... yes
checking for ANSI C header files... (cached) yes
checking getopt.h usability... yes
checking getopt.h presence... yes
checking for getopt.h... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking regex.h usability... yes
checking regex.h presence... yes
checking for regex.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking wchar.h usability... yes
checking wchar.h presence... yes
checking for wchar.h... yes
checking wctype.h usability... yes
checking wctype.h presence... yes
checking for wctype.h... yes
checking stdarg.h usability... yes
checking stdarg.h presence... yes
checking for stdarg.h... yes
checking whether to enable UTF-8 support... auto
checking whether to use slang... no
checking for getdelim... yes
checking for getline... yes
checking for isblank... yes
checking for strcasecmp... yes
checking for strcasestr... yes
checking for strncasecmp... yes
checking for strnlen... yes
checking for vsnprintf... yes
checking for iswalnum... yes
checking for iswblank... yes
checking for iswpunct... yes
checking for iswspace... yes
checking for nl_langinfo... yes
checking for mblen... yes
checking for mbstowcs... yes
checking for mbtowc... yes
checking for wctomb... yes
checking for wcwidth... yes
checking return type of signal handlers... void
checking for vprintf... yes
checking for _doprnt... no
checking for getopt_long... yes
checking ncurses.h usability... yes
checking ncurses.h presence... yes
checking for ncurses.h... yes
checking for get_wch in -lncursesw... no
checking for initscr in -lncurses... yes
Using ncurses as the curses library
checking for use_default_colors in -lncurses... yes
configure: WARNING:
*** Insufficient UTF-8 support was detected in your curses and/or C
*** libraries.  If you want UTF-8 support, please verify that your slang
*** was built with UTF-8 support or your curses was built with wide
*** character support, and that your C library was built with wide
*** character support.
checking for GNU-style word boundary regex support... yes
checking whether _XOPEN_SOURCE_EXTENDED is needed... no
checking whether LINES and COLS can be redefined... yes
checking for HTML support in groff... ./configure: line 8323: groff: command not found
no
*** Will not generate HTML version of man pages  ***
*** Consider installing a newer version of groff with HTML support ***
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating doc/nanorc.sample
config.status: creating doc/man/Makefile
config.status: creating doc/man/fr/Makefile
config.status: creating doc/syntax/Makefile
config.status: creating doc/texinfo/Makefile
config.status: creating m4/Makefile
config.status: creating po/Makefile.in
config.status: WARNING:  'po/Makefile.in.in' seems to ignore the --datarootdir setting
config.status: creating src/Makefile
config.status: creating nano.spec
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing default-1 commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
make  all-recursive
make[1]: Entering directory `/tmp/d20130924-2-1qdt5z7/input'
Making all in doc
make[2]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc'
Making all in man
make[3]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/man'
make  all-recursive
make[4]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/man'
Making all in fr
make[5]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/man/fr'
make  all-am
make[6]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/man/fr'
make[6]: Nothing to be done for `all-am'.
make[6]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/man/fr'
make[5]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/man/fr'
make[5]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/man'
make[5]: Nothing to be done for `all-am'.
make[5]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/man'
make[4]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/man'
make[3]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/man'
Making all in syntax
make[3]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/syntax'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/syntax'
Making all in texinfo
make[3]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/texinfo'
make  all-am
make[4]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/texinfo'
make[4]: Nothing to be done for `all-am'.
make[4]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/texinfo'
make[3]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/texinfo'
make[3]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc'
make[2]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc'
Making all in m4
make[2]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/m4'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/m4'
Making all in po
make[2]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/po'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/po'
Making all in src
make[2]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/src'
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT browser.o -MD -MP -MF .deps/browser.Tpo -c -o browser.o browser.c
mv -f .deps/browser.Tpo .deps/browser.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT chars.o -MD -MP -MF .deps/chars.Tpo -c -o chars.o chars.c
mv -f .deps/chars.Tpo .deps/chars.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT color.o -MD -MP -MF .deps/color.Tpo -c -o color.o color.c
mv -f .deps/color.Tpo .deps/color.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT cut.o -MD -MP -MF .deps/cut.Tpo -c -o cut.o cut.c
mv -f .deps/cut.Tpo .deps/cut.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT files.o -MD -MP -MF .deps/files.Tpo -c -o files.o files.c
mv -f .deps/files.Tpo .deps/files.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT global.o -MD -MP -MF .deps/global.Tpo -c -o global.o global.c
mv -f .deps/global.Tpo .deps/global.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT help.o -MD -MP -MF .deps/help.Tpo -c -o help.o help.c
mv -f .deps/help.Tpo .deps/help.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT move.o -MD -MP -MF .deps/move.Tpo -c -o move.o move.c
mv -f .deps/move.Tpo .deps/move.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT nano.o -MD -MP -MF .deps/nano.Tpo -c -o nano.o nano.c
mv -f .deps/nano.Tpo .deps/nano.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT prompt.o -MD -MP -MF .deps/prompt.Tpo -c -o prompt.o prompt.c
mv -f .deps/prompt.Tpo .deps/prompt.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT rcfile.o -MD -MP -MF .deps/rcfile.Tpo -c -o rcfile.o rcfile.c
mv -f .deps/rcfile.Tpo .deps/rcfile.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT search.o -MD -MP -MF .deps/search.Tpo -c -o search.o search.c
mv -f .deps/search.Tpo .deps/search.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT text.o -MD -MP -MF .deps/text.Tpo -c -o text.o text.c
mv -f .deps/text.Tpo .deps/text.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT utils.o -MD -MP -MF .deps/utils.Tpo -c -o utils.o utils.c
mv -f .deps/utils.Tpo .deps/utils.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\" -DSYSCONFDIR=\"/usr/local/etc\"    -g -O2 -MT winio.o -MD -MP -MF .deps/winio.Tpo -c -o winio.o winio.c
mv -f .deps/winio.Tpo .deps/winio.Po
gcc  -g -O2   -o nano browser.o chars.o color.o cut.o files.o global.o help.o move.o nano.o prompt.o rcfile.o search.o text.o utils.o winio.o  -lncurses
make[2]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/src'
make[2]: Entering directory `/tmp/d20130924-2-1qdt5z7/input'
make[2]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input'
make[1]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input'
Making install in doc
make[1]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc'
Making install in man
make[2]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/man'
make  install-recursive
make[3]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/man'
Making install in fr
make[4]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/man/fr'
make  install-am
make[5]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/man/fr'
make[6]: Entering directory `/tmp/d20130924-2-1qdt5z7/input/doc/man/fr'
make[6]: Nothing to be done for `install-exec-am'.
test -z "" || /bin/mkdir -p ""
test -z "/usr/local/share/man/fr/man1" || /bin/mkdir -p "/usr/local/share/man/fr/man1"
/bin/mkdir: cannot create directory `/usr/local/share/man/fr': Read-only file system
make[6]: *** [install-man1] Error 1
make[6]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/man/fr'
make[5]: *** [install-am] Error 2
make[5]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/man/fr'
make[4]: *** [install] Error 2
make[4]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/man/fr'
make[3]: *** [install-recursive] Error 1
make[3]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/man'
make[2]: *** [install] Error 2
make[2]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc/man'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/tmp/d20130924-2-1qdt5z7/input/doc'
make: *** [install-recursive] Error 1
bin/vulcan-make:69:in `chdir': No such file or directory - /app/vendor/nano-2.2 (Errno::ENOENT)
    from bin/vulcan-make:69:in `block (2 levels) in <main>'
    from bin/vulcan-make:18:in `chdir'
    from bin/vulcan-make:18:in `block in <main>'
    from /usr/local/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
    from bin/vulcan-make:17:in `<main>'
>> Downloading build artifacts to: /tmp/nano-2.2.tgz
   (available at http://compile-nano.herokuapp.com/output/a82dbfd5-94f2-43b0-bb4a-16823677d4f0)

HTTP Connection does not stop on error

When build failed and make exited with status 1, the error should be notified.
But vulcan continues HTTP connection and never stops.

2012-06-06T02:41:33+00:00 app[web.1]: [a0dcdbe9-6e33-45ee-97ac-b37c4f58ddd8] saving to couchdb
2012-06-06T02:41:33+00:00 app[web.1]: [a0dcdbe9-6e33-45ee-97ac-b37c4f58ddd8] saving attachment - [id:a0dcdbe9-6e33-45ee-97ac-b37c4f58ddd8 rev:1-01309d630af97fc87bc484ab5c716692]
2012-06-06T02:42:05+00:00 app[web.1]: [a0dcdbe9-6e33-45ee-97ac-b37c4f58ddd8] spawning build
2012-06-06T02:42:05+00:00 heroku[run.1]: State changed from created to starting
2012-06-06T02:42:06+00:00 app[web.1]: valid socket
2012-06-06T02:42:08+00:00 app[run.1]: Awaiting client
2012-06-06T02:42:08+00:00 app[run.1]: Starting process with command `bin/make "a0dcdbe9-6e33-45ee-97ac-b37c4f58ddd8"`
2012-06-06T02:42:08+00:00 heroku[run.1]: State changed from starting to up
2012-06-06T02:42:26+00:00 heroku[run.1]: Process exited with status 1
2012-06-06T02:42:26+00:00 heroku[run.1]: State changed from up to complete
Uploading source package... 


done
Building with: cd dart/runtime && python ../tools/build.py -m release --arch=x64
cd: 1: can't cd to dart/runtime
bin/make:66:in `chdir': No such file or directory - out (Errno::ENOENT)
        from bin/make:66:in `block (2 levels) in <main>'
        from bin/make:18:in `chdir'
        from bin/make:18:in `block in <main>'
        from /usr/local/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
        from bin/make:17:in `<main>'






(empty lines continue)

Issues building mono with vulcan

So i an building mono with vulcan and I am getting the following:

bin/vulcan-make:69:in `chdir': No such file or directory - /app/vendor/mono-2.10.8 (Errno::ENOENT)
    from bin/vulcan-make:69:in `block (2 levels) in <main>'
    from bin/vulcan-make:18:in `chdir'
    from bin/vulcan-make:18:in `block in <main>'
    from /usr/local/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
    from bin/vulcan-make:17:in `<main>'
>> Downloading build artifacts to: /tmp/mono-2.10.8.tgz

The command I executed was:

vulcan build -c "./configure --enable-nls=no --prefix=/tmp/mono && make && make install" -v

I got the vanilla mono 2.10.8.1 source tarball and make exits with no errors.... According to other issues posted here, the --prefix option to configure will fix this, but as you can see, I added it.... Any ideas?

Web app crashes immediately

A bit after doing vulcan create, I look at the logs using heroku logs and this is what I see:

I've seen both:

2012-04-18T23:44:31+00:00 app[web.1]: undefined:0
2012-04-18T23:44:31+00:00 app[web.1]:
2012-04-18T23:44:31+00:00 app[web.1]: ^
2012-04-18T23:44:31+00:00 app[web.1]: SyntaxError: Unexpected end of input
2012-04-18T23:44:31+00:00 app[web.1]: at Object.parse (native)
2012-04-18T23:44:31+00:00 app[web.1]: at /app/web.js:56:28

And:

2012-04-18T23:41:38+00:00 app[web.1]:
2012-04-18T23:41:38+00:00 app[web.1]: node.js:201
2012-04-18T23:41:38+00:00 app[web.1]: throw e; // process.nextTick error, or 'error' event on first tick
2012-04-18T23:41:38+00:00 app[web.1]: ^
2012-04-18T23:41:38+00:00 app[web.1]: TypeError: Parameter 'url' must be a string, not undefined
2012-04-18T23:41:38+00:00 app[web.1]: at Object.urlParse as parse
2012-04-18T23:41:38+00:00 app[web.1]: at Object. (/app/web.js:24:34)
2012-04-18T23:41:38+00:00 app[web.1]: at Module._compile (module.js:441:26)
2012-04-18T23:41:38+00:00 app[web.1]: at Object..js (module.js:459:10)
2012-04-18T23:41:38+00:00 app[web.1]: at Module.load (module.js:348:31)
2012-04-18T23:41:38+00:00 app[web.1]: at Function._load (module.js:308:12)
2012-04-18T23:41:38+00:00 app[web.1]: at Array.0 (module.js:479:10)
2012-04-18T23:41:38+00:00 app[web.1]: at EventEmitter._tickCallback (node.js:192:40)

packaging issues - heroku/vulcan/kensa

using deb repository for heroku toolbelt doesn't work great w/ vulcan (and also kensa).
installing vulcan (gem install) also installs heroku gem and nothing actually works after that.

heroku-accounts plugin stops working, "vulcan create" doesn't work and it looks like it's all because "gem install vulcan" also installs heroku gem.

any way you could package everything into same package management so i can just do:
$ apt-get install heroku vulcan kensa
or
$ gem install heroku vulcan kensa

or update vulcan gem not to require heroku?

Vulcan doesn't work with heroku accounts plugin

Seems there is problem with vulcan + heroku accounts plugin, when I try to do a vulcan create, it just failed as follows:

$ vulcan create vulcan-p7zip
fatal: Not a git repository (or any of the parent directories): .git
Creating vulcan-p7zip... done, stack is cedar
http://vulcan-p7zip.herokuapp.com/ | [email protected]:vulcan-p7zip.git
Initialized empty Git repository in /private/var/folders/gc/_7pmrbcd0y7f3p8vp5ttrs4m0000gv/T/d20130202-64195-1ozrdcr/.git/
ssh: Could not resolve hostname heroku.tofu: nodename nor servname provided, or not known
fatal: The remote end hung up unexpectedly

Cloudant Required

I'm not sure if this is related to my previous ticket, #37 - I don't think it is, but if you find it is feel free to merge.

It seems that a cloudant addon is required for the vulcan app to run successfully. Nowhere in the documentation does it say those, nor do the error outputs of the server crash give any indication that cloudant is the issue.

It should at the very least be put in the README, but even better just automatically add the addon in the create function.

Vulcan Server Crashes

2012-11-29T17:12:10+00:00 heroku[web.1]: Starting process with command bin/web
2012-11-29T17:12:11+00:00 heroku[web.1]: Process exited with status 1
2012-11-29T17:12:11+00:00 heroku[web.1]: State changed from starting to crashed
2012-11-29T17:12:11+00:00 app[web.1]: 29 Nov 17:12:11 - [nodemon] starting coffee web.coffee
2012-11-29T17:12:11+00:00 app[web.1]: 29 Nov 17:12:11 - [nodemon] watching: /app
2012-11-29T17:12:11+00:00 app[web.1]: 29 Nov 17:12:11 - [nodemon] v0.6.18
2012-11-29T17:12:12+00:00 app[web.1]: at Module._compile (module.js:446:26)
2012-11-29T17:12:12+00:00 app[web.1]: at Object.run (/app/node_modules/coffee-script/lib/coffee-script/coffee-script.js:79:25)
2012-11-29T17:12:12+00:00 app[web.1]: at Function._load (module.js:279:25)
2012-11-29T17:12:12+00:00 app[web.1]: at require (module.js:375:17)
2012-11-29T17:12:12+00:00 app[web.1]: at Object. (/app/web.coffee:10:12)
2012-11-29T17:12:12+00:00 app[web.1]: at /app/node_modules/coffee-script/lib/coffee-script/command.js:150:18
2012-11-29T17:12:12+00:00 app[web.1]: Error: Cannot find module 'logger'
2012-11-29T17:12:12+00:00 app[web.1]: at Function._resolveFilename (module.js:337:11)
2012-11-29T17:12:12+00:00 app[web.1]: at Module.require (module.js:359:17)
2012-11-29T17:12:12+00:00 app[web.1]: at Object. (/app/web.coffee:121:4)
2012-11-29T17:12:12+00:00 app[web.1]: at /app/node_modules/coffee-script/lib/coffee-script/command.js:175:29
2012-11-29T17:12:12+00:00 app[web.1]: 29 Nov 17:12:12 - [nodemon] app crashed - waiting for file changes before starting...

Can't package binary using cmake

Hi, I'm trying to package TagLib using Vulcan.

Packaging local directory... done
Uploading source package... done
Building with: ./configure --prefix /app/vendor/taglib-1 && make install
sh: ./configure: not found
bin/make:66:in chdir': No such file or directory - /app/vendor/taglib-1 (Errno::ENOENT) from bin/make:66:inblock (2 levels) in

'
from bin/make:18:in chdir' from bin/make:18:inblock in '
from /usr/local/lib/ruby/1.9.1/tmpdir.rb:83:in mktmpdir' from bin/make:17:in'

Downloading build artifacts to: /tmp/taglib-1.tgz

Help Please!

{"error":"not_found","reason":"Document is missing attachment"}

while trying to compile numpy (for python) i've run into a few issues which i thought were related to numpy compilation.
i eventually went back to original example from devcenter article and something is wrong and i can't build memcached example.

any help/instructions appreciated.

i've followed instructions on devcenter article: https://devcenter.heroku.com/articles/buildpack-binaries#compiling-binaries

$ cat /tmp/memcached-1.4.tgz
{"error":"not_found","reason":"Document is missing attachment"}

actual output:

$ curl -O http://memcached.googlecode.com/files/memcached-1.4.13.tar.gz
[...]

$ ll
total 2864
drwxrwxr-x 3 aljosa aljosa 4096 Dec 4 04:54 ./
drwxrwxr-x 57 aljosa aljosa 4096 Dec 3 16:57 ../
-rw-rw-r-- 1 aljosa aljosa 38 Dec 3 17:21 .env
drwxr-xr-x 6 aljosa aljosa 4096 Dec 3 17:01 heroku-buildpack-python/
-rw-rw-r-- 1 aljosa aljosa 320751 Dec 4 04:54 memcached-1.4.13.tar.gz
-rw-rw-r-- 1 aljosa aljosa 2585329 Dec 3 17:16 numpy-1.6.2.tar.gz

[...] # unpack memcahed && cd memcached folder

$ vulcan build
Packaging local directory... done
Uploading source package... >> Downloading build artifacts to: /tmp/memcached-1.4.tgz
(available at http://vulcan-lsn.herokuapp.com/output/6abaf93a-4748-4e18-886f-30629fae436d)

Warning installing heroku gem

$ gem install vulcan
Fetching: excon-0.16.10.gem (100%)
Fetching: heroku-api-0.3.7.gem (100%)
Fetching: netrc-0.7.7.gem (100%)
Fetching: heroku-2.33.5.gem (100%)
 !    The `heroku` gem has been deprecated and replaced with the Heroku Toolbelt.
 !    Download and install from: https://toolbelt.heroku.com
 !    For API access, see: https://github.com/heroku/heroku.rb

"Could not connect to build server" using ruby 2.0.0p0

heroku-buildpack-nodejs master $ support/package_nodejs 0.10.2
Initializing build... !! Could not connect to build server: http://vulcan-zeke.herokuapp.com

heroku-buildpack-nodejs master $ ruby -v
ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-darwin12.2.0]

heroku-buildpack-nodejs master $ rvm use ruby-1.9.3-p385
Using /Users/zeke/.rvm/gems/ruby-1.9.3-p385

heroku-buildpack-nodejs master $ gem list | grep vulcan
vulcan (0.8.1)

heroku-buildpack-nodejs master $ support/package_nodejs 0.10.2
Initializing build... done
Building with: cd node-v0.10.2 && ./configure --prefix=/app/vendor/node && make install
...

How to install packages with apt-get?

What is the correct way to install packages needed for building?

Trying sudo:

./configure_ubuntu_12.04.sh: 17: sudo: not found

Just raw apt-get:

W: Not using locking for read only lock file /var/lib/apt/lists/lock
E: Archive directory /var/cache/apt/archives/partial is missing.
W: Not using locking for read only lock file /var/lib/dpkg/lock
W: Not using locking for read only lock file /var/lib/dpkg/lock
E: Unable to write to /var/cache/apt/
E: The package lists or status file could not be parsed or opened.

Hmm, apt-get doesn't like not having access to /var, so lets try a chroot jail:

bash: chroot: command not found

Now I'm stuck. I need a bunch of dependencies that are much easier to get view apt-get than from finding all the source packages...

(I'm basically trying to run the same install script I use for travis: https://github.com/facebook/hiphop-php/blob/master/configure_ubuntu_12.04.sh https://github.com/facebook/hiphop-php/blob/master/.travis.yml )

cairo build fails with no output - where to start debugging?

$ wget http://cairographics.org/releases/cairo-1.10.2.tar.gz
$ tar xzvf cairo-1.10.2.tar.gz
$ cd cairo-1.10.2
$ vulcan build -v -o ../cairo-1.10.2.tgz
>> Packaging local directory
>> Uploading code for build
>> Building with: ./configure --prefix /app/vendor/cairo-1.10.2 && make install
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
      <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
      <style type="text/css">
        html, body, iframe { margin: 0; padding: 0; height: 100%; }
        iframe { display: block; width: 100%; border: none; }
      </style>
    <title>Application Error</title></head>
    </head>
    <body>
      <iframe src="https://s3.amazonaws.com/heroku_pages/error.html">
        <p>Application Error</p>
      </iframe>
    </body>
    </html>!! Unknown error, no build output given

I've successfully built pixman (http://www.cairographics.org/releases/pixman-0.20.2.tar.gz) on the same vulcan instance so I'm pretty sure it's working correctly. I suspect Cairo has other dependencies (pixman, freetype?) which I'll need to specify with -d but I'm not sure how to diagnose which ones were missing?

My hope is to get a repeatable toolchain together for deploying https://github.com/LearnBoost/node-canvas to Heroku. There are other efforts to do this (https://github.com/elspoono/node-canvas-heroku) but they are falling out of date ... the tutorial to repeat the fix (https://github.com/elspoono/node-canvas-heroku) starts with compiling Cairo for Ubuntu 64-bit, so here I am :)

'404 response' building memcache example, build fails

There seem to be two issues, perhaps related:

  • /app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/abstract_response.rb:48:in `return!': 404 Resource Not Found (RestClient::ResourceNotFound)
  • bin/make:66:in `chdir': No such file or directory - /app/vendor/memcached-1.4 (Errno::ENOENT)

See below for full transcript. To reproduce, I:
1 Created a new build environment with vulcan create
2 Downloaded and extracted memcached per instructions (https://devcenter.heroku.com/articles/buildpack-binaries)
3 cd memcached-1.4; vulcan build -v

If I use heroku run bash to create /app/vendor/memcached-1.4, the second error still occurs.

Cloudant is installed and functioning happily.

got-one:memcached-1.4.13 pac$ vulcan build -v
Packaging local directory... done
Uploading source package... done
Building with: ./configure --prefix /app/vendor/memcached-1.4 && make install
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... no
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... none
checking dependency style of gcc... none
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for icc in use... no
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking whether __SUNPRO_C is declared... no
checking for gcc option to accept ISO C99... -std=gnu99
checking whether gcc -std=gnu99 and cc understand -c and -o together... yes
checking sasl/sasl.h usability... no
checking sasl/sasl.h presence... no
checking for sasl/sasl.h... no
checking for gcov... /usr/bin/gcov
checking for main in -lgcov... yes
checking for library containing clock_gettime... -lrt
checking for library containing socket... none required
checking for library containing gethostbyname... none required
checking for libevent directory... (system)
checking for library containing umem_cache_create... no
checking for library containing gethugepagesizes... no
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
checking for inttypes.h... (cached) yes
checking for sasl_callback_ft... no
checking for print macros for integers (C99 section 7.8.1)... yes
checking for an ANSI C-conforming const... yes
checking for socklen_t... yes
checking for endianness... little
checking for htonll... no
checking for library containing pthread_create... none required
checking for mlockall... yes
checking for getpagesizes... no
checking for memcntl... no
checking for sigignore... yes
checking for clock_gettime... yes
checking for alignment... need
checking for GCC atomics... yes
checking for setppriv... no
checking umem.h usability... no
checking umem.h presence... no
checking for umem.h... no
checking for xml2rfc... no
checking for xsltproc... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating config.h
config.status: executing depfiles commands
/app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/abstract_response.rb:48:in `return!': 404 Resource Not Found (RestClient::ResourceNotFound)
    from /app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:230:in `process_result'
    from /app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:178:in `block in transmit'
    from /usr/local/lib/ruby/1.9.1/net/http.rb:627:in `start'
    from /app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:172:in `transmit'
    from /app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:64:in `execute'
    from /app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:33:in `execute'
    from /app/vendor/gems/gems/couchrest-1.1.2/lib/couchrest/rest_api.rb:89:in `execute'
    from /app/vendor/gems/gems/couchrest-1.1.2/lib/couchrest/rest_api.rb:45:in `get'
    from /app/vendor/gems/gems/couchrest-1.1.2/lib/couchrest/database.rb:82:in `get'
    from /app/bin/make:19:in `block (2 levels) in <main>'
    from /app/bin/make:18:in `chdir'
    from /app/bin/make:18:in `block in <main>'
    from /usr/local/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
    from /app/bin/make:17:in `<main>'
bin/make:66:in `chdir': No such file or directory - /app/vendor/memcached-1.4 (Errno::ENOENT)
    from bin/make:66:in `block (2 levels) in <main>'
    from bin/make:18:in `chdir'
    from bin/make:18:in `block in <main>'
    from /usr/local/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
    from bin/make:17:in `<main>'
>> Downloading build artifacts to: /tmp/memcached-1.4.tgz
   (available at http://<snip />.herokuapp.com/output/f1ff5e26-5016-43b9-ab25-8a0ff612612a)

Support for passing a script file

vulcan build -s ~/Code/memcached -p /tmp/memcached -c install.sh

install.sh:

./autogen.sh
./configure --prefix=/tmp/memcached
make install

Hacking mruby onto Heroku

I've been trying to follow this article on building mruby binaries on heroku. But it recommends I use vulcan but vulcan is now deprecated in the README it's recommend that we use heroku run instead but the toolbelt doesn't seem to have certain commands that vulcan has such as vulcan build. I can't find any updated article about this. What do I do?

Cannot create Vulcan server: npm error during server build

I do have a valid paid Heroku account, and running heroku addons --app vulcan-yuri does show cloudant:oxygen installed.

Here is the output during build server creation:

ruby-2.0.0 WEBDEV > vulcan create vulcan-yuri                          
Creating vulcan-yuri... done, stack is cedar
http://vulcan-yuri.herokuapp.com/ | [email protected]:vulcan-yuri.git
Initialized empty Git repository in /private/var/folders/zx/hh20wj555hg0gjkwxqswyhf80000gn/T/d20130729-24307-sli2ub/.git/
Counting objects: 865, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (792/792), done.
Writing objects: 100% (865/865), 1000.72 KiB | 388.00 KiB/s, done.
Total 865 (delta 82), reused 0 (delta 0)

-----> Node.js app detected
-----> Resolving engine versions
       Using Node.js version: 0.6.20
       Using npm version: 1.1.4
-----> Fetching Node.js binaries
-----> Vendoring node into slug
-----> Installing dependencies with npm
       npm WARN [email protected] package.json: bugs['name'] should probably be bugs['url']
       npm WARN [email protected] package.json: bugs['name'] should probably be bugs['url']

       npm ERR! Error: ENOENT, chmod '/tmp/build_ob6z6q4ypcge/node_modules/coffee-script/bin/coffee'
       npm ERR! You may report this log at:
       npm ERR!     <http://github.com/isaacs/npm/issues>
       npm ERR! or email it to:
       npm ERR!     <[email protected]>
       npm ERR! 
       npm ERR! System Linux 3.8.11-ec2
       npm ERR! command "/tmp/node-node-Qc7t/bin/node" "/tmp/node-npm-lOCR/cli.js" "rebuild"
       npm ERR! cwd /tmp/build_ob6z6q4ypcge
       npm ERR! node -v v0.6.20
       npm ERR! npm -v 1.1.4
       npm ERR! path /tmp/build_ob6z6q4ypcge/node_modules/coffee-script/bin/coffee
       npm ERR! code ENOENT
       npm ERR! message ENOENT, chmod '/tmp/build_ob6z6q4ypcge/node_modules/coffee-script/bin/coffee'
       npm ERR! errno {}
       npm ERR! 
       npm ERR! Additional logging details can be found in:
       npm ERR!     /tmp/build_ob6z6q4ypcge/npm-debug.log
       npm not ok
 !     Failed to rebuild dependencies with npm
info it worked if it ends with ok
verbose cli [ '/tmp/node-node-Qc7t/bin/node',
verbose cli   '/tmp/node-npm-lOCR/cli.js',
verbose cli   'rebuild' ]
info using [email protected]
info using [email protected]
verbose config file /tmp/build_ob6z6q4ypcge/.npmrc
verbose config file /tmp/node-node-Qc7t/etc/npmrc
verbose config file /tmp/node-npm-lOCR/npmrc
verbose umasking from 77 755
verbose caching /tmp/build_ob6z6q4ypcge/package.json
verbose loadDefaults [email protected]
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/express/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/connect-form/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/node-uuid/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/knox/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/cradle/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/restler/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/nodemon/package.json
WARN [email protected] package.json: bugs['name'] should probably be bugs['url']
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/coffee-script/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/mkdirp/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/connect/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/qs/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/mime/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/connect-form/node_modules/formidable/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/follow/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/vargs/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/request/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/connect/node_modules/formidable/package.json
verbose caching /tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/follow/node_modules/request/package.json
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
verbose returning [ '[email protected]' ]
info read Installed object
verbose path id [ '/tmp/build_ob6z6q4ypcge', '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/coffee-script',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/connect-form',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/connect-form/node_modules/formidable',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/cradle',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/follow',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/follow/node_modules/request',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/request',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/vargs',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/express',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/connect',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/qs',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/mime',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/connect/node_modules/formidable',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/mkdirp',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/knox', '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/node-uuid',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/nodemon',
verbose path id   '[email protected]' ]
verbose path id [ '/tmp/build_ob6z6q4ypcge/node_modules/restler',
verbose path id   '[email protected]' ]
silly rebuild set [ '/tmp/build_ob6z6q4ypcge/node_modules/coffee-script',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/connect-form',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/connect-form/node_modules/formidable',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/cradle',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/follow',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/follow/node_modules/request',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/request',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/cradle/node_modules/vargs',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/express',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/connect',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/qs',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/mime',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/connect/node_modules/formidable',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/express/node_modules/mkdirp',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/knox',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/node-uuid',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/nodemon',
silly rebuild set   '/tmp/build_ob6z6q4ypcge/node_modules/restler' ]
info build /tmp/build_ob6z6q4ypcge/node_modules/coffee-script
verbose from cache /tmp/build_ob6z6q4ypcge/node_modules/coffee-script/package.json
info preinstall [email protected]
verbose linkStuff [ false, false, false, '/tmp/build_ob6z6q4ypcge/node_modules' ]
info linkStuff [email protected]
verbose linkBins [email protected]
verbose bins linking [ { coffee: './bin/coffee', cake: './bin/cake' },
verbose bins linking   '/tmp/build_ob6z6q4ypcge/node_modules/.bin',
verbose bins linking   false ]
verbose linkMans [email protected]
verbose rebuildBundles [email protected]
ERR! Error: ENOENT, chmod '/tmp/build_ob6z6q4ypcge/node_modules/coffee-script/bin/coffee'
ERR! You may report this log at:
ERR!     <http://github.com/isaacs/npm/issues>
ERR! or email it to:
ERR!     <[email protected]>
ERR! 
ERR! System Linux 3.8.11-ec2
ERR! command "/tmp/node-node-Qc7t/bin/node" "/tmp/node-npm-lOCR/cli.js" "rebuild"
ERR! cwd /tmp/build_ob6z6q4ypcge
ERR! node -v v0.6.20
ERR! npm -v 1.1.4
ERR! path /tmp/build_ob6z6q4ypcge/node_modules/coffee-script/bin/coffee
ERR! code ENOENT
ERR! message ENOENT, chmod '/tmp/build_ob6z6q4ypcge/node_modules/coffee-script/bin/coffee'
ERR! errno {}
verbose exit [ 1, true ]

 !     Push rejected, failed to compile Node.js app

To [email protected]:vulcan-yuri.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to '[email protected]:vulcan-yuri.git'
ruby-2.0.0 WEBDEV > 

GSL compilation fails

I extracted the GSL 1.14 from http://ftp.gnu.org/gnu/gsl/gsl-1.14.tar.gz. I create a new vulcan server-

vulcan create gsl

I then ran

heroku addons:add cloudant:oxygen --app gsl

and then ran

vulcan build

The following is the stack trace

Packaging local directory... done
Uploading source package... >> Downloading build artifacts to: /tmp/gsl-1.tgz
   (available at http://gsl.herokuapp.com/output/47f924dc-073a-4574-b33c-98efd320cd35)
Kruttiks-MacBook-Pro:gsl-1.14 kruttikagarwal$ heroku logs --app gsl
 !    Logplex was just enabled for this app.
 !    Please try fetching logs again in a few seconds.
Kruttiks-MacBook-Pro:gsl-1.14 kruttikagarwal$ heroku logs --app gsl
Kruttiks-MacBook-Pro:gsl-1.14 kruttikagarwal$ heroku logs --app gsl
Kruttiks-MacBook-Pro:gsl-1.14 kruttikagarwal$ vulcan build -v
Packaging local directory... done
Uploading source package... done
Building with: ./configure --prefix /app/vendor/gsl-1 && make install
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for a sed that does not truncate output... /bin/sed
checking whether make sets $(MAKE)... (cached) yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking whether ln -s works... yes
checking for a sed that does not truncate output... (cached) /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for size_t... yes
checking for working volatile... yes
checking for inline... inline
checking whether char is unsigned... no
checking for GNU-style extern inline... yes
checking ieeefp.h usability... no
checking ieeefp.h presence... no
checking for ieeefp.h... no
checking for vprintf... yes
checking for _doprnt... no
checking for memcpy... yes
checking for memmove... yes
checking for strdup... yes
checking for strtol... yes
checking for strtoul... yes
checking for EXIT_SUCCESS and EXIT_FAILURE... yes
checking for cos in -lm... yes
checking whether feenableexcept is declared... yes
checking whether fesettrapenable is declared... no
checking whether hypot is declared... yes
checking whether expm1 is declared... yes
checking whether acosh is declared... yes
checking whether asinh is declared... yes
checking whether atanh is declared... yes
checking whether ldexp is declared... yes
checking whether frexp is declared... yes
checking whether isinf is declared... yes
checking whether isfinite is declared... yes
checking whether finite is declared... yes
checking whether isnan is declared... yes
checking whether log1p is declared... yes
checking for long double stdio... yes
checking for extended floating point registers... yes
checking for IEEE arithmetic interface type... gnux86
checking for FPU_SETCW... yes
checking for SSE extensions... yes
checking for IEEE compiler flags... none
checking for IEEE comparisons... yes
checking for IEEE denormalized values... yes
configure: creating ./config.status
config.status: creating gsl_version.h
config.status: creating gsl.spec
config.status: creating gsl/Makefile
config.status: creating test/Makefile
config.status: creating err/Makefile
config.status: creating sys/Makefile
config.status: creating utils/Makefile
config.status: creating const/Makefile
config.status: creating min/Makefile
config.status: creating multimin/Makefile
config.status: creating ieee-utils/Makefile
config.status: creating fft/Makefile
config.status: creating specfunc/Makefile
config.status: creating dht/Makefile
config.status: creating fit/Makefile
config.status: creating multifit/Makefile
config.status: creating bspline/Makefile
config.status: creating statistics/Makefile
config.status: creating sum/Makefile
config.status: creating roots/Makefile
config.status: creating multiroots/Makefile
config.status: creating ntuple/Makefile
config.status: creating poly/Makefile
config.status: creating qrng/Makefile
config.status: creating rng/Makefile
config.status: creating randist/Makefile
config.status: creating siman/Makefile
config.status: creating integration/Makefile
config.status: creating interpolation/Makefile
config.status: creating doc/Makefile
config.status: creating block/Makefile
config.status: creating vector/Makefile
config.status: creating matrix/Makefile
config.status: creating histogram/Makefile
config.status: creating monte/Makefile
config.status: creating ode-initval/Makefile
config.status: creating cblas/Makefile
config.status: creating blas/Makefile
config.status: creating linalg/Makefile
config.status: creating eigen/Makefile
config.status: creating permutation/Makefile
config.status: creating combination/Makefile
config.status: creating multiset/Makefile
config.status: creating sort/Makefile
config.status: creating complex/Makefile
config.status: creating diff/Makefile
config.status: creating deriv/Makefile
config.status: creating cheb/Makefile
config.status: creating cdf/Makefile
config.status: creating wavelet/Makefile
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
Making install in gsl
make[1]: Entering directory `/tmp/d20121014-2-p4jl3k/input/gsl'
make[2]: Entering directory `/tmp/d20121014-2-p4jl3k/input/gsl'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/tmp/d20121014-2-p4jl3k/input/gsl'
make[1]: Leaving directory `/tmp/d20121014-2-p4jl3k/input/gsl'
Making install in utils
make[1]: Entering directory `/tmp/d20121014-2-p4jl3k/input/utils'
/bin/bash ../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..     -g -O2 -MT placeholder.lo -MD -MP -MF .deps/placeholder.Tpo -c -o placeholder.lo placeholder.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -MT placeholder.lo -MD -MP -MF .deps/placeholder.Tpo -c placeholder.c  -fPIC -DPIC -o .libs/placeholder.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -MT placeholder.lo -MD -MP -MF .deps/placeholder.Tpo -c placeholder.c -o placeholder.o >/dev/null 2>&1
mv -f .deps/placeholder.Tpo .deps/placeholder.Plo
/bin/bash ../libtool --tag=CC   --mode=link gcc  -g -O2   -o libutils.la  placeholder.lo  -lm 
libtool: link: ar cru .libs/libutils.a .libs/placeholder.o 
libtool: link: ranlib .libs/libutils.a
libtool: link: ( cd ".libs" && rm -f "libutils.la" && ln -s "../libutils.la" "libutils.la" )
make[2]: Entering directory `/tmp/d20121014-2-p4jl3k/input/utils'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/tmp/d20121014-2-p4jl3k/input/utils'
make[1]: Leaving directory `/tmp/d20121014-2-p4jl3k/input/utils'
Making install in sys
make[1]: Entering directory `/tmp/d20121014-2-p4jl3k/input/sys'
/bin/bash ../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -I..    -g -O2 -MT minmax.lo -MD -MP -MF .deps/minmax.Tpo -c -o minmax.lo minmax.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I.. -g -O2 -MT minmax.lo -MD -MP -MF .deps/minmax.Tpo -c minmax.c  -fPIC -DPIC -o .libs/minmax.o
minmax.c:26:28: error: gsl/gsl_minmax.h: No such file or directory
make[1]: *** [minmax.lo] Error 1
make[1]: Leaving directory `/tmp/d20121014-2-p4jl3k/input/sys'
make: *** [install-recursive] Error 1
bin/make:66:in `chdir': No such file or directory - /app/vendor/gsl-1 (Errno::ENOENT)
    from bin/make:66:in `block (2 levels) in <main>'
    from bin/make:18:in `chdir'
    from bin/make:18:in `block in <main>'
    from /usr/local/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
    from bin/make:17:in `<main>'
>> Downloading build artifacts to: /tmp/gsl-1.tgz
   (available at http://gsl.herokuapp.com/output/4ceb19a3-9f22-49d1-b82a-37324e3ed6eb)

Question: Unable to build xpdf, missing something?

Hi,

I'm trying to create a binary for xpdf so that I can use pdftotext in my Heroku Rails app. I have created a vulcan build server using

vulcan create

then downloaded source for xpdf and run vulcan locally

curl -O ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.03.tar.gz
tar xvzf xpdf-3.03.tar.gz
cd xpdf-3.03
vulcan build -v -s . -p /tmp/xpdf -c "./configure --prefix=/tmp/xpdf --with-shared && make && make install"

I can see the compilation taking place and then the install but then it just hangs on the last line. Below are the logs. Any help on what am I missing?

Thanks,
Matt

Packaging local directory... done
Uploading source package... done
Building with: ./configure --prefix=/tmp/xpdf --with-shared && make && make install
configure: WARNING: unrecognized options: --with-shared
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for library containing strerror... none required
checking for gcc option to accept ISO C99... -std=gnu99
checking for gcc -std=gnu99 option to accept ISO Standard C... (cached) -std=gnu99
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for ranlib... ranlib
checking for OS/2 (with EMX)... no
checking for DOS (with DJGPP)... no
checking how to run the C preprocessor... gcc -std=gnu99 -E
checking for X... libraries , headers 
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for gethostbyname... (cached) yes
checking select() and fd_set in sys/select.h and sys/bsdtypes.h... not needed
checking FD_ZERO and strings.h or bstring.h... not needed
checking for rewinddir... yes
checking for popen... yes
checking for mkstemp... yes
checking for mkstemps... yes
checking whether select takes fd_set arguments... yes
checking for std::sort... yes
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking for _LARGEFILE_SOURCE value needed for large files... no
checking for fseek64... no
checking for ftell64... no
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking whether to use Xpm library... maybe
checking where to find the Xpm header files... 
checking X11/xpm.h usability... no
checking X11/xpm.h presence... no
checking for X11/xpm.h... no
not using Xpm library
checking whether to use Xext library... maybe
checking where to find the Xext header files... 
checking X11/Xlib.h usability... yes
checking X11/Xlib.h presence... yes
checking for X11/Xlib.h... yes
checking for XextAddDisplay in -lXext... yes
using Xext library
checking whether to use Xp library... maybe
checking where to find the Xp header files... 
checking X11/extensions/Print.h usability... no
checking X11/extensions/Print.h presence... no
checking for X11/extensions/Print.h... no
not using Xp library
checking whether to use Xt library... maybe
checking where to find the Xt header files... 
checking X11/Intrinsic.h usability... yes
checking X11/Intrinsic.h presence... yes
checking for X11/Intrinsic.h... yes
checking for XtAppInitialize in -lXt... yes
using Xt library
checking whether to use Xm library... maybe
checking where to find the Xm header files... 
checking Xm/XmAll.h usability... no
checking Xm/XmAll.h presence... no
checking for Xm/XmAll.h... no
not using Xm library
checking whether to use Sgm library... maybe
checking where to find the Sgm header files... 
checking Sgm/HPanedW.h usability... no
checking Sgm/HPanedW.h presence... no
checking for Sgm/HPanedW.h... no
not using Sgm library
checking for XtAppSetExitFlag in -lXt... yes
checking whether to use freetype2 library... maybe
checking where to find the freetype2 header files... 
checking ft2build.h usability... no
checking ft2build.h presence... no
checking for ft2build.h... no
not using freetype2 library
checking whether to use libpaper library... maybe
checking where to find the libpaper header files... 
checking paper.h usability... no
checking paper.h presence... no
checking for paper.h... no
not using libpaper library
configure: creating ./config.status
config.status: creating Makefile
config.status: WARNING:  'Makefile.in' seems to ignore the --datarootdir setting
config.status: creating goo/Makefile
config.status: creating fofi/Makefile
config.status: creating splash/Makefile
config.status: creating xpdf/Makefile
config.status: creating aconf.h
configure: WARNING: unrecognized options: --with-shared
configure: WARNING: Couldn't find Motif
configure: WARNING: Couldn't find FreeType
configure: WARNING: -- You will be able to compile pdftops, pdftotext,
        pdfinfo, pdffonts, pdfdetach, and pdfimages, but not xpdf
        or pdftoppm
cd goo; make
make[1]: Entering directory `/tmp/d20120624-2-1ws2bk8/input/goo'
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c GHash.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c GList.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c GString.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c gmem.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c gmempp.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c gfile.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c FixedPoint.cc
gcc -std=gnu99 -g -O2 -DHAVE_CONFIG_H -I.. -I.   -c -o parseargs.o parseargs.c
rm -f libGoo.a
ar rc libGoo.a GHash.o GList.o GString.o gmem.o gmempp.o gfile.o FixedPoint.o parseargs.o
ranlib libGoo.a
make[1]: Leaving directory `/tmp/d20120624-2-1ws2bk8/input/goo'
cd fofi; make
make[1]: Entering directory `/tmp/d20120624-2-1ws2bk8/input/fofi'
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I. -c FoFiBase.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I. -c FoFiEncodings.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I. -c FoFiIdentifier.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I. -c FoFiTrueType.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I. -c FoFiType1.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I. -c FoFiType1C.cc
rm -f libfofi.a
ar rc libfofi.a FoFiBase.o FoFiEncodings.o FoFiIdentifier.o FoFiTrueType.o FoFiType1.o FoFiType1C.o
ranlib libfofi.a
make[1]: Leaving directory `/tmp/d20120624-2-1ws2bk8/input/fofi'
cd splash; make
make[1]: Entering directory `/tmp/d20120624-2-1ws2bk8/input/splash'
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c Splash.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashBitmap.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashClip.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashFTFont.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashFTFontEngine.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashFTFontFile.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashFont.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashFontEngine.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashFontFile.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashFontFileID.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashPath.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashPattern.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashScreen.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashState.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashT1Font.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashT1FontEngine.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashT1FontFile.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashXPath.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.   -c SplashXPathScanner.cc
rm -f libsplash.a
ar rc libsplash.a Splash.o SplashBitmap.o SplashClip.o SplashFTFont.o SplashFTFontEngine.o SplashFTFontFile.o SplashFont.o SplashFontEngine.o SplashFontFile.o SplashFontFileID.o SplashPath.o SplashPattern.o SplashScreen.o SplashState.o SplashT1Font.o SplashT1FontEngine.o SplashT1FontFile.o SplashXPath.o SplashXPathScanner.o
ranlib libsplash.a
make[1]: Leaving directory `/tmp/d20120624-2-1ws2bk8/input/splash'
cd xpdf; make all-no-x
make[1]: Entering directory `/tmp/d20120624-2-1ws2bk8/input/xpdf'
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Annot.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Array.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c BuiltinFont.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c BuiltinFontTables.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Catalog.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c CharCodeToUnicode.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c CMap.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Decrypt.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Dict.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Error.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c FontEncodingTables.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Function.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Gfx.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c GfxFont.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c GfxState.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c GlobalParams.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c JArithmeticDecoder.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c JBIG2Stream.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c JPXStream.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Lexer.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Link.cc

g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c NameToCharCode.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c OptionalContent.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Outline.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Object.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c OutputDev.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Page.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Parser.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c PDFDoc.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c PDFDocEncoding.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c PreScanOutputDev.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c PSOutputDev.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c PSTokenizer.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c SecurityHandler.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c SplashOutputDev.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c Stream.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c UnicodeMap.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c XpdfPluginAPI.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c XRef.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c pdftops.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.            -o pdftops Annot.o Array.o BuiltinFont.o BuiltinFontTables.o Catalog.o CharCodeToUnicode.o CMap.o Decrypt.o Dict.o Error.o FontEncodingTables.o Function.o Gfx.o GfxFont.o GfxState.o GlobalParams.o JArithmeticDecoder.o JBIG2Stream.o JPXStream.o Lexer.o Link.o NameToCharCode.o OptionalContent.o Outline.o Object.o OutputDev.o Page.o Parser.o PDFDoc.o PDFDocEncoding.o PreScanOutputDev.o PSOutputDev.o PSTokenizer.o SecurityHandler.o SplashOutputDev.o Stream.o UnicodeMap.o XpdfPluginAPI.o XRef.o pdftops.o \
    -L../goo -lGoo -L../splash -lsplash   -L../fofi -lfofi -L../goo -lGoo -lm
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c TextOutputDev.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c UnicodeTypeTable.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c pdftotext.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.            -o pdftotext Annot.o Array.o BuiltinFont.o BuiltinFontTables.o Catalog.o CharCodeToUnicode.o CMap.o Decrypt.o Dict.o Error.o FontEncodingTables.o Function.o Gfx.o GfxFont.o GfxState.o GlobalParams.o JArithmeticDecoder.o JBIG2Stream.o JPXStream.o Lexer.o Link.o NameToCharCode.o Object.o OptionalContent.o Outline.o OutputDev.o Page.o Parser.o PDFDoc.o PDFDocEncoding.o PSTokenizer.o SecurityHandler.o Stream.o TextOutputDev.o UnicodeMap.o UnicodeTypeTable.o XpdfPluginAPI.o XRef.o pdftotext.o \
    -L../goo -lGoo -L../fofi -lfofi -L../goo -lGoo -lm
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c pdfinfo.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.            -o pdfinfo Annot.o Array.o BuiltinFont.o BuiltinFontTables.o Catalog.o CharCodeToUnicode.o CMap.o Decrypt.o Dict.o Error.o FontEncodingTables.o Function.o Gfx.o GfxFont.o GfxState.o GlobalParams.o JArithmeticDecoder.o JBIG2Stream.o JPXStream.o Lexer.o Link.o NameToCharCode.o Object.o OptionalContent.o Outline.o OutputDev.o Page.o Parser.o PDFDoc.o PDFDocEncoding.o PSTokenizer.o SecurityHandler.o Stream.o UnicodeMap.o XpdfPluginAPI.o XRef.o pdfinfo.o \
    -L../goo -lGoo -L../fofi -lfofi -L../goo -lGoo -lm
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c pdffonts.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.            -o pdffonts Annot.o Array.o BuiltinFont.o BuiltinFontTables.o Catalog.o CharCodeToUnicode.o CMap.o Decrypt.o Dict.o Error.o FontEncodingTables.o Function.o Gfx.o GfxFont.o GfxState.o GlobalParams.o JArithmeticDecoder.o JBIG2Stream.o JPXStream.o Lexer.o Link.o NameToCharCode.o Object.o OptionalContent.o Outline.o OutputDev.o Page.o Parser.o PDFDoc.o PDFDocEncoding.o PSTokenizer.o SecurityHandler.o Stream.o UnicodeMap.o XpdfPluginAPI.o XRef.o pdffonts.o \
    -L../goo -lGoo -L../fofi -lfofi -L../goo -lGoo -lm
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c pdfdetach.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.            -o pdfdetach Annot.o Array.o BuiltinFont.o BuiltinFontTables.o Catalog.o CharCodeToUnicode.o CMap.o Decrypt.o Dict.o Error.o FontEncodingTables.o Function.o Gfx.o GfxFont.o GfxState.o GlobalParams.o JArithmeticDecoder.o JBIG2Stream.o JPXStream.o Lexer.o Link.o NameToCharCode.o Object.o OptionalContent.o Outline.o OutputDev.o Page.o Parser.o PDFDoc.o PDFDocEncoding.o PSTokenizer.o SecurityHandler.o Stream.o UnicodeMap.o XpdfPluginAPI.o XRef.o pdfdetach.o \
    -L../goo -lGoo -L../fofi -lfofi -L../goo -lGoo -lm
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c ImageOutputDev.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.           -c pdfimages.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I./../splash -I.            -o pdfimages Annot.o Array.o BuiltinFont.o BuiltinFontTables.o Catalog.o CharCodeToUnicode.o CMap.o Decrypt.o Dict.o Error.o FontEncodingTables.o Function.o Gfx.o GfxFont.o GfxState.o GlobalParams.o ImageOutputDev.o JArithmeticDecoder.o JBIG2Stream.o JPXStream.o Lexer.o Link.o NameToCharCode.o Object.o OptionalContent.o Outline.o OutputDev.o Page.o Parser.o PDFDoc.o PDFDocEncoding.o PSTokenizer.o SecurityHandler.o Stream.o UnicodeMap.o XpdfPluginAPI.o XRef.o pdfimages.o \
    -L../goo -lGoo -L../fofi -lfofi -L../goo -lGoo -lm
make[1]: Leaving directory `/tmp/d20120624-2-1ws2bk8/input/xpdf'
mkdir -p /tmp/xpdf/bin
/usr/bin/install -c xpdf/pdftops /tmp/xpdf/bin/pdftops
/usr/bin/install -c xpdf/pdftotext /tmp/xpdf/bin/pdftotext
/usr/bin/install -c xpdf/pdfinfo /tmp/xpdf/bin/pdfinfo
/usr/bin/install -c xpdf/pdffonts /tmp/xpdf/bin/pdffonts
/usr/bin/install -c xpdf/pdfdetach /tmp/xpdf/bin/pdfdetach
/usr/bin/install -c xpdf/pdfimages /tmp/xpdf/bin/pdfimages
mkdir -p /tmp/xpdf/share/man/man1
/usr/bin/install -c -m 644 ./doc/pdftops.1 /tmp/xpdf/share/man/man1/pdftops.1
/usr/bin/install -c -m 644 ./doc/pdftotext.1 /tmp/xpdf/share/man/man1/pdftotext.1
/usr/bin/install -c -m 644 ./doc/pdfinfo.1 /tmp/xpdf/share/man/man1/pdfinfo.1
/usr/bin/install -c -m 644 ./doc/pdffonts.1 /tmp/xpdf/share/man/man1/pdffonts.1
/usr/bin/install -c -m 644 ./doc/pdfdetach.1 /tmp/xpdf/share/man/man1/pdfdetach.1
/usr/bin/install -c -m 644 ./doc/pdfimages.1 /tmp/xpdf/share/man/man1/pdfimages.1
mkdir -p /tmp/xpdf/share/man/man5
/usr/bin/install -c -m 644 ./doc/xpdfrc.5 /tmp/xpdf/share/man/man5/xpdfrc.5
mkdir -p /tmp/xpdf/etc
/usr/bin/install -c -m 644 ./doc/sample-xpdfrc /tmp/xpdf/etc/xpdfrc

dest.on error

Getting this error, I've already modified the source as was getting unable to find logger, so I changed it to require("./lib/logger") etc.. but now on.coffee isn't getting loaded (i'm assuming that fixes this thing?

Just a totally clean install originally

2013-11-23T05:11:21.367122+00:00 app[web.1]: stream.js:52
2013-11-23T05:11:21.367381+00:00 app[web.1]:   dest.on('drain', ondrain);
2013-11-23T05:11:21.368311+00:00 app[web.1]:        ^
2013-11-23T05:11:21.393470+00:00 app[web.1]:     at Request.<anonymous> (native)
2013-11-23T05:11:21.393470+00:00 app[web.1]:     at Request.emit (events.js:70:17)
2013-11-23T05:11:21.393657+00:00 app[web.1]:     at Request.<anonymous> (/app/node_modules/cradle/node_modules/request/main.js:521:16)
2013-11-23T05:11:21.336890+00:00 app[web.1]: [f794b0b3-a1c8-4102-a5a7-8cafdba968aa] saving to couchdb
2013-11-23T05:11:21.364660+00:00 app[web.1]: [f794b0b3-a1c8-4102-a5a7-8cafdba968aa] ERROR: undefined
2013-11-23T05:11:21.393470+00:00 app[web.1]:     at /app/web.coffee:51:23
2013-11-23T05:11:21.393470+00:00 app[web.1]: TypeError: Cannot call method 'on' of undefined
2013-11-23T05:11:21.362700+00:00 app[web.1]: [f794b0b3-a1c8-4102-a5a7-8cafdba968aa] saving attachment - [id:undefined rev:undefined]
2013-11-23T05:11:21.393470+00:00 app[web.1]:     at Request._callback (/app/node_modules/cradle/lib/cradle.js:201:9)
2013-11-23T05:11:21.393470+00:00 app[web.1]:     at /app/web.coffee:87:16
2013-11-23T05:11:21.365432+00:00 app[web.1]: 10.145.203.39 - - [Sat, 23 Nov 2013 05:11:21 GMT] "POST /make HTTP/1.1" 404 - "-" "Ruby"
2013-11-23T05:11:21.393470+00:00 app[web.1]:     at /app/node_modules/cradle/lib/cradle/database/documents.js:145:30
2013-11-23T05:11:21.393470+00:00 app[web.1]:     at [object Object].pipe (stream.js:52:8)
2013-11-23T05:11:21.393470+00:00 app[web.1]:     at /app/node_modules/cradle/lib/cradle/database/documents.js:62:21
2013-11-23T05:11:21.393470+00:00 app[web.1]:     at Request.callback (/app/node_modules/cradle/node_modules/request/main.js:119:22)
2013-11-23T05:11:22.706958+00:00 heroku[web.1]: State changed from up to crashed

Build a project with cmake

I'm trying to build a project that uses cmake instead of configure. It fails with:

sh: cmake: not found

Do I seriously need to build cmake with vulcan and provide a URL for the dependency? Cmake seems like a pretty common build tool. Can vulcan support it please?

App Crashes on launch due to missing cloudant addon

I didn't realize this was a dependency and it took me about an hour to track down what was going on.

# lib/cloudant.coffee
  6   if parsed = url.parse(process.env.CLOUDANT_URL)

The CLOUDANT_URL isn't defined if you don't have the cloudant add-on installed.

I now see that this is required in the readme, but it's not at all clear. The fact that a particular add-on is required to use vulcan should be at the TOP of the readme, and/or the app should be configured to raise a "heroku addons:add cloudant is required."

Alternatively isn't there a way to make the procfile require certain add-ons?

I have been using heroku for about a day so I won't claim to know the ideal way to handle this, but certainly a required dependency shouldn't be so hard to figure out for end-users.

Build interrupted after Timeout Error

I am building ffmpeg with few dependencies. It ends on error: rescue in rbuf_fill': Timeout::Error (Timeout::Error)

here is command I use to build it.

vulcan build -v -s . -p /tmp -d http://vulcan-vladimeeer.herokuapp.com/output/2abeb639-b197-4612-8307-7a0dd76da617 http://vulcan-vladimeeer.herokuapp.com/output/ec6654aa-19b8-48b5-8c8a-0c0d8a3d2085 http://vulcan-vladimeeer.herokuapp.com/output/b00f4148-6200-4bbe-96e3-24532ec4c554 http://vulcan-vladimeeer.herokuapp.com/output/2157fb7b-f6a6-4c1e-b765-7665e7c4a7e7 http://vulcan-vladimeeer.herokuapp.com/output/1c6165a4-1ba8-400b-b747-11f4f63c0a0c http://vulcan-vladimeeer.herokuapp.com/output/bdf6a219-e2a9-4426-982a-09d980eab284 http://vulcan-vladimeeer.herokuapp.com/output/79b43067-b560-466f-96a5-51c4df8afb2b -c "./configure --enable-shared --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-libfreetype --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libvpx --enable-libvorbis --prefix=/tmp && make && make install"

How could I set longer timeout for dependencies? Is it possible to download dependencies prepare them into ffmpeg folder and upload them before compiling?

Vulcan strips the last part of the version string.

This means that tools have to account for it and hope that it's right when:

Downloading build artifacts to: /tmp/nginx-1.2.tgz

It would be nice if Vulcan did not alter the name so multiple builds can be stored by version rather than the minor version. When I give it the folder sources/nginx-1.2.8 I would like to get back nginx-1.2.8.tgz or more preferably a tar.gz but no big deal on that part.

Error while installing a gem on a windows XP platform.

I'm receiving an error during the gem installation process. The verbose output looks like the following:

GET http://rubygems.org/specs.4.8.gz
302 Found
GET http://production.s3.rubygems.org/specs.4.8.gz
304 Not Modified
GET http://rubygems.org/latest_specs.4.8.gz
302 Found
GET http://production.s3.rubygems.org/latest_specs.4.8.gz
304 Not Modified
Installing gem vulcan-0.3.0
Using local gem C:/Ruby193/lib/ruby/gems/1.9.1/cache/vulcan-0.3.0.gem
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/bin/vulcan
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/lib/vulcan/cli.rb
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/lib/vulcan/version.rb
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/lib/vulcan.rb
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/README.md
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/bin/make
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/lib/on.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/lib/spawner.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/History.md
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/index.html
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/index.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/lib/connect-form.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/LICENSE
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/Makefile
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/benchmark/bench-multipart-parser.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/example/post.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/example/upload.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/index.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/lib/file.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/lib/incoming_form.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/lib/index.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/lib/multipart_parser.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/lib/querystring_parser.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/lib/util.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/Makefile
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/package.json
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/Readme.md
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/test/common.js
C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/test/fast/test-incoming-form.js
ERROR: While executing gem ... (Errno::EINVAL)
Invalid argument - C:/Ruby193/lib/ruby/gems/1.9.1/gems/vulcan-0.3.0/server/node_modules/connect-form/node_modules/formidable/test/fixture/file/:

App crashes immediately

The following is the tail of heroku logs for my vulcan app as I restart it:

2012-03-21T18:42:16+00:00 heroku[web.1]: State changed from crashed to created 2012-03-21T18:42:16+00:00 heroku[web.1]: State changed from created to starting 2012-03-21T18:42:19+00:00 heroku[web.1]: Starting process with commandnode web.js 2012-03-21T18:42:19+00:00 app[web.1]: listening on port 23990 2012-03-21T18:42:19+00:00 app[web.1]: 2012-03-21T18:42:19+00:00 app[web.1]: /app/node_modules/cradle/lib/cradle.js:198 2012-03-21T18:42:19+00:00 app[web.1]: return callback(body); 2012-03-21T18:42:19+00:00 app[web.1]: ^ 2012-03-21T18:42:19+00:00 app[web.1]: TypeError: undefined is not a function 2012-03-21T18:42:19+00:00 app[web.1]: at Request._callback (/app/node_modules/cradle/lib/cradle.js:198:20) 2012-03-21T18:42:19+00:00 app[web.1]: at Request.callback (/app/node_modules/cradle/node_modules/request/main.js:119:22) 2012-03-21T18:42:19+00:00 app[web.1]: at Request.<anonymous> (/app/node_modules/cradle/node_modules/request/main.js:525:16) 2012-03-21T18:42:19+00:00 app[web.1]: at Request.emit (events.js:67:17) 2012-03-21T18:42:19+00:00 app[web.1]: at IncomingMessage.<anonymous> (/app/node_modules/cradle/node_modules/request/main.js:484:14) 2012-03-21T18:42:19+00:00 app[web.1]: at IncomingMessage.emit (events.js:88:20) 2012-03-21T18:42:19+00:00 app[web.1]: at HTTPParser.onMessageComplete (http.js:137:23) 2012-03-21T18:42:19+00:00 app[web.1]: at Socket.ondata (http.js:1150:24) 2012-03-21T18:42:19+00:00 app[web.1]: at TCP.onread (net.js:354:27) 2012-03-21T18:42:20+00:00 heroku[web.1]: Process exited with status 1 2012-03-21T18:42:20+00:00 heroku[web.1]: State changed from starting to crashed

app doesnt run

I'm trying to build lua using vulcan, but I am having trouble even getting the vulcan app to run.

This is the log after running vulcan update

2012-02-04T19:35:15+00:00 heroku[api]: Release v14 created by [email protected]
2012-02-04T19:35:15+00:00 heroku[web.1]: State changed from crashed to created
2012-02-04T19:35:15+00:00 heroku[web.1]: State changed from created to starting
2012-02-04T19:35:15+00:00 heroku[web.1]: Process exited
2012-02-04T19:35:18+00:00 heroku[web.1]: State changed from starting to crashed
2012-02-04T19:35:17+00:00 heroku[web.1]: Starting process with command `node web.js`
2012-02-04T19:35:17+00:00 app[web.1]:               ^
2012-02-04T19:35:17+00:00 app[web.1]:     at Module._compile (module.js:432:26)
2012-02-04T19:35:17+00:00 app[web.1]:     at Object.urlParse [as parse] (url.js:92:11)
2012-02-04T19:35:17+00:00 app[web.1]:     at Object..js (module.js:450:10)
2012-02-04T19:35:17+00:00 app[web.1]:     at Object.<anonymous> (/app/web.js:24:34)
2012-02-04T19:35:17+00:00 app[web.1]:         throw e; // process.nextTick error, or 'error' event on first tick
2012-02-04T19:35:17+00:00 app[web.1]:     at Module.load (module.js:351:31)
2012-02-04T19:35:17+00:00 app[web.1]: node.js:201
2012-02-04T19:35:17+00:00 app[web.1]: TypeError: Parameter 'url' must be a string, not undefined
2012-02-04T19:35:17+00:00 app[web.1]:     at Array.0 (module.js:470:10)
2012-02-04T19:35:17+00:00 app[web.1]: 
2012-02-04T19:35:17+00:00 app[web.1]:     at EventEmitter._tickCallback (node.js:192:40)
2012-02-04T19:35:17+00:00 app[web.1]:     at Function._load (module.js:310:12)
2012-02-04T19:35:19+00:00 heroku[web.1]: Process exited

Errors building node 0.6.x with vulcan

I ran into trouble trying to create a custom nodejs build pack, as i dug in it seems the problem is actually building node with vulcan.

Here is the minimum repro case:

# install vulcan 0.1.5
gem install vulcan 

# create vulcan server
vulcan create my-vulcan-server

# download and extract node
curl http://nodejs.org/dist/node-v0.6.4.tar.gz -o node.tgz
tar xzvf node.tgz

# build with vulcan
cd node-v0.6.4
build -v -o ~/vulcan_output/node-0.6.4.tgz

Here is what i'm seeing:

Output file contains:

{"error":"not_found","reason":"Document is missing attachment"}

Digging in, it seems db.saveAttachment in web.js is failing with a 409 "Document update conflict." trying to save the input.
This is odd because when I check the doc in futon the input attachment is there and the version has been bumped to 2-xxxx

If I ignore the error from saveAttachment and press on, i see the same 409 conflict error when bin/make tries to attach the output, although in that case the output is not actually saved (possibly because when bin/make is getting the doc it's getting it back with the 1-xxx version?)

At first i thought this was a cloudant issue, but a simple test that does a cradle save + saveAttachement with a 10mb gz file worked against my vulcan servers cloudant instance (when running from my local machine).

Not sure where to go from here, but happy to keep investigating if you point me in the right direction.

`make` fails

Running make fails

/usr/local/lib/ruby/1.9.1/cgi/util.rb:7:in escape': undefined methodgsub' for nil:NilClass (NoMethodError)
from /app/vendor/gems/gems/couchrest-1.1.2/lib/couchrest/database.rb:375:in escape_docid' from /app/vendor/gems/gems/couchrest-1.1.2/lib/couchrest/database.rb:80:inget'
from /app/bin/vulcan-make:19:in block (2 levels) in <main>' from /app/bin/vulcan-make:18:inchdir'
from /app/bin/vulcan-make:18:in block in <main>' from /usr/local/lib/ruby/1.9.1/tmpdir.rb:83:inmktmpdir'
from /app/bin/vulcan-make:17:in `

'

`rescue in transmit': Request Timeout

I get this every time I try to build PHP via vulcan for my PHP Buildpack (see ./support/package_php).

/app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:184:in `rescue in transmit': Request Timeout (RestClient::RequestTimeout)
    from /app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:140:in `transmit'
    from /app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:64:in `execute'
    from /app/vendor/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:33:in `execute'
    from /app/vendor/gems/gems/couchrest-1.1.2/lib/couchrest/rest_api.rb:89:in `execute'
    from /app/vendor/gems/gems/couchrest-1.1.2/lib/couchrest/rest_api.rb:50:in `put'
    from /app/vendor/gems/gems/couchrest-1.1.2/lib/couchrest/database.rb:316:in `put_attachment'
    from /app/vendor/gems/gems/couchrest-1.1.2/lib/couchrest/helper/attachments.rb:8:in `put_attachment'
    from bin/vulcan-make:74:in `block (2 levels) in <main>'
    from bin/vulcan-make:18:in `chdir'
    from bin/vulcan-make:18:in `block in <main>'
    from /usr/local/lib/ruby/1.9.1/tmpdir.rb:83:in `mktmpdir'
    from bin/vulcan-make:17:in `<main>'
>> Downloading build artifacts to: /var/folders/5t/bl8h70sn58x9mbd9tmb28t0w0000gn/T/php_xxxx.bBeGlZwT/php-5.3.25.tgz
   (available at http://chh-buildserver.herokuapp.com/output/e4ed77a6-c956-47bc-86d4-59b93f23c33c)
503 Service Unavailable: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
      <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
      <style type="text/css">
        html, body, iframe { margin: 0; padding: 0; height: 100%; }
        iframe { display: block; width: 100%; border: none; }
      </style>
    <title>Application Error</title></head>
    </head>
    <body>
      <iframe src="//s3.amazonaws.com/heroku_pages/error.html">
        <p>Application Error</p>
      </iframe>
    </body>
    </html>

Newly created Vulcan Build Server crashes and stays crashed. Vulcan build error not helpful.

  1. vulcan create <app> proceeds with warnings
  2. heroku ps <app> delivers the bad news it's crashed!
  3. Ominous stuff in the logs (see below)

What to do? Switch to heroku-anvil?

$ vulcan create zettacal-vulcan
Creating zettacal-vulcan... done, stack is cedar
http://zettacal-vulcan.herokuapp.com/ | [email protected]:zettacal-vulcan.git
Initialized empty Git repository in /private/var/folders/jg/_01lx50x3tngs9br0dkmq_mh0000gn/T/d20130116-16474-m9929k/.git/
Counting objects: 884, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (804/804), done.
Writing objects: 100% (884/884), 1013.10 KiB | 49 KiB/s, done.
Total 884 (delta 83), reused 0 (delta 0)
-----> Node.js app detected
-----> Resolving engine versions
       Using Node.js version: 0.6.20
       Using npm version: 1.1.4
-----> Fetching Node.js binaries
-----> Vendoring node into slug
-----> Installing dependencies with npm
       npm WARN [email protected] package.json: bugs['name'] should probably be bugs['url']
       npm WARN [email protected] package.json: bugs['name'] should probably be bugs['url']
       npm WARN prefer global [email protected] should be installed with -g
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/coffee-script
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/connect-form
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/connect-form/node_modules/formidable
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/cradle
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/cradle/node_modules/follow
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/cradle/node_modules/follow/node_modules/request
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/cradle/node_modules/request
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/cradle/node_modules/vargs
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/express
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/express/node_modules/connect
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/express/node_modules/qs
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/express/node_modules/mime
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/express/node_modules/connect/node_modules/formidable
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/express/node_modules/mkdirp
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/knox
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/node-uuid
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/nodemon
       [email protected] /tmp/build_2kijj1jv61nrm/node_modules/restler
       Dependencies installed
-----> Building runtime environment
-----> Discovering process types
       Procfile declares types -> web
-----> Compiled slug size: 4.1MB
-----> Launching... done, v4
       http://zettacal-vulcan.herokuapp.com deployed to Heroku

To [email protected]:zettacal-vulcan.git
 * [new branch]      master -> master

$ heroku ps --app zettacal-vulcan
=== web: `bin/web`
web.1: crashed 2013/01/16 20:34:14 (~ 48s ago)


From the logs:
2013-01-17T04:34:05+00:00 heroku[web.1]: Starting process with command `bin/web`
2013-01-17T04:34:06+00:00 app[web.1]:     at Object.urlParse [as parse] (url.js:92:11)
2013-01-17T04:34:06+00:00 app[web.1]:     at /app/node_modules/coffee-script/lib/coffee-script/command.js:175:29
2013-01-17T04:34:06+00:00 app[web.1]:     at Object.<anonymous> (/app/web.coffee:22:28)
2013-01-17T04:34:06+00:00 app[web.1]:     at /app/node_modules/coffee-script/lib/coffee-script/command.js:150:18
2013-01-17T04:34:06+00:00 app[web.1]:     at Object.run (/app/node_modules/coffee-script/lib/coffee-script/coffee-script.js:79:25)
2013-01-17T04:34:06+00:00 app[web.1]:     at Object.connect (/app/lib/cloudant.coffee:10:22)
2013-01-17T04:34:06+00:00 app[web.1]: TypeError: Parameter 'url' must be a string, not undefined
2013-01-17T04:34:06+00:00 app[web.1]:     at Object.<anonymous> (/app/web.coffee:121:4)
2013-01-17T04:34:06+00:00 app[web.1]:     at Module._compile (module.js:446:26)
2013-01-17T04:34:06+00:00 app[web.1]:     at [object Object].emit (events.js:64:17)
2013-01-17T04:34:06+00:00 app[web.1]:     at [object Object].<anonymous> (fs.js:123:5)
2013-01-17T04:34:07+00:00 heroku[web.1]: State changed from starting to crashed

My gem versions:

  • vulcan 0.8.1
  • heroku 2.32.8

By the way, when I run vulcan build ... the error isn't very helpful. It says Unknown error, no build output given (lib/vulcan/cli.rb:88)

Vulcan build error for memcached example

In following the example with memcached, once I run vulcan build, I get the following:

$ vulcan build
Packaging local directory... done
Uploading source package... !! Unknown error, no build output given

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.