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

Unable to deploy to forge.puppet.com #487

Closed
bastelfreak opened this issue Jul 30, 2016 · 20 comments
Closed

Unable to deploy to forge.puppet.com #487

bastelfreak opened this issue Jul 30, 2016 · 20 comments

Comments

@bastelfreak
Copy link

Hi,
I'm currently unable to release anything to the forge, I think there is a dependency issue with json_pure? Here is the full built. And the logs:

�[0Ktravis_fold:end:dpl.0
�[0Ktravis_time:start:05c74ba5
�[0Ktravis_fold:start:dpl.1
�[33mInstalling deploy dependencies�[0m
Fetching: json_pure-2.0.2.gem
Fetching: json_pure-2.0.2.gem (  2%)
Fetching: json_pure-2.0.2.gem (  4%)
Fetching: json_pure-2.0.2.gem (  6%)
Fetching: json_pure-2.0.2.gem (  8%)
Fetching: json_pure-2.0.2.gem ( 10%)
Fetching: json_pure-2.0.2.gem ( 12%)
Fetching: json_pure-2.0.2.gem ( 14%)
Fetching: json_pure-2.0.2.gem ( 16%)
Fetching: json_pure-2.0.2.gem ( 18%)
Fetching: json_pure-2.0.2.gem ( 20%)
Fetching: json_pure-2.0.2.gem ( 22%)
Fetching: json_pure-2.0.2.gem ( 24%)
Fetching: json_pure-2.0.2.gem ( 35%)
Fetching: json_pure-2.0.2.gem ( 47%)
Fetching: json_pure-2.0.2.gem ( 59%)
Fetching: json_pure-2.0.2.gem ( 71%)
Fetching: json_pure-2.0.2.gem ( 83%)
Fetching: json_pure-2.0.2.gem ( 94%)
Fetching: json_pure-2.0.2.gem (100%)
Fetching: json_pure-2.0.2.gem (100%)
ERROR:  Error installing puppet:
    json_pure requires Ruby version ~> 2.0.

travis_fold:end:dpl.1
/home/travis/.rvm/rubies/ruby-1.9.3-p551/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- puppet/face (LoadError)
    from /home/travis/.rvm/rubies/ruby-1.9.3-p551/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/provider.rb:74:in `requires'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/provider/puppet_forge.rb:6:in `<class:PuppetForge>'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/provider/puppet_forge.rb:3:in `<class:Provider>'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/provider/puppet_forge.rb:2:in `<module:DPL>'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/provider/puppet_forge.rb:1:in `<top (required)>'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/provider.rb:56:in `const_get'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/provider.rb:56:in `block in new'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/cli.rb:41:in `fold'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/provider.rb:53:in `new'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/cli.rb:31:in `run'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/lib/dpl/cli.rb:7:in `run'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.17/bin/dpl:5:in `<top (required)>'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/bin/dpl:23:in `load'
    from /home/travis/.rvm/gems/ruby-1.9.3-p551/bin/dpl:23:in `<main>'
failed to deploy
@bastelfreak
Copy link
Author

Before the release we do a few tests, all with latest puppet and json_pure gem, which works without issues.

@BanzaiMan BanzaiMan changed the title Unable to deploy to forge.puppet.com on Ruby2.3.1 Unable to deploy to forge.puppet.com Jul 30, 2016
@bastelfreak
Copy link
Author

@BanzaiMan is there anything I can help to fix this? I saw in the commit history that there were a few changes for the json/json_pure gem that are unreleased, not sure if they fix the issue. I'm not aware of a solution to test a patched dpl version or the master branch :(

In our case travis automatically pulls the gem by some black magic.

@BanzaiMan
Copy link
Contributor

BanzaiMan commented Jul 30, 2016

You can fork and fix the puppet deployment provider. The deployment fails now because the specification of json_pure there is underspecified when they released a new version that requires Ruby 2+. I plan to fix it next week.

@bastelfreak
Copy link
Author

This gem seems to be rather complex. I'm trying to built a solution that works at ruby2.3.1 again, but I'm not sure if this will work again.

@BanzaiMan
Copy link
Contributor

BanzaiMan commented Aug 1, 2016

Pushed a potential fix to the ha-bug-puppet-forge branch. You can test it with:

deploy:
  provider: puppetforge
  edge:
    branch: ha-bug-puppet-forge# rest

@bastelfreak
Copy link
Author

thanks for the fast investigation @BanzaiMan! The patch throws an argument error:
https://travis-ci.org/voxpupuli/puppet-community_kickstarts/jobs/148966937#L554

dpl/provider.rb:67:in `requires': wrong number of arguments (3 for 2) (ArgumentError)

@BanzaiMan
Copy link
Contributor

@bastelfreak Ooops. Sorry about that. Could you try again?

@bastelfreak
Copy link
Author

Hi. The error changed: https://travis-ci.org/voxpupuli/puppet-community_kickstarts/jobs/149119338#L567

/home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-1.8.18.travis.65.8/lib/dpl/provider.rb:57:in `const_get': /home/travis/.rvm/gems/ruby-1.9.3-p551/gems/dpl-.8.18.travis.65.8/lib/dpl/provider/puppet_forge.rb:6: syntax error, unexpected tASSOC (SyntaxError)
requires 'json_pure', version: => '< 2.0', :load => 'json/pure'

I don't quite understand why travis uses ruby1.9 here. The tests itself run fine on ruby231

@BanzaiMan
Copy link
Contributor

Ooops. Sorry about that. There was a syntax error in my fix. Could you try again?

@bastelfreak
Copy link
Author

Thanks, this works now:
https://travis-ci.org/voxpupuli/puppet-community_kickstarts/jobs/149191693#L573

Are you able to publish a release soon?

@nibalizer
Copy link

+1

saz added a commit to saz/puppet-rsyslog that referenced this issue Aug 6, 2016
@bastelfreak
Copy link
Author

HI @BanzaiMan, do you think you can do a release in the near future?

bastelfreak added a commit to bastelfreak/modulesync_config that referenced this issue Aug 19, 2016
During a release, travis installs the dpl gem. The latest released
version is broken, the travis devs provided us a fix which is available
in a certain branch: travis-ci/dpl#487
This fix is tested in several modules, fox example zabbix, gluster,
minecraft
@bastelfreak
Copy link
Author

Hi @BanzaiMan, is it possible to get a release soon?

@rnelson0
Copy link

@BanzaiMan Bump for a release. Thanks!

@BanzaiMan
Copy link
Contributor

Sorry about the delay. Could you try the updated commit before releasing this? Thanks.

#524

@bastelfreak
Copy link
Author

@BanzaiMan
Copy link
Contributor

Thanks for the confirmation. I'm closing this now.

@rnelson0
Copy link

rnelson0 commented Nov 1, 2016

@BanzaiMan Would you be willing to re-open this ticket until the fix in #524 is published to rubygems so that travis uses it automatically without requiring a separate branch in .travis.yml, please?

@BanzaiMan BanzaiMan reopened this Nov 1, 2016
@BanzaiMan
Copy link
Contributor

1.8.24 should fix this problem now.

@rnelson0
Copy link

rnelson0 commented Nov 7, 2016

@BanzaiMan Thanks so much, Hiro!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants