We’ve definitely build release pipelines for binaries internally and would be happy to help with this.
I like the idea of kicking a new release after a release is tagged. Do you have any thoughts about how we’re possibly re-release if there were changes to one of the new stable/* branches, or would it be easier to just cross that bridge when we get there? Do you have opinions about Nuget vs other binary release mechanisms (our experience is with Nuget, but I know there are other feed types that we could publish to)? Ideally it would be something that could be authenticated or compared somehow.
- Bret
From: Laszlo Ersek via groups.io
Sent: Tuesday, January 19, 2021 11:30 AM
To: Liming Gao (Byosoft address);
Leif Lindholm (Nuvia address);
Ard Biesheuvel (TianoCore); Ni, Ray;
Zhichao Gao; Abner Chang
Cc: edk2-devel-groups-io
Subject: [EXTERNAL] [edk2-devel] building the shell for edk2-stable202102
Ouch, I totally forgot to add the mailing list to the address list!
Doing that now. Apologies.
--o--
Hi All,
we've last built the UEFI shell binary for edk2-stable202002 (i.e.,
almost 1 year ago):
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ftianocore%2Fedk2%2Freleases%2Ftag%2Fedk2-stable202002&data=04%7C01%7Cbret.barkelew%40microsoft.com%7C8e0e9a9a97be429c1b6c08d8bcb0bcb0%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637466814561378976%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=ObFHM4vr8SuNSLwSwBD95qIvZjt7wRCA54xinkWZeLY%3D&reserved=0
Note "ShellBinPkg.zip" under Assets -- there is no stable tag that is
(a) more recent and (b) whose Assets contain "ShellBinPkg.zip".
Contents:
> Archive: ShellBinPkg.zip
> Length Date Time Name
> --------- ---------- ----- ----
> 0 03-06-2020 22:43 ShellBinPkg/MinUefiShell/
> 0 03-06-2020 22:41 ShellBinPkg/MinUefiShell/AArch64/
> 380928 03-06-2020 17:39 ShellBinPkg/MinUefiShell/AArch64/Shell.efi
> 0 03-06-2020 22:41 ShellBinPkg/MinUefiShell/Arm/
> 321568 03-06-2020 17:38 ShellBinPkg/MinUefiShell/Arm/Shell.efi
> 0 03-05-2020 09:01 ShellBinPkg/MinUefiShell/Ia32/
> 339424 03-05-2020 09:01 ShellBinPkg/MinUefiShell/Ia32/Shell.efi
> 643 03-06-2020 22:43 ShellBinPkg/MinUefiShell/MinUefiShell.inf
> 0 03-05-2020 09:01 ShellBinPkg/MinUefiShell/X64/
> 392352 03-05-2020 09:01 ShellBinPkg/MinUefiShell/X64/Shell.efi
> 0 03-06-2020 22:43 ShellBinPkg/UefiShell/
> 0 03-06-2020 22:41 ShellBinPkg/UefiShell/AArch64/
> 892928 03-06-2020 17:40 ShellBinPkg/UefiShell/AArch64/Shell.efi
> 0 03-06-2020 22:41 ShellBinPkg/UefiShell/Arm/
> 791360 03-06-2020 17:39 ShellBinPkg/UefiShell/Arm/Shell.efi
> 0 03-05-2020 09:01 ShellBinPkg/UefiShell/Ia32/
> 825184 03-05-2020 09:00 ShellBinPkg/UefiShell/Ia32/Shell.efi
> 643 03-06-2020 22:43 ShellBinPkg/UefiShell/UefiShell.inf
> 0 03-05-2020 09:01 ShellBinPkg/UefiShell/X64/
> 939648 03-05-2020 09:01 ShellBinPkg/UefiShell/X64/Shell.efi
> 0 03-06-2020 22:40 ShellBinPkg/
> --------- -------
> 4884678 21 files
I propose that we rebuild the shell for edk2-stable202102. Reasons:
(1) There are two small shell features minimally in the latest
development cycle:
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ftianocore%2Ftianocore.github.io%2Fwiki%2FEDK-II-Release-Planning&data=04%7C01%7Cbret.barkelew%40microsoft.com%7C8e0e9a9a97be429c1b6c08d8bcb0bcb0%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637466814561378976%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=sH5nHKgFwcykHgNKm6Nu2esq05F1dKt3t%2BEncNyRap8%3D&reserved=0
* add file buffering to the UEFI shell's COMP command
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D3123&data=04%7C01%7Cbret.barkelew%40microsoft.com%7C8e0e9a9a97be429c1b6c08d8bcb0bcb0%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637466814561378976%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=Po1VBWyzo7YPioV1FUJZ2t1rB%2FhwgoofX8EH9YKJPBc%3D&reserved=0
* Shell: pathname / filename sorting
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D3151&data=04%7C01%7Cbret.barkelew%40microsoft.com%7C8e0e9a9a97be429c1b6c08d8bcb0bcb0%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637466814561378976%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=Qz58BSZ7iwNpyD%2BvOayA0VaA0IlDWNz14zwCjxsS6aU%3D&reserved=0
(2) The zip file listed above does not contain a RISC-V binary, and
RISC-V has been an official UEFI and edk2 platform minimally since
edk2-stable202005 /
<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D2672&data=04%7C01%7Cbret.barkelew%40microsoft.com%7C8e0e9a9a97be429c1b6c08d8bcb0bcb0%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637466814561378976%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=B6E6J8HHERxZyqgV87n0vbJgp4NWUSMVN%2FoyaW%2FcF0U%3D&reserved=0>.
In particular, the following two platforms in edk2-platforms include
the shell (SUPPORTED_ARCHITECTURES = RISCV64):
Platform/SiFive/U5SeriesPkg/FreedomU500VC707Board/U500.dsc
Platform/SiFive/U5SeriesPkg/FreedomU540HiFiveUnleashedBoard/U540.dsc
However, as of this writing (@ 6e5586863148), we only have the
following list in "Maintainers.txt":
> UEFI Shell Binaries (ShellBinPkg.zip) from EDK II Releases:
> -----------------------------------------------------------
> W:
https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ftianocore%2Fedk2%2Freleases%2F&data=04%7C01%7Cbret.barkelew%40microsoft.com%7C8e0e9a9a97be429c1b6c08d8bcb0bcb0%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637466814561388970%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=ikDhWcETk90pMfREpPuvAWzobu41W2vUQT9wrRRBhzM%3D&reserved=0
> M: Ray Ni <ray.ni@intel.com> (Ia32/X64)
> M: Zhichao Gao <zhichao.gao@intel.com> (Ia32/X64)
> M: Leif Lindholm <leif@nuviainc.com> (ARM/AArch64)
> M: Ard Biesheuvel <ardb+tianocore@kernel.org> (ARM/AArch64)
I think that (a) Abner should be added to this list, and (b) we
should include a RISC-V shell binary in the upcoming assets.
Abner, can you send a patch for "Maintainers.txt" please?
Questions:
- I'm not clear on how we intend to build the shell binaries -- will we
retrieve them from CI / Azure somehow, or is it a manual process?
- Given that this is a release activity, I'm unsure where I could file a
reminder about it -- clearly, the binaries should be built right after
the tag has been made.
Should I perhaps file a new reminder BZ for the "N/A" Package, and
maybe assign it to Liming (our release manager)?
Thanks,
Laszlo