travis-ci / dpl

Dpl (dee-pee-ell) is a deploy tool made for continuous deployment.
MIT License
1.29k stars 367 forks source link

Updating to Version 2.0.5 breaks dpl deployment to heroku #1286

Open bastianwegge opened 2 months ago

bastianwegge commented 2 months ago

We got the following error after updating to the latest dpl version inside of our GitLab CI Pipeline on ruby:3.0. We solved this by pinning to 1.10.16. Is there a migration guide from v1 to v2 which I'm missing to find right now?

$ gem install dpl
Successfully installed mime-0.4.4
Successfully installed json_pure-2.7.2
Successfully installed excon-0.111.0
Successfully installed travis-packagecloud-ruby-1.1.0
Successfully installed regstry-1.0.15
Successfully installed travis-cl-1.2.4
Successfully installed net-http-0.4.1
Successfully installed dpl-2.0.5
8 gems installed
$ dpl --provider=heroku --app=my-app-name --api-key=$HEROKU_STAGING_KEY
<internal:/usr/local/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require': /usr/local/bundle/gems/dpl-2.0.5/lib/dpl/providers/cloudformation.rb:126: syntax error, unexpected ')' (SyntaxError)
...ait_for(condition, stack_name:) unless test? # hmm.
...                              ^
/usr/local/bundle/gems/dpl-2.0.5/lib/dpl/providers/cloudformation.rb:145: syntax error, unexpected ')'
...nt.describe_stacks(stack_name:)[:stacks].first
...                              ^
/usr/local/bundle/gems/dpl-2.0.5/lib/dpl/providers/cloudformation.rb:150: syntax error, unexpected ','
          stack_name:,
                     ^
/usr/local/bundle/gems/dpl-2.0.5/lib/dpl/providers/cloudformation.rb:187: syntax error, unexpected ','
        params = { region:, credentials: }
                          ^
/usr/local/bundle/gems/dpl-2.0.5/lib/dpl/providers/cloudformation.rb:260: syntax error, unexpected ')'
...cribe_stack_events(stack_name:)
...                              ^
/usr/local/bundle/gems/dpl-2.0.5/lib/dpl/providers/cloudformation.rb:267: dynamic constant assignment
        EVENT_KEYS = %i[timestamp resource_type...
        ^~~~~~~~~~
/usr/local/bundle/gems/dpl-2.0.5/lib/dpl/providers/cloudformation.rb:282: syntax error, unexpected end-of-input, expecting `end'
    from <internal:/usr/local/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/local/bundle/gems/dpl-2.0.5/lib/dpl/providers.rb:13:in `<top (required)>'
    from <internal:/usr/local/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from <internal:/usr/local/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/local/bundle/gems/dpl-2.0.5/lib/dpl/provider.rb:651:in `<top (required)>'
    from <internal:/usr/local/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from <internal:/usr/local/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/local/bundle/gems/dpl-2.0.5/lib/dpl.rb:5:in `<top (required)>'
    from <internal:/usr/local/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from <internal:/usr/local/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/local/bundle/gems/dpl-2.0.5/bin/dpl:9:in `<top (required)>'
    from /usr/local/bundle/bin/dpl:25:in `load'
    from /usr/local/bundle/bin/dpl:25:in `<main>'
ronualdo commented 1 month ago

I think we're being impacted by the same problem. Also solved it by pinning DPL version.