Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Supervisor fails when starting localshop #10

Open
brianwallace opened this issue Jul 23, 2015 · 1 comment
Open

Supervisor fails when starting localshop #10

brianwallace opened this issue Jul 23, 2015 · 1 comment
Labels

Comments

@brianwallace
Copy link

I am unable to get supervisor to successfully start localshop when running under ubuntu-14.04. I have tried with multiple versions of localshop (including the default SHA in this cookbook) and get the same results.

I am testing using Kitchen CI: kitchen converge default-ubuntu-1404 and get the following stack.

Any ideas what I am doing wrong? At what point in time does the manual createsuperuser step need to be run?

           ================================================================================
           Error executing action `before_migrate` on resource 'application_python_django[localshop]'
       ================================================================================

           ArgumentError
           -------------


           Cookbook Trace:
       ---------------
           /tmp/kitchen/cache/cookbooks/application/libraries/default.rb:145:in `deploy_provider'
           /tmp/kitchen/cache/cookbooks/application/libraries/default.rb:155:in `release_path'
           /tmp/kitchen/cache/cookbooks/application/resources/default.rb:94:in `release_path'
           /tmp/kitchen/cache/cookbooks/application/libraries/default.rb:75:in `method_missing'
       /tmp/kitchen/cache/cookbooks/application_python/providers/django.rb:49:in `block in class_from_file'
           /tmp/kitchen/cache/cookbooks/application/providers/default.rb:185:in `block in run_actions_with_context'

       /tmp/kitchen/cache/cookbooks/application/providers/default.rb:182:in `run_actions_with_context'
           /tmp/kitchen/cache/cookbooks/application/providers/default.rb:167:in `block (2 levels) in run_deploy'

       Resource Declaration:
       ---------------------
           # In /tmp/kitchen/cache/cookbooks/application/resources/default.rb

           115:       resource = super(resource_name.to_sym, self.name, &block)
           116:       break

       Compiled Resource:
       ------------------
           # Declared in /tmp/kitchen/cache/cookbooks/application/resources/default.rb:115:in `block in method_missing'

           application_python_django("localshop") do
             action [:nothing]
         retries 0
             retry_delay 2
             default_guard_interpreter :default
             declared_type :application_python_django
         cookbook_name "localshop"
             recipe_name "default"
             local_settings_file "localshop.conf.py"
             settings_template "localshop.conf.py.erb"
             migration_command "/opt/localshop/shared/env/bin/python manage.py syncdb --noinput && /opt/localshop/shared/env/bin/python manage.py migrate"
             type :django
             symlink_before_migrate {"localshop.conf.py"=>"localshop.conf.py"}
           end

       [2015-07-23T22:19:57+00:00] WARN: Error on deploying /opt/localshop/releases/09251828b6a2f8edf85d7d48564236334c030ed0: application_python_django[localshop] (localshop::default line 115) had an error: ArgumentError: Cannot find a provider for deploy_revision[localshop] on ubuntu version 14.04
         - remove failed deploy /opt/localshop/releases/09251828b6a2f8edf85d7d48564236334c030ed0
       ================================================================================
         Error executing action `deploy` on resource 'deploy_revision[localshop]'
       ================================================================================


         -------------
         application_python_django[localshop] (localshop::default line 115) had an error: ArgumentError: Cannot find a provider for deploy_revision[localshop] on ubuntu version 14.04


         ---------------
         /tmp/kitchen/cache/cookbooks/application/libraries/default.rb:145:in `deploy_provider'
         /tmp/kitchen/cache/cookbooks/application/libraries/default.rb:155:in `release_path'

         /tmp/kitchen/cache/cookbooks/application/libraries/default.rb:75:in `method_missing'
       /tmp/kitchen/cache/cookbooks/application_python/providers/django.rb:49:in `block in class_from_file'
         /tmp/kitchen/cache/cookbooks/application/providers/default.rb:185:in `block in run_actions_with_context'

         /tmp/kitchen/cache/cookbooks/application/providers/default.rb:182:in `run_actions_with_context'
         /tmp/kitchen/cache/cookbooks/application/providers/default.rb:167:in `block (2 levels) in run_deploy'

         Resource Declaration:
       ---------------------
         # In /tmp/kitchen/cache/cookbooks/application/providers/default.rb

         122:   @deploy_resource = send(new_resource.strategy.to_sym, new_resource.name) do
         123:     action force ? :force_deploy : :deploy
         124:     scm_provider new_resource.scm_provider
         125:     revision new_resource.revision
         126:     repository new_resource.repository
       127:     enable_submodules new_resource.enable_submodules
         128:     user new_resource.owner
         129:     group new_resource.group
         130:     deploy_to new_resource.path
         131:     ssh_wrapper "#{new_resource.path}/deploy-ssh-wrapper" if new_resource.deploy_key
         132:     shallow_clone new_resource.shallow_clone
       133:     rollback_on_error new_resource.rollback_on_error

         135:     environment all_environments
         136:     migrate new_resource.migrate

         138:     migration_command all_migration_commands.join(' && ')
       139:     restart_command do
         140:       ([new_resource]+new_resource.sub_resources).each do |res|
         141:         cmd = res.restart_command
         142:         if cmd.is_a? Proc

         144:           provider = if version.major > 10 || version.minor >= 14
         145:             Chef::Platform.provider_for_resource(res, :nothing)
         146:           else
       147:             Chef::Platform.provider_for_resource(res)
         148:           end
         149:           provider.load_current_resource
         150:           provider.instance_eval(&cmd)
         151:         elsif cmd && !cmd.empty?
         152:           execute cmd do
         153:             user new_resource.owner
         154:             group new_resource.group
       155:             environment all_environments
         156:           end
         157:         end
         158:       end


         Compiled Resource:
         ------------------
         # Declared in /tmp/kitchen/cache/cookbooks/application/providers/default.rb:122:in `run_deploy'

         deploy_revision("localshop") do
           action [:deploy]
           updated true
           updated_by_last_action true
           retries 0
         retry_delay 2
           default_guard_interpreter :default
           deploy_to "/opt/localshop"
           environment {"LOCALSHOP_HOME"=>"/opt/localshop/shared"}
           repository_cache "cached-copy"
           symlink_before_migrate {"localshop.conf.py"=>"localshop.conf.py", "celery_settings.py"=>"celery_settings.py"}
           revision "09251828b6a2f8edf85d7d48564236334c030ed0"

           rollback_on_error true
         remote "origin"
           shallow_clone true
         scm_provider Chef::Provider::Git
           keep_releases 5
           enable_checkout true
           checkout_branch "deploy"
           declared_type :deploy_revision
           cookbook_name "localshop"
           repo "git://github.com/mvantellingen/localshop.git"
           user "nobody"
           group "nogroup"
           migration_command "/opt/localshop/shared/env/bin/python manage.py syncdb --noinput && /opt/localshop/shared/env/bin/python manage.py migrate"

           before_migrate #<Proc:0x00000004518890@/tmp/kitchen/cache/cookbooks/application/providers/default.rb:166>
           before_symlink #<Proc:0x00000004518368@/tmp/kitchen/cache/cookbooks/application/providers/default.rb:169>
           before_restart #<Proc:0x0000000450bcf8@/tmp/kitchen/cache/cookbooks/application/providers/default.rb:172>
           after_restart #<Proc:0x0000000450b488@/tmp/kitchen/cache/cookbooks/application/providers/default.rb:175>
           shared_path "/opt/localshop/shared"
         destination "/opt/localshop/shared/cached-copy"
           current_path "/opt/localshop/current"
         end


       Running handlers:
       [2015-07-23T22:19:57+00:00] ERROR: Running exception handlers
       Running handlers complete
       [2015-07-23T22:19:57+00:00] ERROR: Exception handlers complete
       [2015-07-23T22:19:57+00:00] FATAL: Stacktrace dumped to /tmp/kitchen/cache/chef-stacktrace.out
       Chef Client failed. 45 resources updated in 403.692623453 seconds
       [2015-07-23T22:19:57+00:00] ERROR: deploy_revision[localshop] (/tmp/kitchen/cache/cookbooks/application/providers/default.rb line 122) had an error: ArgumentError: application_python_django[localshop] (localshop::default line 115) had an error: ArgumentError: Cannot find a provider for deploy_revision[localshop] on ubuntu version 14.04
       [2015-07-23T22:19:58+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
>>>>>> Converge failed on instance <default-ubuntu-1404>.
>>>>>> Please see .kitchen/logs/default-ubuntu-1404.log for more details
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ActionFailed
>>>>>> Message: SSH exited (1) for command: [sh -c '
sudo -E /opt/chef/bin/chef-client --local-mode --config /tmp/kitchen/client.rb --log_level auto --force-formatter --no-color --chef-zero-port 8889 --json-attributes /tmp/kitchen/dna.json
']
>>>>>> ----------------------
@purgatorio
Copy link
Contributor

Unfortunately the application_python cookbook is currently broken on chef 12. Problem is that it is locking the application cookbook to 3.0.0 which doesn't have chef12 support. See this open issue in the application_python issues: poise/application_python#58

It's unfortunately been in that state for quite a while. I would suggest forking application_python and applying this fix: https://github.com/poise/application_python/pull/51/files

That should allow you to be able to pull down the application 4.1.6 cookbook and fix your issue.

Also to note, this cookbook does still work with Chef 11. I'll add this information to the README for now to prevent any confusion. Once the application_python cookbook is fixed upstream I'll update the cookbook to be compatible with it. I'll leave this issue open until then as well. Sorry for the confusion on this.

@purgatorio purgatorio added the bug label Jul 24, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants