diff --git a/.github/workflows/generate.yml b/.github/workflows/generate.yml new file mode 100644 index 000000000000..a9da41abd40f --- /dev/null +++ b/.github/workflows/generate.yml @@ -0,0 +1,108 @@ +name: Recreate Matrix (push) +on: + push: + branches: + - 'main' + paths: + - "config/boards/*" + - ".github/workflows/generate.yml" + workflow_dispatch: +jobs: + + build: + name: Recreate action + runs-on: ubuntu-latest + steps: + + - name: Checkout Armbian Framework + uses: actions/checkout@v4 + with: + repository: armbian/build + fetch-depth: 0 + clean: false + path: build + + - name: "Generate builds lists" + run: | + + cat <<- EOF > action.yml + name: Generated + on: + workflow_dispatch: + inputs: + + armbian_target: + type: choice + description: 'Build' + required: false + options: + - kernel + - build + default: build + + armbian_kernel_branch: + type: choice + description: 'Kernel branch' + options: + - legacy + - current + - edge + default: 'current' + + armbian_release: + type: choice + description: 'Userspace' + options: + - jammy + - bookworm + - trixie + default: 'jammy' + + armbian_ui: + type: choice + description: 'User interface (not all works)' + options: + - minimal + - server + - xfce + - gnome + - cinnamon + - i3-wm + - kde-plasma + default: 'minimal' + + armbian_version: + description: 'Version' + required: false + default: '' + + armbian_board: + type: choice + description: 'Board' + options: + EOF + # generate lists to include them + ls -1 build/config/boards/*.conf | cut -d"/" -f4 | cut -d"." -f1 | uniq | sed 's/.*/ - &/' >> action.yml + + cat <<- EOF >> action.yml + jobs: + + build: + name: "Build Armbian" + runs-on: ubuntu-latest + steps: + + - uses: armbian/build@AR-1459 + with: + armbian_token: "${{ '${{secrets.GITHUB_TOKEN}}' }}" + armbian_target: "\\${{ inputs.armbian_target }}" + armbian_release: "\${{ inputs.armbian_release }}" + armbian_kernel_branch: "\${{ inputs.armbian_kernel_branch }}" + armbian_ui: "\${{ inputs.armbian_ui }}" + armbian_board: "\${{ inputs.armbian_board }}" + armbian_release_tittle: "Armbian SDK" + armbian_release_body: "Virtual images for x86 and arm64" + armbian_pgp_key: "\${{ secrets.GPG_KEY1 }}" + armbian_pgp_password: "\${{ secrets.GPG_PASSPHRASE1 }}" + EOF + cat action.yml