4 Star 18 Fork 184

Fengguang/lkp-tests

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
fixup-meta.rb 1.36 KB
一键复制 编辑 原始数据 按行查看 历史
Fengguang 提交于 2年前 . use /usr/bin/env ruby
#!/usr/bin/env ruby
LKP_SRC = ENV['LKP_SRC'] || File.dirname(File.dirname(File.realpath($PROGRAM_NAME)))
require 'yaml'
require "#{LKP_SRC}/lib/pkgmap"
def fixup_depends(program, meta, path)
pkgbuild = File.dirname(path) + "/PKGBUILD"
return false if !File.exist? pkgbuild
findos = $package_mapper.find_os_with_pkg(program, 'openeuler') ||
$package_mapper.find_os_with_pkg(program, 'debian') ||
$package_mapper.find_os_with_pkg(program, '')
if findos.nil?
meta['depends'] ||= {}
if !meta['depends'].include? 'PKGBUILD'
return meta['depends']['PKGBUILD'] = Array(program)
elsif !Array(meta['depends']['PKGBUILD']).include? program
return meta['depends']['PKGBUILD'] = Array(program).concat(Array(meta['depends']['PKGBUILD']))
end
else
if meta['depends'].nil? or meta['depends'].empty?
meta['depends'] = {}
return meta['depends'][findos] = Array(program)
end
end
end
$package_mapper = PackageMapper.new
$package_mapper.ospackage_set.delete 'archlinux'
# input: programs/xxx/meta.yaml
ARGV.each do |path|
program = File.basename(File.dirname(path))
meta = YAML.load_file(path)
next unless fixup_depends(program, meta, path)
if meta['depends'].empty?
meta['depends'] = nil
end
puts path
yaml = meta.to_yaml.sub(/^---\n/, '')
File.open(path, 'w') do |file|
file.write(yaml)
end
end
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/wu_fengguang/lkp-tests.git
git@gitee.com:wu_fengguang/lkp-tests.git
wu_fengguang
lkp-tests
lkp-tests
master

搜索帮助