class Ki::BuildVersionMetadataFile
Builds and updates ki-metada.json file based on parameters and added files @see VersionMetadataFile
Public Instance Methods
execute(ctx, args)
click to toggle source
# File lib/cmd/version_cmd.rb, line 29 def execute(ctx, args) # opts.parse parses input parameters and fills in configuration parameters files = opts.parse(args) if source_parameters.size > 0 metadata_file.source(source_parameters) end # adds files to metadata and fills in parameters metadata_file.add_files(input_dir, files, default_parameters) metadata_file.save end
help()
click to toggle source
# File lib/cmd/version_cmd.rb, line 84 def help <<EOF "#{shell_command}" can be used to generate version metadata files. Version metadata files contain information about files (size, permission bits, hash checksums), version origins and dependencies. After version metadata file is ready, it can be imported to repository using version-import. ### Usage #{shell_command} <parameters> file_pattern1*.* file_pattern2*.* ### Examples #{shell_command} test.sh #{shell_command} readme* -t doc #{shell_command} -d my/component/1,name=comp,path=doc,internal -O "mv doc/test.sh helloworld.sh" ki version-import ### Parameters #{opts} EOF end
opts()
click to toggle source
# File lib/cmd/version_cmd.rb, line 40 def opts OptionParser.new do |opts| opts.banner = "" opts.on("-f", "--file FILE", "Version file target") do |v| if !defined? @input_dir input_dir(File.dirname(v)) end metadata_file.init_from_path(v) end opts.on("-i", "--input-directory INPUT-DIR", "Input directory") do |v| input_dir(v) end opts.on("-v", "--version-id VERSION-ID", "Version's id") do |v| metadata_file.version_id=v end ["url", "tag-url", "author", "repotype"].each do |source_param| opts.on("--source-#{source_param} #{source_param.upcase}", "Build source parameter #{source_param}") do |v| source_parameters[source_param]=v end end opts.on("-t", "--tags TAGS", "Tag files with keywords") do |v| default_parameters["tags"]= v.split(",").sort end hash_prefix = "/hashing" hashes = KiCommand::KiExtensions.find(hash_prefix).map { |k, v| k[hash_prefix.size+1..-1] } opts.on("--hashes HASHES", "Calculate checksums using defined hash algos. Default: sha1. Available: #{hashes.join(", ")}") do |v| default_parameters["hashes"]= v.split(",").sort end opts.on("-d", "--dependency DEPENDENCY", "Dependency definition my/component/123[,name=AA][,path=aa][,internal]") do |v| previous_dep(metadata_file.add_dependency(v)) end opts.on("-o", "--operation OP", "Add operation to previous dependency") do |v| previous_dep.add_operation(v.split(" ")) end opts.on("-O", "--version-operation OP", "Add operation to version") do |v| metadata_file.add_operation(v.split(" ")) end end end
summary()
click to toggle source
# File lib/cmd/version_cmd.rb, line 80 def summary "Create version metadata file" end