Jump to content

[Armbian build PR] - rpardini's mid-may/`23 pipeline fixes, debs-to-repo, rootfs-repo de-chicken-egg-ize


Recommended Posts

Posted

rpardini's mid-may/`23 pipeline fixes, debs-to-repo, rootfs-repo de-chicken-egg-ize

General fixes for GHA/pipelines, produced debs, etc

  • export-logs: add GHA output for logs_url (when SHARE_LOG=yes)
  • github-actions: more logging for GHA actions outputs
  • oci-oras: retry harder, and sleep for more time, if push failed
  • artifacts(debs): include DEBIAN/md5sums and a correct Installed-Size: field in DEBIAN/control (for all debs)
  • artifacts(debs): rationalize "bash hash" creation with new calculate_hash_for_bash_deb_artifact() helper
  • kernel-debs: include "Priority: optional" in all kernel debs (all other packages have it...)
    • also for fake_ubuntu_advantage_tools
      • also include "Section: " missing for advantage
  • artifacts-obtain: deb-tar: don't download .tar again if .debs are in-disk; delete .tar after extracting
  • artifacts: include the artifact maps info (debs/packages) both as keys and values in the artifact JSON info
    • this is valuable for the debs-to-repo process; we can now know which exact .debs are produced, and all the ways we can refer to them
  • docker: remove dead code

debs-to-repo and download-artifacts; those are mostly ready, but might need to be made parallel for speedyness. Not required, also not impacting. Works with reprepro for now

  • pipeline: debs-to-repo (v7, working with reprepro)
    • pipeline: artifacts: use better description for artifacts (artifact_name+artifact_version instead of artifact_final_file_basename)
  • artifacts: download-artifact CLI. makes sure to only used local .deb, or download from OCI, never build

Remove chicken-egg from rootfs vs repo

  • rootfs/image: introduce new hook custom_apt_repo() (hashed into rootfs version); deploy different repo components/custom repos depending on rootfs or image
    • rationale: we don't want an eternal chicken-egg problem with rootfs vs repo.
      • but, desktop rootfs require some parts of repo. case in point: system-monitoring-center
        • so only add certain components of repo (-desktop, -utils) to rootfs so that is honored
    • introduce custom_apt_repo() hook for extensions to add their repos as well
      • same chicken-egg-avoiding is possible via param CUSTOM_REPO_WHEN

View the full article

×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines