NREL / api-umbrella

Open source API management platform
MIT License
2.03k stars 325 forks source link

Development Environment No Longer Working: Redis: TypeError: undefined is not a function #98

Closed darylrobbins closed 9 years ago

darylrobbins commented 9 years ago

The development environment was working less than a week ago but I am now getting an error when trying to run vagrant up.

Output from vagrant up:

==> default: Thank you for installing Chef!
==> default: Running provisioner: chef_solo...
==> default: Detected Chef (latest) is already installed
Generating chef JSON and uploading...
==> default: Running chef-solo...
==> default: [2015-02-04T00:58:32+00:00] INFO: Forking chef instance to converge...
==> default: [2015-02-04T00:58:32+00:00] WARN:
==> default: * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
==> default: SSL validation of HTTPS requests is disabled. HTTPS connections are still
==> default: encrypted, but chef is not able to detect forged replies or man in the middle
==> default: attacks.
==> default:
==> default: To fix this issue add an entry like this to your configuration file:
==> default:
==> default: ```
==> default:   # Verify all HTTPS connections (recommended)
==> default:   ssl_verify_mode :verify_peer
==> default:
==> default:   # OR, Verify only connections to chef-server
==> default:   verify_api_cert true
==> default: ```
==> default:
==> default: To check your SSL configuration, or troubleshoot errors, you can use the
==> default: `knife ssl check` command like so:
==> default:
==> default: ```
==> default:   knife ssl check -c /tmp/vagrant-chef/solo.rb
==> default: ```
==> default:
==> default: * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
==> default: Starting Chef Client, version 11.16.4
==> default: [2015-02-04T00:58:32+00:00] INFO: *** Chef 11.16.4 ***
==> default: [2015-02-04T00:58:32+00:00] INFO: Chef-client pid: 4642
==> default: [2015-02-04T00:58:34+00:00] INFO: Setting the run_list to ["recipe[api-umbrella::development]"] from CLI options
==> default: [2015-02-04T00:58:34+00:00] INFO: Run List is [recipe[api-umbrella::development]]
==> default: [2015-02-04T00:58:34+00:00] INFO: Run List expands to [api-umbrella::development]
==> default: [2015-02-04T00:58:34+00:00] INFO: Starting Chef Run for api.vagrant
==> default: [2015-02-04T00:58:34+00:00] INFO: Running start handlers
==> default: [2015-02-04T00:58:34+00:00] INFO: Start handlers complete.
==> default: Compiling Cookbooks...
==> default: [2015-02-04T00:58:34+00:00] INFO: WindowsPackage lightweight resource already initialized -- overriding!
==> default: Converging 32 resources
==> default: Recipe: build-essential::_rhel
==> default:
==> default: * package[autoconf] action install
==> default: [2015-02-04T00:58:49+00:00] INFO: package[autoconf] installing autoconf-2.63-5.1.el6 from base repository
==> default:
==> default:     - install version 2.63-5.1.el6 of package autoconf
==> default:
==> default:
==> default:   * package[bison] action install
==> default: [2015-02-04T00:58:53+00:00] INFO: package[bison] installing bison-2.4.1-5.el6 from base repository
==> default:
==> default:     - install version 2.4.1-5.el6 of package bison
==> default:
==> default:   * package[flex] action install
==> default: [2015-02-04T00:58:56+00:00] INFO: package[flex] installing flex-2.5.35-9.el6 from base repository
==> default:     - install version 2.5.35-9.el6 of package flex
==> default:
==> default:   * package[gcc] action install
==> default:  (up to date)
==> default:   * package[gcc-c++] action install
==> default:  (up to date)
==> default:   * package[kernel-devel] action install
==> default:  (up to date)
==> default:   * package[make] action install
==> default:  (up to date)
==> default:   * package[m4] action install
==> default:  (up to date)
==> default:   * package[patch] action install
==> default: [2015-02-04T00:58:58+00:00] INFO: package[patch] installing patch-2.6-6.el6 from base repository
==> default:
==> default: - install version 2.6-6.el6 of package patch
==> default:
==> default: Recipe: curl::libcurl
==> default:   * package[curl-devel] action upgrade
==> default: [2015-02-04T00:59:04+00:00] WARN: package[curl-devel] matched multiple Provides for curl-devel but we can only use the first match: libcurl-devel. Please use a more specific version.
==> default: [2015-02-04T00:59:04+00:00] INFO: package[curl-devel] installing libcurl-devel-7.19.7-40.el6_6.4 from updates repository
==> default: [2015-02-04T00:59:09+00:00] INFO: package[curl-devel] upgraded from uninstalled to 7.19.7-40.el6_6.4
==> default:
==> default:     - upgrade package libcurl-devel from uninstalled to 7.19.7-40.el6_6.4
==> default:
==> default:
==> default: Recipe: git::default
==> default:   * package[git] action install
==> default: [2015-02-04T00:59:09+00:00] INFO: package[git] installing git-1.7.1-3.el6_4.1 from base repository
==> default:     - install version 1.7.1-3.el6_4.1 of package git
==> default:
==> default:
==> default: Recipe: sudo::default
==> default:   * package[sudo] action install
==> default:  (skipped due to not_if)
==> default:   * directory[/etc/sudoers.d] action create
==> default: [2015-02-04T00:59:19+00:00] INFO: directory[/etc/sudoers.d] mode changed to 755
==> default:
==> default: - change mode from '0750' to '0755'
==> default:
==> default:
==> default:   * cookbook_file[/etc/sudoers.d/README] action create
==> default: [2015-02-04T00:59:19+00:00] INFO: cookbook_file[/etc/sudoers.d/README] created file /etc/sudoers.d/README
==> default:
==> default:
==> default: - create new file /etc/sudoers.d/README
==> default: [2015-02-04T00:59:19+00:00] INFO: cookbook_file[/etc/sudoers.d/README] updated file contents /etc/sudoers.d/README
==> default:
==> default: - update content in file /etc/sudoers.d/README from none to 9ded17
==> default:
==> default:
==> default: --- /etc/sudoers.d/README  2015-02-04 00:59:19.384892200 +0000
==> default:     +++ /tmp/.README20150204-4642-uvj58e   2015-02-04 00:59:19.416908200 +0000
==> default:     @@ -1 +1,18 @@
==> default:
==> default:     +#
==> default:
==> default:
==> default: +# As of Debian version 1.7.2p1-1, the default /etc/sudoers file created on
==> default:     +# installation of the package now includes the directive:
==> default:
==> default: +#
==> default:     +#       #includedir /etc/sudoers.d
==> default:
==> default:
==> default: +#
==> default:
==> default:     +# This will cause sudo to read and parse any files in the /etc/sudoers.d
==> default:
==> default: +# directory that do not end in '~' or contain a '.' character.
==> default:     +#
==> default:
==> default: +# Note that there must be at least one file in the sudoers.d directory (this
==> default:
==> default: +# one will do), and all files in this directory should be mode 0440.
==> default:     +#
==> default:     +# Note also, that because sudoers contents can vary widely, no attempt is
==> default:     +# made to add this directive to existing sudoers files on upgrade.  Feel free
==> default:
==> default: +# to add the above directive to the end of your /etc/sudoers file to enable
==> default:     +# this functionality for existing installations if you wish!
==> default:
==> default:     +#
==> default: [2015-02-04T00:59:19+00:00] INFO: cookbook_file[/etc/sudoers.d/README] owner changed to 0
==> default: [2015-02-04T00:59:19+00:00] INFO: cookbook_file[/etc/sudoers.d/README] group changed to 0
==> default: [2015-02-04T00:59:19+00:00] INFO: cookbook_file[/etc/sudoers.d/README] mode changed to 440
==> default:
==> default: - change mode from '' to '0440'
==> default:
==> default: - change owner from '' to 'root'
==> default:     - change group from '' to 'root'
==> default:
==> default:
==> default:   * template[/etc/sudoers] action create
==> default: [2015-02-04T00:59:19+00:00] INFO: template[/etc/sudoers] backed up to /var/chef/backup/etc/sudoers.chef-20150204005919.443372
==> default: [2015-02-04T00:59:19+00:00] INFO: template[/etc/sudoers] updated file contents /etc/sudoers
==> default:
==> default:
==> default: - update content in file /etc/sudoers from add4ce to c5c849
==> default:
==> default:     --- /etc/sudoers   2014-05-04 16:28:47.170566520 +0000
==> default:     +++ /tmp/chef-rendered-template20150204-4642-1wjq8kt   2015-02-04 00:59:19.437918700 +0000
==> default:     @@ -1,119 +1,16 @@
==> default:
==> default:     -## Sudoers allows particular users to run various commands as
==> default:
==> default: -## the root user, without needing the root password.
==> default:
==> default: -##
==> default:
==> default:
==> default: -## Examples are provided at the bottom of the file for collections
==> default:
==> default:
==> default: -## of related commands, which can then be delegated out to particular
==> default:     -## users or groups.
==> default:
==> default:     -##
==> default:
==> default:     -## This file must be edited with the 'visudo' command.
==> default:     +# This file is managed by Chef.
==> default:     +# Do NOT modify this file directly.
==> default:
==> default:
==> default:     -## Host Aliases
==> default:
==> default: -## Groups of machines. You may prefer to use hostnames (perhaps using
==> default:
==> default: -## wildcards for entire domains) or IP addresses instead.
==> default:
==> default:     -# Host_Alias     FILESERVERS = fs1, fs2
==> default:     -# Host_Alias     MAILSERVERS = smtp, smtp2
==> default:     +Defaults      !env_reset
==> default:     +Defaults      !secure_path
==> default:
==> default:
==> default:
==> default: -## User Aliases
==> default:     -## These aren't often necessary, as you can use regular groups
==> default:
==> default: -## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname
==> default:
==> default: -## rather than USERALIAS
==> default:     -# User_Alias ADMINS = jsmith, mikem
==> default:     +# User privilege specification
==> default:     +root          ALL=(ALL) ALL
==> default:
==> default:
==> default:
==> default:     -## Command Aliases
==> default:     -## These are groups of related commands...
==> default:
==> default:     -## Networking
==> default:
==> default:     -# Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, /sbin/mii-tool
==> default:     +# Members of the group 'sysadmin' may gain root privileges
==> default:
==> default: +%sysadmin ALL=(ALL) ALL
==> default:
==> default:
==> default: -## Installation and management of software
==> default:
==> default: -# Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum
==> default:     -
==> default:     -## Services
==> default:
==> default: -# Cmnd_Alias SERVICES = /sbin/service, /sbin/chkconfig
==> default:     -
==> default:
==> default:     -## Updating the locate database
==> default:
==> default:
==> default: -# Cmnd_Alias LOCATE = /usr/bin/updatedb
==> default:
==> default: -
==> default:
==> default: -## Storage
==> default:
==> default: -# Cmnd_Alias STORAGE = /sbin/fdisk, /sbin/sfdisk, /sbin/parted, /sbin/partprobe, /bin/mount, /bin/umount
==> default:     -
==> default:     -## Delegating permissions
==> default:
==> default:     -# Cmnd_Alias DELEGATING = /usr/sbin/visudo, /bin/chown, /bin/chmod, /bin/chgrp
==> default:
==> default:     -
==> default:
==> default:     -## Processes
==> default:
==> default:     -# Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall
==> default:     -
==> default:     -## Drivers
==> default:     -# Cmnd_Alias DRIVERS = /sbin/modprobe
==> default:     -
==> default:
==> default:     -# Defaults specification
==> default:
==> default:
==> default: -
==> default:     -#
==> default:     -# Disable "ssh hostname sudo <cmd>", because it will show the password in clear.
==> default:
==> default:     -#         You have to run "ssh -t hostname sudo <cmd>".
==> default:     -#
==> default:
==> default:     -#Defaults requiretty
==> default:     -
==> default:     -#
==> default:     -# Refuse to run if unable to disable echo on the tty. This setting should also be
==> default:
==> default: -#Defaults requiretty above.
==> default:
==> default:     -#
==> default:
==> default:     -Defaults   !visiblepw
==> default:     -
==> default:
==> default: -#
==> default:
==> default: -# Preserving HOME has security implications since many programs
==> default:     -# use it when searching for configuration files. Note that HOME
==> default:
==> default:
==> default: -# is already set when the the env_reset option is enabled, so
==> default:     -# this option is only effective for configurations where either
==> default:
==> default:     -# env_reset is disabled or HOME is present in the env_keep list.
==> default:
==> default: -#
==> default:     -Defaults    always_set_home
==> default:
==> default:     -
==> default:
==> default:     -Defaults    env_reset
==> default:     -Defaults    env_keep =  "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS"
==> default:
==> default: -Defaults    env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
==> default:     -Defaults    env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
==> default:
==> default: -Defaults    env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
==> default:     -Defaults    env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
==> default:
==> default:     -
==> default:
==> default: -#
==> default:     -# Adding HOME to env_keep may enable a user to run unrestricted
==> default:     -# commands via sudo.
==> default:     -#
==> default:
==> default: -# Defaults   env_keep += "HOME"
==> default:
==> default:     -
==> default:
==> default: -Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin
==> default:     -
==> default:
==> default:     -## Next comes the main part: which users can run what software on
==> default:     -## which machines (the sudoers file can be shared between multiple
==> default:     -## systems).
==> default:     -## Syntax:
==> default:     -##
==> default:     -##    user    MACHINE=COMMANDS
==> default:
==> default: -##
==> default:
==> default: -## The COMMANDS section may have other options added to it.
==> default:
==> default: -##
==> default:
==> default:
==> default: -## Allow root to run any commands anywhere
==> default:
==> default: -root  ALL=(ALL)   ALL
==> default:     -
==> default:
==> default:
==> default: -## Allows members of the 'sys' group to run networking, software,
==> default:     -## service management apps and more.
==> default:
==> default:     -# %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS
==> default:
==> default:     -
==> default:
==> default:
==> default: -## Allows people in group wheel to run all commands
==> default:
==> default:     -# %wheel  ALL=(ALL)   ALL
==> default:     -
==> default:
==> default:
==> default: -## Same thing without a password
==> default:     -# %wheel  ALL=(ALL)   NOPASSWD: ALL
==> default:
==> default:
==> default: -
==> default:
==> default:     -## Allows members of the users group to mount and unmount the
==> default:
==> default:
==> default: -## cdrom as root
==> default:
==> default:
==> default: -# %users  ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom
==> default:
==> default: -
==> default:
==> default: -## Allows members of the users group to shutdown this system
==> default:     -# %users  localhost=/sbin/shutdown -h now
==> default:
==> default: -
==> default:
==> default: -## Read drop-in files from /etc/sudoers.d (the # here does not mean a comment)
==> default:      #includedir /etc/sudoers.d
==> default:
==> default:
==> default: Recipe: api-umbrella::development
==> default:   * service[iptables] action stop
==> default: [2015-02-04T00:59:19+00:00] INFO: service[iptables] stopped
==> default:
==> default: - stop service service[iptables]
==> default:
==> default:
==> default:   * service[iptables] action disable
==> default: [2015-02-04T00:59:19+00:00] INFO: service[iptables] disabled
==> default:
==> default:
==> default: - disable service service[iptables]
==> default:
==> default:
==> default:   * service[ip6tables] action stop
==> default: [2015-02-04T00:59:20+00:00] INFO: service[ip6tables] stopped
==> default:     - stop service service[ip6tables]
==> default:
==> default:
==> default:
==> default: * service[ip6tables] action disable
==> default: [2015-02-04T00:59:20+00:00] INFO: service[ip6tables] disabled
==> default:
==> default:     - disable service service[ip6tables]
==> default:
==> default:
==> default:   * execute[git clone https://github.com/NREL/api-umbrella-gatekeeper.git /vagrant/workspace/gatekeeper] action run
==> default:  (skipped due to not_if)
==> default:   * execute[git clone https://github.com/NREL/api-umbrella-router.git /vagrant/workspace/router] action run
==> default:  (skipped due to not_if)
==> default:   * execute[git clone https://github.com/NREL/api-umbrella-static-site.git /vagrant/workspace/static-site] action run
==> default:  (skipped due to not_if)
==> default:   * execute[git clone https://github.com/NREL/api-umbrella-web.git /vagrant/workspace/web] action run
==> default:  (skipped due to not_if)
==> default:   * template[/etc/profile.d/api_umbrella_development.sh] action create
==> default: [2015-02-04T00:59:20+00:00] INFO: template[/etc/profile.d/api_umbrella_development.sh] created file /etc/profile.d/api_umbrella_development.sh
==> default:
==> default:     - create new file /etc/profile.d/api_umbrella_development.sh
==> default: [2015-02-04T00:59:20+00:00] INFO: template[/etc/profile.d/api_umbrella_development.sh] updated file contents /etc/profile.d/api_umbrella_development.sh
==> default:
==> default:
==> default: - update content in file /etc/profile.d/api_umbrella_development.sh from none to 15b64b
==> default:
==> default:     --- /etc/profile.d/api_umbrella_development.sh 2015-02-04 00:59:20.718558699 +0000
==> default:
==> default:
==> default: +++ /tmp/chef-rendered-template20150204-4642-1qipqco   2015-02-04 00:59:20.720559699 +0000
==> default:
==> default:     @@ -1 +1,2 @@
==> default:
==> default:     +export PATH="/vagrant/workspace/router/bin:/opt/api-umbrella/sbin:/opt/api-umbrella/bin:/opt/api-umbrella/embedded/sbin:/opt/api-umbrella/embedded/bin:$PATH"
==> default: [2015-02-04T00:59:20+00:00] INFO: template[/etc/profile.d/api_umbrella_development.sh] owner changed to 0
==> default: [2015-02-04T00:59:20+00:00] INFO: template[/etc/profile.d/api_umbrella_development.sh] group changed to 0
==> default: [2015-02-04T00:59:20+00:00] INFO: template[/etc/profile.d/api_umbrella_development.sh] mode changed to 644
==> default:
==> default: - change mode from '' to '0644'
==> default:
==> default:     - change owner from '' to 'root'
==> default:
==> default:     - change group from '' to 'root'
==> default:
==> default:
==> default: Recipe: api-umbrella::default
==> default:   * remote_file[api-umbrella-package] action create
==> default: [2015-02-04T00:59:20+00:00] INFO: remote_file[api-umbrella-package] created file /var/chef/cache/api-umbrella-0.6.0-1.el6.x86_64.rpm
==> default:
==> default:     - create new file /var/chef/cache/api-umbrella-0.6.0-1.el6.x86_64.rpm
==> default: [2015-02-04T01:00:49+00:00] INFO: remote_file[api-umbrella-package] updated file contents /var/chef/cache/api-umbrella-0.6.0-1.el6.x86_64.rpm
==> default:
==> default:     - update content in file /var/chef/cache/api-umbrella-0.6.0-1.el6.x86_64.rpm from none to 58efa3
==> default:     (file sizes exceed 10000000 bytes, diff output suppressed)
==> default:
==> default:
==> default:   * package[api-umbrella] action install
==> default:
==> default:
==> default: - install version 0.6.0-1.el6 of package api-umbrella
==> default:
==> default:   * file[api-umbrella-package-cleanup] action delete
==> default: [2015-02-04T01:01:18+00:00] INFO: file[api-umbrella-package-cleanup] backed up to /var/chef/backup/var/chef/cache/api-umbrella-0.6.0-1.el6.x86_64.rpm.chef-20150204010117.989982
==> default: [2015-02-04T01:01:18+00:00] INFO: file[api-umbrella-package-cleanup] deleted file at /var/chef/cache/api-umbrella-0.6.0-1.el6.x86_64.rpm
==> default:
==> default: - delete file /var/chef/cache/api-umbrella-0.6.0-1.el6.x86_64.rpm
==> default:
==> default:
==> default:
==> default: * template[/etc/api-umbrella/api-umbrella.yml] action create
==> default: [2015-02-04T01:01:18+00:00] INFO: template[/etc/api-umbrella/api-umbrella.yml] backed up to /var/chef/backup/etc/api-umbrella/api-umbrella.yml.chef-20150204010118.511780
==> default: [2015-02-04T01:01:18+00:00] INFO: template[/etc/api-umbrella/api-umbrella.yml] updated file contents /etc/api-umbrella/api-umbrella.yml
==> default:
==> default:     - update content in file /etc/api-umbrella/api-umbrella.yml from 810aca to 5342c0
==> default:     --- /etc/api-umbrella/api-umbrella.yml 2014-10-27 16:34:59.000000000 +0000
==> default:
==> default:     +++ /tmp/chef-rendered-template20150204-4642-1jfmmf    2015-02-04 01:01:18.510425143 +0000
==> default:
==> default:     @@ -1,30 +1,8 @@
==> default:     -# services:
==> default:     -#   - general_db
==> default:     -#   - log_db
==> default:     -#   - router
==> default:     -#   - web
==> default:     -# web:
==> default:
==> default: -#   admin:
==> default:
==> default: -#     initial_superusers:
==> default:     -#       - your.email@example.com
==> default:     -#     auth_strategies:
==> default:     -#       enabled:
==> default:
==> default: -#         - github
==> default:     -#         - google
==> default:     -#         - persona
==> default:     -#       github:
==> default:     -#         client_id:
==> default:
==> default:     -#         client_secret:
==> default:
==> default: -#       google:
==> default:
==> default:     -#         client_id:
==> default:
==> default: -#         client_secret:
==> default:
==> default:     -# elasticsearch:
==> default:     -#   hosts:
==> default:
==> default: -#     - http://127.0.0.1:14002
==> default:
==> default:     -# mongodb:
==> default:
==> default: -#   url: mongodb://127.0.0.1:14001/api_umbrella
==> default:     -# nginx:
==> default:     -#   workers: 4
==> default:
==> default:     -# gatekeeper:
==> default:     -#   workers: 4
==> default:     +---
==> default:
==> default:     +app_env: development
==> default:
==> default:     +static_site:
==> default:     +  dir: /vagrant/workspace/static-site
==> default:     +web:
==> default:     +  dir: /vagrant/workspace/web
==> default:
==> default: +
==> default:
==> default:
==> default: Recipe: api-umbrella::development
==> default:   * bash[api_umbrella_permissions] action run
==> default: [2015-02-04T01:01:18+00:00] INFO: bash[api_umbrella_permissions] ran successfully
==> default:
==> default:     - execute "bash"  "/tmp/chef-script20150204-4642-1ghxisk"
==> default:
==> default:   * bash[api_umbrella_web_install] action run
==> default: [2015-02-04T01:07:10+00:00] INFO: bash[api_umbrella_web_install] ran successfully
==> default:
==> default:
==> default: - execute "bash"  "/tmp/chef-script20150204-4642-weanvx"
==> default:
==> default:
==> default:   * bash[api_umbrella_static_site_install] action run
==> default: [2015-02-04T01:07:33+00:00] INFO: bash[api_umbrella_static_site_install] ran successfully
==> default:
==> default:     - execute "bash"  "/tmp/chef-script20150204-4642-16huhbd"
==> default:
==> default:
==> default:   * bash[api_umbrella_gatekeeper_install] action run
==> default: [2015-02-04T01:07:38+00:00] INFO: bash[api_umbrella_gatekeeper_install] ran successfully
==> default:
==> default:     - execute "bash"  "/tmp/chef-script20150204-4642-1xogdzh"
==> default:
==> default:
==> default:   * bash[api_umbrella_router_install] action run
==> default: [2015-02-04T01:10:41+00:00] INFO: bash[api_umbrella_router_install] ran successfully
==> default:
==> default:
==> default: - execute "bash"  "/tmp/chef-script20150204-4642-nxu2ot"
==> default:
==> default:
==> default:   * service[api-umbrella] action enable
==> default: [2015-02-04T01:10:42+00:00] INFO: service[api-umbrella] enabled
==> default:
==> default:
==> default: - enable service service[api-umbrella]
==> default:
==> default:
==> default:   * service[api-umbrella] action start
==> default:
==> default:
==> default:     ================================================================================
==> default:     Error executing action `start` on resource 'service[api-umbrella]'
==> default:     ================================================================================
==> default:
==> default:     Mixlib::ShellOut::CommandTimeout
==> default:     --------------------------------
==> default:     Command timed out after 600s:
==> default:
==> default:     Command exceeded allowed execution time, process terminated
==> default:     ---- Begin output of /sbin/service api-umbrella start ----
==> default:     STDOUT: options.options is deprecated. Use options.args instead.
==> default:     Starting api-umbrella............... [FAIL]
==> default:
==> default:
==> default: Failed to start processes:
==> default:       gatekeeper1 (STARTING - /opt/api-umbrella/var/log/supervisor/gatekeeper1.log)
==> default:       gatekeeper2 (STARTING - /opt/api-umbrella/var/log/supervisor/gatekeeper2.log)
==> default:       gatekeeper3 (STARTING - /opt/api-umbrella/var/log/supervisor/gatekeeper3.log)
==> default:       gatekeeper4 (STARTING - /opt/api-umbrella/var/log/supervisor/gatekeeper4.log)
==> default:       log-processor (STARTING - /opt/api-umbrella/var/log/supervisor/log-processor.log)
==> default:       router-log-listener (FATAL - /opt/api-umbrella/var/log/supervisor/router-log-listener.log)
==> default:
==> default:       See /opt/api-umbrella/var/log/supervisor/supervisord_forever.log for more details
==> default:
==> default:
==> default:     Stopping api-umbrella... [  OK  ]
==> default:     error: Forever detected script exited with code: 1
==> default:     error: Script restart attempt #1
==> default:
==> default:     Starting api-umbrella............... [FAIL]
==> default:
==> default:
==> default:
==> default: Stopping api-umbrella...Failed to start processes:
==> default:       gatekeeper1 (BACKOFF - /opt/api-umbrella/var/log/supervisor/gatekeeper1.log)
==> default:       gatekeeper2 (BACKOFF - /opt/api-umbrella/var/log/supervisor/gatekeeper2.log)
==> default:       gatekeeper3 (BACKOFF - /opt/api-umbrella/var/log/supervisor/gatekeeper3.log)
==> default:       gatekeeper4 (STARTING - /opt/api-umbrella/var/log/supervisor/gatekeeper4.log)
==> default:
==> default:   log-processor (STARTING - /opt/api-umbrella/var/log/supervisor/log-processor.log)
==> default:       router-log-listener (FATAL - /opt/api-umbrella/var/log/supervisor/router-log-listener.log)
==> default:
==> default:       See /opt/api-umbrella/var/log/supervisor/supervisord_forever.log for more details
==> default:      [  OK  ]
==> default:     error: Forever detected script exited with code: 1
==> default:
==> default: STDERR:
==> default:     ---- End output of /sbin/service api-umbrella start ----
==> default:     Ran /sbin/service api-umbrella start returned
==> default:
==> default:
==> default:     Resource Declaration:
==> default:
==> default: ---------------------
==> default:     # In /tmp/vagrant-chef/4b8b3744b9a86c4c1999a67508cf0681/cookbooks/api-umbrella/recipes/development.rb
==> default:
==> default:
==> default:
==> default:     151: service "api-umbrella" do
==> default:     152:   supports :restart => true, :status => true, :reload => true
==> default:
==> default:
==> default: 153:   action [:enable, :start]
==> default:     154: end
==> default:
==> default:
==> default:
==> default:     Compiled Resource:
==> default:
==> default: ------------------
==> default:     # Declared in /tmp/vagrant-chef/4b8b3744b9a86c4c1999a67508cf0681/cookbooks/api-umbrella/recipes/development.rb:151:in `from_file'
==> default:
==> default:     service("api-umbrella") do
==> default:
==> default:   action [:enable, :start]
==> default:
==> default:   updated true
==> default:       supports {:restart=>true, :status=>true, :reload=>true}
==> default:       retries 0
==> default:       retry_delay 2
==> default:       guard_interpreter :default
==> default:
==> default:   service_name "api-umbrella"
==> default:       enabled true
==> default:       pattern "api-umbrella"
==> default:
==> default:       cookbook_name :"api-umbrella"
==> default:       recipe_name "development"
==> default:     end
==> default:
==> default:
==> default: [2015-02-04T01:23:00+00:00] INFO: Running queued delayed notifications before re-raising exception
==> default: [2015-02-04T01:23:00+00:00] INFO: template[/etc/api-umbrella/api-umbrella.yml] sending reload action to service[api-umbrella] (delayed)
==> default:   * service[api-umbrella] action reload
==> default:
==> default:
==> default:
==> default:     ================================================================================
==> default:     Error executing action `reload` on resource 'service[api-umbrella]'
==> default:     ================================================================================
==> default:
==> default:
==> default:     Mixlib::ShellOut::ShellCommandFailed
==> default:
==> default: ------------------------------------
==> default:     Expected process to exit with [0], but received '8'
==> default:     ---- Begin output of /sbin/service api-umbrella reload ----
==> default:     STDOUT: Reloading api-umbrella...
==> default:     STDERR: node.js:733
==> default:             throw errnoException(process._errno, 'kill');
==> default:
==> default:               ^
==> default:
==> default: Error: kill ESRCH
==> default:         at errnoException (node.js:544:13)
==> default:         at process.kill (node.js:733:15)
==> default:
==> default:     at /opt/api-umbrella/embedded/apps/router/releases/20141027161657/bin/api-umbrella:130:17
==> default:         at iterate (/opt/api-umbrella/embedded/apps/router/shared/node_modules/async/lib/async.js:149:13)
==> default:
==> default:         at Object.async.eachSeries (/opt/api-umbrella/embedded/apps/router/shared/node_modules/async/lib/async.js:165:9)
==> default:
==> default:
==> default:     at /opt/api-umbrella/embedded/apps/router/releases/20141027161657/bin/api-umbrella:129:13
==> default:
==> default:         at /opt/api-umbrella/embedded/apps/router/shared/node_modules/forever/lib/forever.js:612:5
==> default:         at /opt/api-umbrella/embedded/apps/router/shared/node_modules/forever/lib/forever.js:138:7
==> default:         at /opt/api-umbrella/embedded/apps/router/shared/node_modules/forever/node_modules/utile/node_modules/async/lib/async.js:232:13
==> default:
==> default:     at /opt/api-umbrella/embedded/apps/router/shared/node_modules/forever/node_modules/utile/node_modules/async/lib/async.js:119:25
==> default:
==> default: ---- End output of /sbin/service api-umbrella reload ----
==> default:     Ran /sbin/service api-umbrella reload returned 8
==> default:
==> default:
==> default:     Resource Declaration:
==> default:
==> default: ---------------------
==> default:
==> default: # In /tmp/vagrant-chef/4b8b3744b9a86c4c1999a67508cf0681/cookbooks/api-umbrella/recipes/development.rb
==> default:
==> default:     151: service "api-umbrella" do
==> default:     152:   supports :restart => true, :status => true, :reload => true
==> default:
==> default: 153:   action [:enable, :start]
==> default:
==> default:
==> default: 154: end
==> default:
==> default:
==> default:
==> default:
==> default:     Compiled Resource:
==> default:     ------------------
==> default:     # Declared in /tmp/vagrant-chef/4b8b3744b9a86c4c1999a67508cf0681/cookbooks/api-umbrella/recipes/development.rb:151:in `from_file'
==> default:
==> default:
==> default:
==> default:     service("api-umbrella") do
==> default:
==> default:   action [:enable, :start]
==> default:
==> default:       updated true
==> default:
==> default:   supports {:restart=>true, :status=>true, :reload=>true}
==> default:
==> default:   retries 0
==> default:       retry_delay 2
==> default:       guard_interpreter :default
==> default:
==> default:
==> default:   service_name "api-umbrella"
==> default:       enabled true
==> default:       pattern "api-umbrella"
==> default:
==> default:   cookbook_name :"api-umbrella"
==> default:       recipe_name "development"
==> default:     end
==> default:
==> default:
==> default:
==> default:
==> default: Running handlers:
==> default: [2015-02-04T01:23:00+00:00] ERROR: Running exception handlers
==> default: Running handlers complete
==> default:
==> default: [2015-02-04T01:23:00+00:00] ERROR: Exception handlers complete
==> default: [2015-02-04T01:23:00+00:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
==> default: Chef Client failed. 24 resources updated in 1468.114871898 seconds
==> default: [2015-02-04T01:23:00+00:00] ERROR: Chef::Exceptions::MultipleFailures
==> default: [2015-02-04T01:23:00+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
Chef never successfully completed! Any errors should be visible in the
output above. Please fix your recipes so that they properly complete.

Here is /opt/api-umbrella/var/log/supervisor/router-log-listener.log:

/opt/api-umbrella/embedded/apps/router/shared/node_modules/redis/index.js:602
                throw err;
                      ^
TypeError: undefined is not a function
    at _.extend.handleLogs (/opt/api-umbrella/embedded/apps/router/releases/20141027161657/lib/router_log_listener/worker.js:51:29)
    at RedisClient.<anonymous> (/opt/api-umbrella/embedded/apps/router/releases/20141027161657/lib/router_log_listener/worker.js:40:7)
    at RedisClient.emit (events.js:92:17)
    at RedisClient.on_ready (/opt/api-umbrella/embedded/apps/router/shared/node_modules/redis/index.js:373:10)
    at RedisClient.on_info_cmd (/opt/api-umbrella/embedded/apps/router/shared/node_modules/redis/index.js:406:14)
    at /opt/api-umbrella/embedded/apps/router/shared/node_modules/redis/index.js:430:14
    at try_callback (/opt/api-umbrella/embedded/apps/router/shared/node_modules/redis/index.js:592:9)
    at RedisClient.return_reply (/opt/api-umbrella/embedded/apps/router/shared/node_modules/redis/index.js:685:13)
    at ReplyParser.<anonymous> (/opt/api-umbrella/embedded/apps/router/shared/node_modules/redis/index.js:321:14)
    at ReplyParser.emit (events.js:95:17)
GUI commented 9 years ago

Sorry for the trouble.

I think I might know what's going on here. Do you have a newer version of the gatekeeper checked out in workspace/gatekeeper from master? But then I assume you haven't updated the workspace/router project?

If that's the case, then I think that explains it: there have been changes on master to both gatekeeper and router that are sort of tied together. So in your current development environment, I think you have a new version of the gatekeeper project, but not the corresponding updated version of the router project. Normally, you'd update the router project to master too, and then things would work, but in this case, you probably don't want to do that. The master version of the "router" project is dependent on new server-side package updates that will be part of the v0.7 package release, but that's still not out yet. So if you update the router project to master, then things will unfortunately be broken in a different way until we get the v0.7 packages out.

Here are probably the two easiest options:

  1. Rollback your gatekeeper checkout to this revision or before: https://github.com/NREL/api-umbrella-gatekeeper/commit/bd947f475c1b3388818f65b8dda1f96f4bca5023 Unfortunately, you'll then be missing out on your gatekeeper additions unless you want to do some git branching and cherry-picking.
  2. Temporarily disable the analytics log processing. This is a bit kludgy, and means you wouldn't be gathering analytics in your local dev environment, but it may work as a stopgap solution. You can do this by commenting out these lines inside workspace/router/templates/etc/supervisord.conf.hbs (in this file's case, comments are semi-colon prefixed lines, so the first line would look like ; [program:router-log-listener])

Let me know if either of those don't work for you, though.

And apologies for making master a bit messy to work with while we're in this limbo waiting for the v0.7 packages to be released. I'll try to get those released this weekend, which should also solve this problem, since then you'll be able to update the router project to master. The changes in master and v0.7 will actually help prevent this type of situation in the future, since the gatekeeper and router are less reliant on each other moving forward. We'll also take this as a good lesson not to merge things into master before we have packaged releases ready to go.

darylrobbins commented 9 years ago

To get the environment working:

Maybe creating a release branch during the release process would help avoid this kind of scenario in the future?

GUI commented 9 years ago

The v0.9 includes an updated vagrant box, which I think should help alleviate these type of issues moving forward.