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

Upgrading ruby version to 2.7.6 #394

Merged
merged 24 commits into from
Dec 29, 2022
Merged

Upgrading ruby version to 2.7.6 #394

merged 24 commits into from
Dec 29, 2022

Conversation

rafaelwestphal
Copy link

  • Now using ruby 2.7.6
  • Unfreezing omnibus version.
  • solaris_11, solaris_10, and ios_xr were deprecated from earlier onmibus version. Replaced them with the original implementations.

@qingling128
Copy link

How did integration tests and soak test look for this Ruby version?

@rafaelwestphal
Copy link
Author

I talked with Igor offline. We are splitting this is 2 PRs.
One will update the build version to ruby 2.7.
Another PR will update the embedded ruby version to 2.7.
This will make it easier to find any regressions.

Copy link

@sophieyfang sophieyfang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very smart on checking the upstream repo and found out about the solaris stuff 💯

LGTM.

For the two deleted lock files originally my idea.. @qingling128 and @igorpeshansky might have stuff to say about that. We might wanna keep the lock files. But to get that refreshing up, some ruby chef set-up might be needed at your local i think..

Copy link
Member

@igorpeshansky igorpeshansky left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let me know when this is split into 2 PRs and ready for review.

@@ -1,321 +0,0 @@
GIT
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To respond to @sophieyfang's comment: Gemfile.lock is the bundler's equivalent of go.sum. I think it's good to have the exact build state checked into the repo and only update it explicitly.

This probably applies to Berksfile.lock as well.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here is the GemFile.lock against this current branch after bundle update @rafaelwestphal you can use below content to replace in Gemfile.lock

GIT
  remote: https://github.com/chef/omnibus-software.git
  revision: 2be38169f587c99e0f18f9adb0387d572594cc90
  specs:
    omnibus-software (22.12.257)
      omnibus (>= 9.0.0)

GIT
  remote: https://github.com/chef/omnibus.git
  revision: f7386ad375212a406dc11cd4050b10cbd77f7a42
  specs:
    omnibus (9.0.14)
      aws-sdk-s3 (~> 1.116.0)
      chef-cleanroom (~> 1.0)
      chef-utils (>= 15.4)
      contracts (>= 0.16.0, < 0.17.0)
      ffi-yajl (~> 2.2)
      license_scout (~> 1.0)
      mixlib-shellout (>= 2.0, < 4.0)
      mixlib-versioning
      ohai (>= 16, < 19)
      pedump
      rexml (~> 3.2)
      ruby-progressbar (~> 1.7)
      thor (>= 0.18, < 2.0)

GEM
  remote: https://rubygems.org/
  specs:
    addressable (2.3.8)
    awesome_print (1.9.2)
    aws-eventstream (1.2.0)
    aws-partitions (1.684.0)
    aws-sdk-core (3.168.4)
      aws-eventstream (~> 1, >= 1.0.2)
      aws-partitions (~> 1, >= 1.651.0)
      aws-sigv4 (~> 1.5)
      jmespath (~> 1, >= 1.6.1)
    aws-sdk-kms (1.61.0)
      aws-sdk-core (~> 3, >= 3.165.0)
      aws-sigv4 (~> 1.1)
    aws-sdk-s3 (1.116.0)
      aws-sdk-core (~> 3, >= 3.127.0)
      aws-sdk-kms (~> 1)
      aws-sigv4 (~> 1.4)
    aws-sigv4 (1.5.2)
      aws-eventstream (~> 1, >= 1.0.2)
    bcrypt_pbkdf (1.1.0)
    berkshelf (3.2.4)
      addressable (~> 2.3.4)
      berkshelf-api-client (~> 1.2)
      buff-config (~> 1.0)
      buff-extensions (~> 1.0)
      buff-shell_out (~> 0.1)
      celluloid (~> 0.16.0)
      celluloid-io (~> 0.16.1)
      cleanroom (~> 1.0)
      faraday (~> 0.9.0)
      minitar (~> 0.5.4)
      octokit (~> 3.0)
      retryable (~> 2.0)
      ridley (~> 4.0)
      solve (~> 1.1)
      thor (~> 0.19)
    berkshelf-api-client (1.2.1)
      faraday (~> 0.9.0)
    buff-config (1.0.1)
      buff-extensions (~> 1.0)
      varia_model (~> 0.4)
    buff-extensions (1.0.0)
    buff-ignore (1.2.0)
    buff-ruby_engine (0.1.0)
    buff-shell_out (0.2.0)
      buff-ruby_engine (~> 0.1.0)
    builder (3.2.4)
    celluloid (0.16.0)
      timers (~> 4.0.0)
    celluloid-io (0.16.2)
      celluloid (>= 0.16.0)
      nio4r (>= 1.1.0)
    chef-cleanroom (1.0.1)
    chef-config (18.0.185)
      addressable
      chef-utils (= 18.0.185)
      fuzzyurl
      mixlib-config (>= 2.2.12, < 4.0)
      mixlib-shellout (>= 2.0, < 4.0)
      tomlrb (~> 1.2)
    chef-utils (18.0.185)
      concurrent-ruby
    citrus (3.0.2)
    cleanroom (1.0.0)
    concurrent-ruby (1.1.10)
    contracts (0.16.1)
    dep-selector-libgecode (1.3.5)
    dep_selector (1.0.6)
      dep-selector-libgecode (~> 1.0)
      ffi (~> 1.9)
    diff-lcs (1.5.0)
    ed25519 (1.3.0)
    erubi (1.12.0)
    erubis (2.7.0)
    faraday (0.9.2)
      multipart-post (>= 1.2, < 3)
    ffi (1.15.5)
    ffi-yajl (2.4.0)
      libyajl2 (>= 1.2)
    fuzzyurl (0.9.0)
    gssapi (1.3.1)
      ffi (>= 1.0.1)
    gyoku (1.4.0)
      builder (>= 2.1.2)
      rexml (~> 3.0)
    hashie (3.6.0)
    hitimes (2.0.0)
    httpclient (2.8.3)
    iostruct (0.0.4)
    ipaddress (0.8.3)
    jmespath (1.6.2)
    json (2.6.3)
    kitchen-vagrant (1.13.0)
      test-kitchen (>= 1.4, < 4)
    libyajl2 (2.1.0)
    license-acceptance (2.1.13)
      pastel (~> 0.7)
      tomlrb (>= 1.2, < 3.0)
      tty-box (~> 0.6)
      tty-prompt (~> 0.20)
    license_scout (1.3.3)
      ffi-yajl (~> 2.2)
      mixlib-shellout (>= 2.2, < 4.0)
      toml-rb (>= 1, < 3)
    little-plugger (1.1.4)
    logging (2.3.1)
      little-plugger (~> 1.1)
      multi_json (~> 1.14)
    minitar (0.5.4)
    mixlib-authentication (3.0.10)
    mixlib-cli (2.1.8)
    mixlib-config (3.0.27)
      tomlrb
    mixlib-install (3.12.24)
      mixlib-shellout
      mixlib-versioning
      thor
    mixlib-log (3.0.9)
    mixlib-shellout (3.2.7)
      chef-utils
    mixlib-versioning (1.2.12)
    multi_json (1.15.0)
    multipart-post (2.2.3)
    net-scp (3.0.0)
      net-ssh (>= 2.6.5, < 7.0.0)
    net-ssh (6.1.0)
    net-ssh-gateway (2.0.0)
      net-ssh (>= 4.0.0)
    net-telnet (0.1.1)
    nio4r (2.5.8)
    nori (2.6.0)
    octokit (3.8.0)
      sawyer (~> 0.6.0, >= 0.5.3)
    ohai (18.0.26)
      chef-config (>= 14.12, < 19)
      chef-utils (>= 16.0, < 19)
      ffi (~> 1.9)
      ffi-yajl (~> 2.2)
      ipaddress
      mixlib-cli (>= 1.7.0)
      mixlib-config (>= 2.0, < 4.0)
      mixlib-log (>= 2.0.1, < 4.0)
      mixlib-shellout (~> 3.2, >= 3.2.5)
      plist (~> 3.1)
      train-core
      wmi-lite (~> 1.0)
    open_uri_redirections (0.2.1)
    pastel (0.8.0)
      tty-color (~> 0.5)
    pedump (0.6.5)
      awesome_print
      iostruct (>= 0.0.4)
      multipart-post (>= 2.0.0)
      rainbow
      zhexdump (>= 0.0.2)
    plist (3.6.0)
    rainbow (3.1.1)
    rake (10.1.1)
    retryable (2.0.4)
    rexml (3.2.5)
    ridley (4.3.0)
      addressable
      buff-config (~> 1.0)
      buff-extensions (~> 1.0)
      buff-ignore (~> 1.1)
      buff-shell_out (~> 0.1)
      celluloid (~> 0.16.0)
      celluloid-io (~> 0.16.1)
      erubis
      faraday (~> 0.9.0)
      hashie (>= 2.0.2, < 4.0.0)
      httpclient (~> 2.6)
      json (>= 1.7.7)
      mixlib-authentication (>= 1.3.0)
      retryable (~> 2.0)
      semverse (~> 1.1)
      varia_model (~> 0.4)
    rspec (3.12.0)
      rspec-core (~> 3.12.0)
      rspec-expectations (~> 3.12.0)
      rspec-mocks (~> 3.12.0)
    rspec-core (3.12.0)
      rspec-support (~> 3.12.0)
    rspec-expectations (3.12.1)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.12.0)
    rspec-its (1.3.0)
      rspec-core (>= 3.0.0)
      rspec-expectations (>= 3.0.0)
    rspec-mocks (3.12.1)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.12.0)
    rspec-support (3.12.0)
    ruby-progressbar (1.11.0)
    rubyntlm (0.6.3)
    rubyzip (2.3.2)
    sawyer (0.6.0)
      addressable (~> 2.3.5)
      faraday (~> 0.8, < 0.10)
    semverse (1.2.1)
    serverspec (2.18.0)
      multi_json
      rspec (~> 3.0)
      rspec-its
      specinfra (~> 2.35)
    sfl (2.3)
    solve (1.2.1)
      dep_selector (~> 1.0)
      semverse (~> 1.1)
    specinfra (2.83.4)
      net-scp
      net-ssh (>= 2.7)
      net-telnet (= 0.1.1)
      sfl
    strings (0.2.1)
      strings-ansi (~> 0.2)
      unicode-display_width (>= 1.5, < 3.0)
      unicode_utils (~> 1.4)
    strings-ansi (0.2.0)
    test-kitchen (2.12.0)
      bcrypt_pbkdf (~> 1.0)
      chef-utils (>= 16.4.35)
      ed25519 (~> 1.2)
      license-acceptance (>= 1.0.11, < 3.0)
      mixlib-install (~> 3.6)
      mixlib-shellout (>= 1.2, < 4.0)
      net-scp (>= 1.1, < 4.0)
      net-ssh (>= 2.9, < 7.0)
      net-ssh-gateway (>= 1.2, < 3.0)
      thor (>= 0.19, < 2.0)
      winrm (~> 2.0)
      winrm-elevated (~> 1.0)
      winrm-fs (~> 1.1)
    thor (0.20.3)
    timers (4.0.4)
      hitimes
    toml-rb (2.2.0)
      citrus (~> 3.0, > 3.0)
    tomlrb (1.3.0)
    train-core (2.0.5)
      json (>= 1.8, < 3.0)
      mixlib-shellout (>= 2.0, < 4.0)
    tty-box (0.7.0)
      pastel (~> 0.8)
      strings (~> 0.2.0)
      tty-cursor (~> 0.7)
    tty-color (0.6.0)
    tty-cursor (0.7.1)
    tty-prompt (0.23.1)
      pastel (~> 0.8)
      tty-reader (~> 0.8)
    tty-reader (0.9.0)
      tty-cursor (~> 0.7)
      tty-screen (~> 0.8)
      wisper (~> 2.0)
    tty-screen (0.8.1)
    unicode-display_width (2.3.0)
    unicode_utils (1.4.0)
    varia_model (0.5.0)
      buff-extensions (~> 1.0)
      hashie (>= 2.0.2, < 4.0.0)
    winrm (2.3.6)
      builder (>= 2.1.2)
      erubi (~> 1.8)
      gssapi (~> 1.2)
      gyoku (~> 1.0)
      httpclient (~> 2.2, >= 2.2.0.2)
      logging (>= 1.6.1, < 3.0)
      nori (~> 2.0)
      rubyntlm (~> 0.6.0, >= 0.6.3)
    winrm-elevated (1.2.3)
      erubi (~> 1.8)
      winrm (~> 2.0)
      winrm-fs (~> 1.0)
    winrm-fs (1.3.5)
      erubi (~> 1.8)
      logging (>= 1.6.1, < 3.0)
      rubyzip (~> 2.0)
      winrm (~> 2.0)
    wisper (2.0.1)
    wmi-lite (1.0.7)
    zhexdump (0.0.2)

PLATFORMS
  x86_64-linux

DEPENDENCIES
  berkshelf (~> 3.0)
  chef-cleanroom (= 1.0.1)
  kitchen-vagrant (~> 1.6)
  ohai (> 17.7)
  omnibus!
  omnibus-software!
  open_uri_redirections (= 0.2.1)
  rake (~> 10.1.0)
  serverspec (~> 2.18.0)
  test-kitchen (~> 2.4)

BUNDLED WITH
   2.4.1

gem 'omnibus', :github => 'chef/omnibus'
gem 'omnibus-software', :github => 'chef/omnibus-software'

gem 'ohai', '>17.7'

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Due to:

Error:

    ERROR:  Error installing /main/google-fluentd/plugin_gems/21-fluent-plugin-kubernetes_metadata_filter-2.5.2.gem:
	The last version of kubeclient (< 5) to support your Ruby & RubyGems was 4.10.1. Try installing it with `gem install kubeclient -v 4.10.1` and then running the current command again
	kubeclient requires Ruby version >= 2.7.0. The current ruby version is 2.6.10.210.

We shall also add gem 'kubeclient', '4.10.1' (I tested locally in a docker image, it worked)

@sophieyfang
Copy link

https://github.com/search?q=repo%3AGoogleCloudPlatform%2Fgoogle-fluentd+2.6.10&type=code those two files have to be updated to 2.7.6 as well

@sophieyfang sophieyfang requested review from sophieyfang and removed request for sophieyfang December 29, 2022 17:07
@sophieyfang sophieyfang merged commit 191aad7 into master Dec 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants