MCPcopy Create free account
hub / github.com/apache/arrow / apt_update

Method apt_update

dev/release/binary-task.rb:1533–1616  ·  view source on GitHub ↗
(base_dir, incoming_dir, merged_dir)

Source from the content-addressed store, hash-verified

1531 end
1532
1533 def apt_update(base_dir, incoming_dir, merged_dir)
1534 apt_targets.each do |distribution, code_name, component|
1535 distribution_dir = "#{incoming_dir}/#{distribution}"
1536 pool_dir = "#{distribution_dir}/pool/#{code_name}"
1537 next unless File.exist?(pool_dir)
1538 dists_dir = "#{distribution_dir}/dists/#{code_name}"
1539 rm_rf(dists_dir, verbose: verbose?)
1540 generate_apt_release(dists_dir, code_name, component, "source")
1541 apt_architectures.each do |architecture|
1542 generate_apt_release(dists_dir, code_name, component, architecture)
1543 end
1544
1545 generate_conf_file = Tempfile.new("apt-ftparchive-generate.conf")
1546 File.open(generate_conf_file.path, "w") do |conf|
1547 conf.puts(generate_apt_ftp_archive_generate_conf(code_name,
1548 component))
1549 end
1550 cd(distribution_dir, verbose: verbose?) do
1551 sh("apt-ftparchive",
1552 "generate",
1553 generate_conf_file.path,
1554 out: default_output,
1555 verbose: verbose?)
1556 end
1557
1558 Dir.glob("#{dists_dir}/Release*") do |release|
1559 rm_f(release, verbose: verbose?)
1560 end
1561 Dir.glob("#{distribution_dir}/*.db") do |db|
1562 rm_f(db, verbose: verbose?)
1563 end
1564 release_conf_file = Tempfile.new("apt-ftparchive-release.conf")
1565 File.open(release_conf_file.path, "w") do |conf|
1566 conf.puts(generate_apt_ftp_archive_release_conf(code_name,
1567 component))
1568 end
1569 release_file = Tempfile.new("apt-ftparchive-release")
1570 sh("apt-ftparchive",
1571 "-c", release_conf_file.path,
1572 "release",
1573 dists_dir,
1574 out: release_file.path,
1575 verbose: verbose?)
1576 mv(release_file.path, "#{dists_dir}/Release", verbose: verbose?)
1577
1578 if base_dir and merged_dir
1579 base_dists_dir = "#{base_dir}/#{distribution}/dists/#{code_name}"
1580 merged_dists_dir = "#{merged_dir}/#{distribution}/dists/#{code_name}"
1581 rm_rf(merged_dists_dir)
1582 if Dir.exist?(base_dists_dir) and Dir.empty?(base_dists_dir)
1583 mkdir_p(File.dirname(merged_dists_dir))
1584 cp_r(dists_dir, File.dirname(merged_dists_dir))
1585 else
1586 merger = APTDistsMerge::Merger.new(base_dists_dir,
1587 dists_dir,
1588 merged_dists_dir)
1589 merger.merge
1590 end

Callers

nothing calls this directly

Calls 7

exist?Method · 0.80
eachMethod · 0.45
newMethod · 0.45
openMethod · 0.45
pathMethod · 0.45
empty?Method · 0.45
mergeMethod · 0.45

Tested by

no test coverage detected