efi-demo-apps/.woodpecker.yaml

54 lines
1.9 KiB
YAML

steps:
- name: build
image: fedora
commands:
- echo "Preparing environment"
- sudo dnf -y install git
- sudo dnf -y install make
- sudo dnf -y install gcc-g++
- sudo dnf -y install libuuid-devel
- sudo dnf -y install nasm
- sudo dnf -y install acpica-tools
- echo "Cloning toolchain repositories"
- git clone https://github.com/tianocore/edk2.git
- cd edk2 && git submodule update --init && cd ..
- git clone https://github.com/tianocore/edk2-platforms.git
- cd edk2-platforms && git submodule update --init && cd ..
- git clone https://github.com/tianocore/edk2-non-osi.git
- echo "Configuring toolchain"
- export EDK_TOOLS_PATH="$PWD/edk2/BaseTools"
- export PACKAGES_PATH="$PWD/edk2:$PWD/edk2-platforms:$PWD/edk2-non-osi"
- . edk2/edksetup.sh
- make -C edk2/BaseTools
- echo "Copying EfiClock application files"
- mkdir edk2/EfiClock
- cp EfiClock/EfiClock.inf edk2/EfiClock/.
- cp EfiClock/UefiMain.c edk2/EfiClock/.
- rm -rf EfiClock
- sed -i '/\[Components\]/a EfiClock/EfiClock.inf' edk2/MdeModulePkg/MdeModulePkg.dsc
- echo "Copying EfiTicTacToe application files"
- mkdir edk2/EfiTicTacToe
- cp EfiTicTacToe/EfiTicTacToe.inf edk2/EfiTicTacToe/.
- cp EfiTicTacToe/UefiMain.c edk2/EfiTicTacToe/.
- rm -rf EfiTicTacToe
- sed -i '/\[Components\]/a EfiTicTacToe/EfiTicTacToe.inf' edk2/MdeModulePkg/MdeModulePkg.dsc
- echo "Building application"
- build -a X64 -t GCC -p MdeModulePkg/MdeModulePkg.dsc
- name: publish
image: woodpeckerci/plugin-gitea-release
when:
- event: [ tag ]
settings:
api_key:
from_secret: api_key
base_url: https://forge.slowte.ch
target: main
files:
- Build/MdeModule/DEBUG_GCC/X64/EfiClock.efi
- Build/MdeModule/DEBUG_GCC/X64/EfiTicTacToe.efi