| 461 | end |
| 462 | |
| 463 | def yum_build(console: false) |
| 464 | tmp_dir = "#{yum_dir}/tmp" |
| 465 | rm_rf(tmp_dir) |
| 466 | mkdir_p(tmp_dir) |
| 467 | cp(rpm_archive_name, |
| 468 | File.join(tmp_dir, rpm_archive_name)) |
| 469 | |
| 470 | env_sh = "#{yum_dir}/env.sh" |
| 471 | File.open(env_sh, "w") do |file| |
| 472 | file.puts(<<-ENV) |
| 473 | SOURCE_ARCHIVE=#{rpm_archive_name} |
| 474 | PACKAGE=#{@rpm_package} |
| 475 | VERSION=#{@rpm_version} |
| 476 | RELEASE=#{@rpm_release} |
| 477 | ENV |
| 478 | end |
| 479 | |
| 480 | spec = "#{tmp_dir}/#{@rpm_package}.spec" |
| 481 | spec_in_data = File.read(yum_spec_in_path, encoding: "UTF-8") |
| 482 | spec_data = substitute_content(spec_in_data) do |key, matched| |
| 483 | yum_expand_variable(key) || matched |
| 484 | end |
| 485 | File.open(spec, "w") do |spec_file| |
| 486 | spec_file.print(spec_data) |
| 487 | end |
| 488 | |
| 489 | yum_targets.each do |target| |
| 490 | cd(yum_dir) do |
| 491 | distribution, version, architecture = split_target(target) |
| 492 | os = "#{distribution}-#{version}" |
| 493 | docker_run(os, architecture, console: console) |
| 494 | end |
| 495 | end |
| 496 | end |
| 497 | |
| 498 | def define_yum_task |
| 499 | namespace :yum do |