Skip to content

Commit 4d5e03b

Browse files
committed
Add: Support for Faraday 2.x
Signed-off-by: Preetham Kamidi <preetham.kamidi@broadcom.com> Update: Version Signed-off-by: Preetham Kamidi <preetham.kamidi@broadcom.com> Fix: Header pattern Signed-off-by: Preetham Kamidi <preetham.kamidi@broadcom.com> Fix: Smoke tests Signed-off-by: Preetham Kamidi <preetham.kamidi@broadcom.com> Fix: Unit tests Signed-off-by: Preetham Kamidi <preetham.kamidi@broadcom.com> Fix: Switch to safe_load Signed-off-by: Preetham Kamidi <preetham.kamidi@broadcom.com> Update: Switch to CodeQL v3 Signed-off-by: Preetham Kamidi <preetham.kamidi@broadcom.com>
1 parent 090e397 commit 4d5e03b

9 files changed

Lines changed: 95 additions & 91 deletions

File tree

.github/workflows/main.yml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ jobs:
5353
- name: Set up Ruby
5454
uses: ruby/setup-ruby@v1
5555
with:
56-
ruby-version: 3.0.0
56+
ruby-version: 3.3
5757
- name: Install dependencies
5858
run: bundle install
5959
- name: Unit test
@@ -80,17 +80,17 @@ jobs:
8080
- name: Set up Ruby
8181
uses: ruby/setup-ruby@v1
8282
with:
83-
ruby-version: 3.0.0
83+
ruby-version: 3.3
8484
- name: Install dependencies
8585
run: bundle install
8686
- name: Initialize CodeQL
87-
uses: github/codeql-action/init@v1
87+
uses: github/codeql-action/init@v3
8888
with:
8989
languages: ruby
9090
- name: Autobuild
91-
uses: github/codeql-action/autobuild@v1
91+
uses: github/codeql-action/autobuild@v3
9292
- name: Perform CodeQL Analysis
93-
uses: github/codeql-action/analyze@v1
93+
uses: github/codeql-action/analyze@v3
9494

9595
codacy-analysis-cli:
9696
name: Codacy Analysis CLI
@@ -125,25 +125,25 @@ jobs:
125125
- name: Set up Ruby
126126
uses: ruby/setup-ruby@v1
127127
with:
128-
ruby-version: 3.0.0
128+
ruby-version: 3.3
129129
- name: Install dependencies
130130
run: bundle install
131-
- name: Set up JDK 8
131+
- name: Set up JDK 17
132132
uses: actions/setup-java@v2
133133
with:
134-
distribution: 'adopt'
135-
java-version: '8'
134+
distribution: 'temurin'
135+
java-version: '17'
136136
- name: Smoke Test
137137
run: |
138138
export PATH=${PATH/:\/usr\/local\/lib\/jvm\/openjdk11\/bin:/:}
139139
sudo apt-get update
140-
sudo apt-get install -y openjdk-8-jdk
141-
export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
140+
sudo apt-get install -y openjdk-17-jdk
141+
export JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64"
142142
git clone --branch=master https://github.com/vmware/singleton.git server
143143
git clone --branch=devops https://github.com/vmware/singleton.git devops
144144
cd $GITHUB_WORKSPACE/server/g11n-ws && ./gradlew build -x test
145145
cp $GITHUB_WORKSPACE/devops/deploy/i18n-service/Dockerfile $GITHUB_WORKSPACE/server/publish/
146-
cd $GITHUB_WORKSPACE/server/publish && mv singleton-[0~9]*.jar i18n-service.jar
146+
cd $GITHUB_WORKSPACE/server/publish && mv singleton-0.1.0.jar i18n-service.jar
147147
docker build -t singleton .
148148
docker run -d -p 8090:8090 -p 8091:8091 --name singleton singleton
149149
docker ps

lib/sgtn-client/loader/server.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# frozen_string_literal: true
22

3-
# Copyright 2022 VMware, Inc.
3+
# Copyright 2025 VMware, Inc.
44
# SPDX-License-Identifier: EPL-2.0
55

66
require 'faraday'
7-
require 'faraday_middleware'
7+
require 'faraday/gzip'
88
require 'set'
99

1010
module SgtnClient
@@ -26,10 +26,10 @@ def initialize(config)
2626
@components_url = "#{product_root}/componentlist"
2727

2828
@conn = Faraday.new(config.vip_server, request: REQUEST_ARGUMENTS) do |f|
29-
f.response :json # decode response bodies as JSON
29+
f.response :json
3030
f.response :raise_error
3131
f.response :logger, config.logger, { log_level: :debug, headers: false, bodies: true }
32-
f.use :gzip
32+
f.request :gzip
3333
end
3434
end
3535

lib/sgtn-client/loader/source.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2022-2023 VMware, Inc.
1+
# Copyright 2025 VMware, Inc.
22
# SPDX-License-Identifier: EPL-2.0
33

44
require 'pathname'
@@ -20,7 +20,7 @@ def load_bundle(component, locale = nil)
2020
total_messages = {}
2121

2222
Pathname.glob(@source_bundle_path + component + '**/*.{yml, yaml}') do |f|
23-
bundle = YAML.load(File.read(f))
23+
bundle = YAML.safe_load(File.read(f), aliases: true)
2424
messages = bundle&.first&.last # TODO: Warn about inconsistent source locale
2525
if messages.is_a?(Hash)
2626
total_messages.merge!(messages)

lib/sgtn-client/sgtn-client.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2022 VMware, Inc.
1+
# Copyright 2025 VMware, Inc.
22
# SPDX-License-Identifier: EPL-2.0
33

44
require 'forwardable'
@@ -30,7 +30,7 @@ class << self
3030
def_delegators :config, :logger, :logger=
3131

3232
def load(config_file, env, log_file = nil)
33-
configurations = YAML.load(File.read(config_file))
33+
configurations = YAML.safe_load(File.read(config_file), aliases: true)
3434
config_hash = configurations[env]
3535
raise "Configuration[#{env}] NotFound" unless config_hash
3636

lib/version.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
# Copyright 2022 VMware, Inc.
1+
# Copyright 2025 VMware, Inc.
22
# SPDX-License-Identifier: EPL-2.0
33

4-
VERSION_INFO = [0, 2, 1].freeze
4+
VERSION_INFO = [0, 8, 0].freeze
55
VERSION = VERSION_INFO.map(&:to_s).join('.').freeze

singleton-client.gemspec

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,12 @@ Gem::Specification.new do |s|
1717
s.require_paths = ['lib']
1818

1919
s.add_dependency('concurrent-ruby')
20-
s.add_dependency('faraday')
21-
s.add_dependency('faraday_middleware')
20+
s.add_dependency 'faraday', '~> 2.7'
21+
s.add_dependency 'faraday-gzip', '~> 3'
2222
s.add_dependency('i18n')
2323
s.add_dependency('logging')
2424
s.add_dependency('multi_json') # TODO
25+
s.add_dependency 'observer'
2526
s.add_dependency('request_store')
2627
s.add_dependency('twitter_cldr')
2728

0 commit comments

Comments
 (0)