ci: Allow EfiLoaderData code execution in AArch64 build #56
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Cloud Hypervisor edk2 release | |
| on: [create, push] | |
| jobs: | |
| build-x64: | |
| name: Build x86-64 | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Code checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Install dependencies | |
| run: sudo apt-get update && sudo apt-get -y install uuid-dev iasl build-essential git libbrotli-dev | |
| - name: Install nasm | |
| run: | | |
| wget https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.xz | |
| tar -xf nasm-2.15.05.tar.xz | |
| pushd nasm-2.15.05/ | |
| ./configure --prefix=/usr | |
| make | |
| sudo make install | |
| popd | |
| - name: Init submodules | |
| run: git submodule update --init --recursive | |
| - name: Build BaseTools and firmware | |
| run: | | |
| source edksetup.sh | |
| make -C BaseTools | |
| OvmfPkg/build.sh -p OvmfPkg/CloudHv/CloudHvX64.dsc -a X64 -b DEBUG | |
| - name: Upload x86-64 artifact | |
| if: github.event_name == 'create' && github.event.ref_type == 'tag' | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: cloudhv-x64 | |
| path: Build/CloudHvX64/DEBUG_GCC5/FV/CLOUDHV.fd | |
| build-aarch64: | |
| name: Build AArch64 | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Code checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Install dependencies | |
| run: sudo apt-get update && sudo apt-get -y install uuid-dev iasl build-essential git libbrotli-dev gcc-aarch64-linux-gnu | |
| - name: Init submodules | |
| run: git submodule update --init --recursive | |
| - name: Build BaseTools and firmware | |
| run: | | |
| source edksetup.sh | |
| make -C BaseTools | |
| export GCC5_AARCH64_PREFIX=aarch64-linux-gnu- | |
| build -p ArmVirtPkg/ArmVirtCloudHv.dsc -a AARCH64 -t GCC5 -b DEBUG \ | |
| --pcd gEfiMdeModulePkgTokenSpaceGuid.PcdDxeNxMemoryProtectionPolicy=0xC000000000007FD1 | |
| - name: Upload AArch64 artifact | |
| if: github.event_name == 'create' && github.event.ref_type == 'tag' | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: cloudhv-aarch64 | |
| path: Build/ArmVirtCloudHv-AARCH64/DEBUG_GCC5/FV/CLOUDHV_EFI.fd | |
| release: | |
| name: Release | |
| if: github.event_name == 'create' && github.event.ref_type == 'tag' | |
| needs: [build-x64, build-aarch64] | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Download artifacts | |
| uses: actions/download-artifact@v4 | |
| - name: Create release | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| draft: true | |
| files: | | |
| cloudhv-x64/CLOUDHV.fd | |
| cloudhv-aarch64/CLOUDHV_EFI.fd |