feat(ruby-client): 新增 Ruby 客户端 SDK 及 demo,移除 C 语言支持
- 新增 kenaito-conf-ruby-client(Ruby 2.5+)及对应 demo - 新增 Dockerfile.ruby - README 技术栈移除 C,项目结构补充 Ruby 客户端 - README_EN.md 同步更新 - README_DOCKERFILE.md 补充 Ruby 构建命令
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
require 'json'
|
||||
require 'fileutils'
|
||||
|
||||
module Kenaito
|
||||
module Conf
|
||||
class Cache
|
||||
def initialize(cache_dir)
|
||||
@cache_file = File.join(cache_dir, 'config-cache.json')
|
||||
end
|
||||
|
||||
def read
|
||||
return nil unless File.exist?(@cache_file)
|
||||
|
||||
begin
|
||||
content = File.read(@cache_file)
|
||||
JSON.parse(content)
|
||||
rescue => e
|
||||
$stderr.puts "[ConfigClient] cache read error: #{e.message}"
|
||||
nil
|
||||
end
|
||||
end
|
||||
|
||||
def write(data)
|
||||
begin
|
||||
FileUtils.mkdir_p(File.dirname(@cache_file))
|
||||
File.write(@cache_file, JSON.pretty_generate(data))
|
||||
rescue => e
|
||||
$stderr.puts "[ConfigClient] cache write error: #{e.message}"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user