open-telemetry / opentelemetry-ruby

OpenTelemetry Ruby API & SDK, and related gems
https://opentelemetry.io/
Apache License 2.0
493 stars 244 forks source link

CI: Toys 0.12.0 causing release failures #912

Closed robertlaurin closed 3 years ago

robertlaurin commented 3 years ago

CI started pulling 0.12.0 and was failing to find yard.

Confirmed that this was the cause of the release failures by pinning the retry to 0.11.5 https://github.com/open-telemetry/opentelemetry-ruby/pull/910

Hey @dazuma is this something you want to look into? Otherwise I might just pin everything to 0.11.5 until we can dedicate some time to the release process.

robertlaurin commented 3 years ago

https://github.com/open-telemetry/opentelemetry-ruby/runs/3343455325?check_suite_focus=true

[2021-08-16 19:03:02  INFO]  Gem built
[2021-08-16 19:03:02  INFO]  Building opentelemetry-instrumentation-action_view 0.1.0 docs...
[2021-08-16 19:03:02  INFO]  ["/opt/hostedtoolcache/Ruby/2.7.4/x64/bin/ruby", "--disable=gems", "/opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-0.12.0/bin/toys", "yardoc"]
Fetching gem metadata from https://rubygems.org/..........
Resolving dependencies....
Fetching rake 12.3.3
Installing rake 12.3.3
Fetching concurrent-ruby 1.1.9
Fetching minitest 5.14.4
Installing minitest 5.14.4
Installing concurrent-ruby 1.1.9
Fetching zeitwerk 2.4.2
Installing zeitwerk 2.4.2
Fetching builder 3.2.4
Installing builder 3.2.4
Fetching erubi 1.10.0
Installing erubi 1.10.0
Fetching racc 1.5.2
Installing racc 1.5.2 with native extensions
Fetching crass 1.0.6
Installing crass 1.0.6
Fetching rack 2.2.3
Installing rack 2.2.3
Fetching nio4r 2.5.8
Installing nio4r 2.5.8 with native extensions
Fetching websocket-extensions 0.1.5
Fetching marcel 1.0.1
Installing websocket-extensions 0.1.5
Fetching mini_mime 1.1.0
Installing marcel 1.0.1
Installing mini_mime 1.1.0
Fetching public_suffix 4.0.6
Using bundler 2.2.25
Fetching thor 1.1.0
Installing public_suffix 4.0.6
Installing thor 1.1.0
Fetching ast 2.4.2
Fetching byebug 11.1.3
Installing ast 2.4.2
Fetching coderay 1.1.3
Installing byebug 11.1.3 with native extensions
Installing coderay 1.1.3
Fetching rexml 3.2.5
Installing rexml 3.2.5
Fetching docile 1.4.0
Fetching hashdiff 1.0.1
Installing docile 1.4.0
Fetching jaro_winkler 1.5.4
Installing hashdiff 1.0.1
Installing jaro_winkler 1.5.4 with native extensions
Fetching json 2.5.1
Fetching method_source 1.0.0
Installing method_source 1.0.0
Installing json 2.5.1 with native extensions
Using opentelemetry-api 1.0.0.rc3 from source at `../../api`
Fetching parallel 1.20.1
Installing parallel 1.20.1
Fetching rainbow 3.0.0
Installing rainbow 3.0.0
Fetching ruby-progressbar 1.11.0
Installing ruby-progressbar 1.11.0
Fetching unicode-display_width 1.6.1
Installing unicode-display_width 1.6.1
Fetching simplecov-html 0.10.2
Installing simplecov-html 0.10.2
Fetching yard 0.9.26
Fetching i18n 1.8.10
Installing i18n 1.8.10
Installing yard 0.9.26
Fetching tzinfo 2.0.4
Installing tzinfo 2.0.4
Fetching rack-test 1.1.0
Installing rack-test 1.1.0
Fetching sprockets 4.0.2
Installing sprockets 4.0.2
Fetching nokogiri 1.12.3 (x86_64-linux)
Installing nokogiri 1.12.3 (x86_64-linux)
Fetching websocket-driver 0.7.5
Installing websocket-driver 0.7.5 with native extensions
Fetching mail 2.7.1
Installing mail 2.7.1
Fetching appraisal 2.2.0
Installing appraisal 2.2.0
Fetching addressable 2.8.0
Installing addressable 2.8.0
Fetching parser 3.0.2.0
Fetching crack 0.4.5
Installing crack 0.4.5
Fetching pry 0.13.1
Installing parser 3.0.2.0
Installing pry 0.13.1
Using opentelemetry-common 0.19.1 from source at `../../common`
Using opentelemetry-instrumentation-base 0.18.2 from source at `../base`
Using opentelemetry-semantic_conventions 1.6.0 from source at `../../semantic_conventions`
Fetching simplecov 0.17.1
Fetching activesupport 6.1.4
Installing simplecov 0.17.1
Installing activesupport 6.1.4
Fetching yard-doctest 0.1.17
Installing yard-doctest 0.1.17
Fetching loofah 2.12.0
Installing loofah 2.12.0
Fetching webmock 3.7.6
Installing webmock 3.7.6
Fetching rubocop 0.73.0
Using opentelemetry-instrumentation-action_view 0.1.0 from source at `.`
Using opentelemetry-sdk 1.0.0.rc3 from source at `../../sdk`
Fetching pry-byebug 3.9.0
Installing pry-byebug 3.9.0
Installing rubocop 0.73.0
Fetching rails-html-sanitizer 1.3.0
Installing rails-html-sanitizer 1.3.0
Fetching rails-dom-testing 2.0.3
Installing rails-dom-testing 2.0.3
Fetching globalid 0.5.2
Installing globalid 0.5.2
Fetching activemodel 6.1.4
Installing activemodel 6.1.4
Fetching actionview 6.1.4
Installing actionview 6.1.4
Fetching activejob 6.1.4
Installing activejob 6.1.4
Fetching activerecord 6.1.4
Installing activerecord 6.1.4
Fetching actionpack 6.1.4
Installing actionpack 6.1.4
Fetching actioncable 6.1.4
Fetching actionmailer 6.1.4
Installing actioncable 6.1.4
Installing actionmailer 6.1.4
Fetching railties 6.1.4
Fetching sprockets-rails 3.2.2
Installing railties 6.1.4
Installing sprockets-rails 3.2.2
Fetching activestorage 6.1.4
Installing activestorage 6.1.4
Fetching actionmailbox 6.1.4
Installing actionmailbox 6.1.4
Fetching actiontext 6.1.4
Installing actiontext 6.1.4
Fetching rails 6.1.4
Installing rails 6.1.4
Bundle updated!
Toys::Utils::Gems::GemfileUpdateNeededError: Required gem not available in the bundle: "yard", .
Please update your Gemfile "/home/runner/work/opentelemetry-ruby/opentelemetry-ruby/Gemfile".
     48: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-0.12.0/bin/toys:11:in `<main>'
     47: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:456:in `run'
     46: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/errors.rb:71:in `capture_path'
     45: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:464:in `block in run'
     44: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:496:in `run_tool'
     43: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:520:in `execute_tool_in_context'
     42: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:520:in `catch'
     41: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:521:in `block in execute_tool_in_context'
     40: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:552:in `block in make_executor'
     39: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/standard_middleware/show_help.rb:238:in `run'
     38: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:552:in `block in make_executor'
     37: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/standard_middleware/show_root_version.rb:67:in `run'
     36: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:552:in `block in make_executor'
     35: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/standard_middleware/handle_usage_errors.rb:39:in `run'
     34: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:510:in `block in execute_tool_in_context'
     33: /home/runner/work/opentelemetry-ruby/opentelemetry-ruby/.toys/yardoc.rb:13:in `run'
     32: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/standard_mixins/exec.rb:400:in `exec_tool'
     31: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/exec.rb:309:in `exec_proc'
     30: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/exec.rb:958:in `execute'
     29: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/exec.rb:989:in `start_with_controller'
     28: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/exec.rb:1012:in `start_fork'
     27: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/exec.rb:1023:in `run_fork_func'
     26: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/exec.rb:1023:in `catch'
     25: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/exec.rb:1027:in `block in run_fork_func'
     24: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/standard_mixins/exec.rb:681:in `block in _make_tool_caller'
     23: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:456:in `run'
     22: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/errors.rb:71:in `capture_path'
     21: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:464:in `block in run'
     20: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:496:in `run_tool'
     19: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:520:in `execute_tool_in_context'
     18: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:520:in `catch'
     17: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:521:in `block in execute_tool_in_context'
     16: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:552:in `block in make_executor'
     15: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/standard_middleware/show_help.rb:238:in `run'
     14: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:552:in `block in make_executor'
     13: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/standard_middleware/show_root_version.rb:67:in `run'
     12: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:552:in `block in make_executor'
     11: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/standard_middleware/handle_usage_errors.rb:39:in `run'
     10: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/cli.rb:510:in `block in execute_tool_in_context'
      9: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-0.12.0/lib/toys/templates/yardoc.rb:421:in `block (3 levels) in <class:Yardoc>'
      8: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/standard_mixins/gems.rb:61:in `gem'
      7: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/gems.rb:148:in `activate'
      6: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/gems.rb:213:in `synchronize'
      5: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/gems.rb:213:in `synchronize'
      4: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/gems.rb:149:in `block in activate'
      3: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/gems.rb:152:in `rescue in block in activate'
      2: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/gems.rb:240:in `handle_activation_error'
      1: /opt/hostedtoolcache/Ruby/2.7.4/x64/lib/ruby/gems/2.7.0/gems/toys-core-0.12.0/lib/toys/utils/gems.rb:273:in `report_activation_error'
Error during tool execution!
    Toys::Utils::Gems::GemfileUpdateNeededError: Required gem not available in the bundle: "yard", .
Please update your Gemfile "/home/runner/work/opentelemetry-ruby/opentelemetry-ruby/Gemfile".
    in config file: /home/runner/work/opentelemetry-ruby/opentelemetry-ruby/.toys/yardoc.rb:13
    while executing tool: "yardoc _build"
    with arguments: []
Error: Process completed with exit code 1.
dazuma commented 3 years ago

Oh dear, yes feel free to pin to 0.11.5 while I look at it.

dazuma commented 3 years ago

I found the bug in Toys 0.12.0 and will have a patch released shortly.