run CI for tags #3
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: Build | |
| on: | |
| push: | |
| branches: | |
| - master | |
| tags: | |
| - "v*" | |
| workflow_dispatch: | |
| # see more at https://github.com/DavidingPlus/nvmixfs/issues/1 | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| container: | |
| image: ubuntu:20.04 | |
| env: | |
| # change your own kernel version here. | |
| KERNEL_VERSION: "5.4.0-208-generic" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Dependencies | |
| run: | | |
| apt update | |
| apt install curl -y | |
| apt install build-essential -y | |
| apt install linux-headers-${KERNEL_VERSION} -y | |
| apt install python3 python3-pip -y | |
| # cmake dependency which needs extra terminal input, annoying | |
| # see more at https://blog.csdn.net/jiangjiang_jian/article/details/100731400/ | |
| DEBIAN_FRONTEND=noninteractive apt install tzdata -y | |
| # conan needs cmake and pip | |
| apt install cmake -y | |
| - name: Install XMake | |
| run: | | |
| curl -fsSL https://xmake.io/shget.text | bash | |
| # use xmake as root | |
| alias xmake="~/.local/bin/xmake" | |
| export XMAKE_ROOT=y | |
| # keep xmake up to date | |
| xmake update -s dev | |
| # conan needs pip(by apt) and cmake(by snap recommended) | |
| - name: Install Conan | |
| run: | | |
| pip install conan==2.6.0 | |
| conan profile detect | |
| - name: Configure XMake | |
| working-directory: ${{github.workspace}} | |
| run: | | |
| alias xmake="~/.local/bin/xmake" | |
| export XMAKE_ROOT=y | |
| xmake f -m release --linux-headers=/usr/src/linux-headers-${KERNEL_VERSION}/ -y | |
| - name: Build Targets | |
| working-directory: ${{github.workspace}} | |
| run: | | |
| alias xmake="~/.local/bin/xmake" | |
| export XMAKE_ROOT=y | |
| xmake build |