mirror of https://github.com/OpenIPC/firmware.git
				
				
				
			Use lite/fpv/ultimate Majestic binary releases with exceptions (#391)
* Use lite/fpv/ultimate Majestic binary releases with exceptions * Migrate hi3516av100/hi3516dv100 to new matrix builds * Migrate hi3519v101/hi3516av200 to new matrix builds * Only lite release for hi3519v101pull/396/head
							parent
							
								
									8762407ee6
								
							
						
					
					
						commit
						97fff4eda1
					
				|  | @ -1,152 +0,0 @@ | |||
| name: "Hi3516Av100  " | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - production | ||||
|     tags: | ||||
|       - "v*" | ||||
|   schedule: | ||||
|       - cron: "00 03 * * *" | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| jobs: | ||||
|   build_core: | ||||
|     name: OpenIPC firmware for Hi3516Av100 | ||||
|     runs-on: ubuntu-latest | ||||
| 
 | ||||
|     steps: | ||||
| 
 | ||||
|       - name: Checkout | ||||
|         id: checkout | ||||
|         uses: actions/checkout@v2 | ||||
| 
 | ||||
|       - name: Install build dependencies | ||||
|         run: | | ||||
|           make install-deps | ||||
|           mkdir -p tmp | ||||
|           if [ ! -z "$ACT" ]; then | ||||
|             apt install -y cpio rsync bc | ||||
|             echo "FORCE_UNSAFE_CONFIGURE=1" >> $GITHUB_ENV | ||||
|             # Mitigate #325 issue | ||||
|             apt install -y pip && pip install cmake | ||||
|           else | ||||
|             # https://github.com/actions/runner-images/issues/2577 | ||||
|             echo "1.1.1.1 invisible-mirror.net" | sudo tee -a /etc/hosts | ||||
|           fi | ||||
| 
 | ||||
|       - name: Free disk space | ||||
|         if: ${{ !env.ACT }} | ||||
|         run: | | ||||
|           sudo swapoff -a | ||||
|           sudo rm -f /swapfile | ||||
|           sudo apt clean | ||||
|           docker rmi $(docker image ls -aq) | ||||
|           df -h | ||||
| 
 | ||||
|       - name: Prepare buildroot | ||||
|         id: prepare | ||||
|         run: | | ||||
|           HEAD_TAG=$(git tag --points-at HEAD) | ||||
|           GIT_HASH=$(git rev-parse --short $GITHUB_SHA) | ||||
|           BRANCH_NAME=$(echo $GITHUB_REF | cut -d'/' -f 3) | ||||
|           if [ -z "$HEAD_TAG" ]; then | ||||
|             TAG_NAME="latest" | ||||
|             RELEASE_NAME="Development Build" | ||||
|             PRERELEASE=true | ||||
|           else | ||||
|             TAG_NAME=${{ github.ref }} | ||||
|             RELEASE_NAME="Release ${{ github.ref }}" | ||||
|             PRERELEASE=false | ||||
|           fi | ||||
|           echo "GIT_HASH=$GIT_HASH" >> $GITHUB_ENV | ||||
|           echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV | ||||
|           echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV | ||||
|           echo "PRERELEASE=$PRERELEASE" >> $GITHUB_ENV | ||||
|           echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make prepare | ||||
| 
 | ||||
|       - name: Build Hi3516Av100 firmware | ||||
|         id: build-hi3516av100-firmware | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_FW="${GITHUB_WORKSPACE}/output/images/openipc.hi3516av100-br.tgz" | ||||
|           echo "ARCHIVE_FW=$ARCHIVE_FW" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make PLATFORM=hisilicon BOARD=unknown_unknown_hi3516av100_openipc all | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) -gt 2097152 ]] && echo "TG_NOTIFY=Warning, kernel size exceeded : $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) vs 2097152... Hi3516Av100" >> $GITHUB_ENV && exit 1 | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) -gt 5242880 ]] && echo "TG_NOTIFY=Warning, rootfs size exceeded - $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) vs 5242880... Hi3516Av100" >> $GITHUB_ENV && exit 1 | ||||
|           cd ${GITHUB_WORKSPACE}/output/images | ||||
|           mv uImage uImage.hi3516av100 | ||||
|           mv rootfs.squashfs rootfs.squashfs.hi3516av100 | ||||
|           md5sum rootfs.squashfs.hi3516av100 > rootfs.squashfs.hi3516av100.md5sum | ||||
|           md5sum uImage.hi3516av100 > uImage.hi3516av100.md5sum | ||||
|           tar -cvzf $ARCHIVE_FW *hi3516av100* | ||||
| 
 | ||||
|       - name: Build Hi3516Av100 SDK | ||||
|         id: build-hi3516av100-sdk | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_SDK="${GITHUB_WORKSPACE}/output/images/arm-openipc-linux-musleabi_sdk-buildroot.tar.gz" | ||||
|           echo "ARCHIVE_SDK=$ARCHIVE_SDK" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE/output | ||||
|           make sdk | ||||
| 
 | ||||
|       - name: Send error message to telegram channel | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         if: steps.build-hi3516av100-firmware.outcome != 'success' || steps.build-hi3516av100-sdk.outcome != 'success' | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_NOTIFY="${TG_NOTIFY:=Warning, Buildroot compiling error... Hi3516Av100}" | ||||
|           TG_HEADER=$(echo -e "\r\n$TG_NOTIFY \r\n\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9A\xA0 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendMessage \ | ||||
|             -F chat_id=$TG_CHANNEL -F text="$TG_HEADER" | ||||
|           exit 2 | ||||
| 
 | ||||
|       - name: Create release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: actions/create-release@v1 | ||||
|         continue-on-error: true | ||||
|         env: | ||||
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||||
|         with: | ||||
|           tag_name: ${{ env.TAG_NAME }} | ||||
|           release_name: ${{ env.RELEASE_NAME }} | ||||
|           draft: false | ||||
|           prerelease: ${{ env.PRERELEASE }} | ||||
| 
 | ||||
|       - name: Upload NOR FW to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_FW }} | ||||
|           asset_name: "openipc.hi3516av100-br.tgz" | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Upload SDK to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_SDK }} | ||||
|           asset_name: "arm-openipc-hi3516av100-linux-musleabi_sdk-buildroot.tar.gz" | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Send binary file to telegram channel | ||||
|         if: ${{ !env.ACT }} | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \ | ||||
|             -F chat_id=$TG_CHANNEL -F document="@$ARCHIVE_FW" -F caption="$TG_HEADER" | ||||
|  | @ -1,151 +0,0 @@ | |||
| name: "Hi3516Av100 (ultimate)" | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - production | ||||
|     tags: | ||||
|       - "v*" | ||||
|   schedule: | ||||
|       - cron: "00 03 * * *" | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| jobs: | ||||
|   build_core: | ||||
|     name: OpenIPC firmware for Hi3516Av100 (ultimate) | ||||
|     runs-on: ubuntu-latest | ||||
| 
 | ||||
|     steps: | ||||
| 
 | ||||
|       - name: Checkout | ||||
|         id: checkout | ||||
|         uses: actions/checkout@v2 | ||||
| 
 | ||||
|       - name: Install build dependencies | ||||
|         run: | | ||||
|           make install-deps | ||||
|           mkdir -p tmp | ||||
|           if [ ! -z "$ACT" ]; then | ||||
|             apt install -y cpio rsync bc | ||||
|             echo "FORCE_UNSAFE_CONFIGURE=1" >> $GITHUB_ENV | ||||
|             # Mitigate #325 issue | ||||
|             apt install -y pip && pip install cmake | ||||
|           else | ||||
|             # https://github.com/actions/runner-images/issues/2577 | ||||
|             echo "1.1.1.1 invisible-mirror.net" | sudo tee -a /etc/hosts | ||||
|           fi | ||||
| 
 | ||||
|       - name: Free disk space | ||||
|         if: ${{ !env.ACT }} | ||||
|         run: | | ||||
|           sudo swapoff -a | ||||
|           sudo rm -f /swapfile | ||||
|           sudo apt clean | ||||
|           docker rmi $(docker image ls -aq) | ||||
|           df -h | ||||
| 
 | ||||
|       - name: Prepare buildroot | ||||
|         id: prepare | ||||
|         run: | | ||||
|           HEAD_TAG=$(git tag --points-at HEAD) | ||||
|           GIT_HASH=$(git rev-parse --short $GITHUB_SHA) | ||||
|           BRANCH_NAME=$(echo $GITHUB_REF | cut -d'/' -f 3) | ||||
|           if [ -z "$HEAD_TAG" ]; then | ||||
|             TAG_NAME="latest" | ||||
|             RELEASE_NAME="Development Build" | ||||
|             PRERELEASE=true | ||||
|           else | ||||
|             TAG_NAME=${{ github.ref }} | ||||
|             RELEASE_NAME="Release ${{ github.ref }}" | ||||
|             PRERELEASE=false | ||||
|           fi | ||||
|           echo "GIT_HASH=$GIT_HASH" >> $GITHUB_ENV | ||||
|           echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV | ||||
|           echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV | ||||
|           echo "PRERELEASE=$PRERELEASE" >> $GITHUB_ENV | ||||
|           echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV | ||||
|           echo "BOARD=hi3516av100" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make prepare | ||||
| 
 | ||||
|       - name: Build Hi3516Av100 (ultimate) firmware | ||||
|         id: build-hi3516av100-ultimate-firmware | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_FW="${GITHUB_WORKSPACE}/output/images/openipc.${BOARD}-ultimate-br.tgz" | ||||
|           ARCHIVE_FW_NAND="${GITHUB_WORKSPACE}/output/images/openipc.${BOARD}-nand-br.tgz" | ||||
|           echo "ARCHIVE_FW=$ARCHIVE_FW" >> $GITHUB_ENV | ||||
|           echo "ARCHIVE_FW_NAND=$ARCHIVE_FW_NAND" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make PLATFORM=hisilicon BOARD=unknown_unknown_${BOARD}_ultimate all | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) -gt 3145728 ]] && echo "TG_NOTIFY=Warning, kernel size exceeded : $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) ... ${BOARD} (ultimate)" >> $GITHUB_ENV && exit 1 | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) -gt 10485760 ]] && echo "TG_NOTIFY=Warning, rootfs size exceeded - $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) vs 10485760... ${BOARD} (ultimate)" >> $GITHUB_ENV && exit 1 | ||||
|           cd ${GITHUB_WORKSPACE}/output/images | ||||
|           mv uImage uImage.${BOARD} | ||||
|           mv rootfs.squashfs rootfs.squashfs.${BOARD} | ||||
|           mv rootfs.ubi rootfs.ubi.${BOARD} | ||||
|           mv rootfs.ubifs rootfs.ubifs.${BOARD} | ||||
|           md5sum rootfs.squashfs.${BOARD} > rootfs.squashfs.${BOARD}.md5sum | ||||
|           md5sum uImage.${BOARD} > uImage.${BOARD}.md5sum | ||||
|           md5sum rootfs.ubifs.${BOARD} > rootfs.ubifs.${BOARD}.md5sum | ||||
|           md5sum uImage.${BOARD} > uImage.${BOARD}.md5sum | ||||
|           tar -cvzf $ARCHIVE_FW uImage* *rootfs.squashfs.${BOARD}* | ||||
|           tar -cvzf $ARCHIVE_FW_NAND uImage* *rootfs.ubi*.${BOARD}* | ||||
| 
 | ||||
|       - name: Send error message to telegram channel | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         if: steps.build-hi3516av100-ultimate-firmware.outcome != 'success' | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_NOTIFY="${TG_NOTIFY:=Warning, Buildroot compiling error... ${BOARD} (ultimate)}" | ||||
|           TG_HEADER=$(echo -e "\r\n$TG_NOTIFY \r\n\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9A\xA0 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendMessage \ | ||||
|             -F chat_id=$TG_CHANNEL -F text="$TG_HEADER" | ||||
|           exit 2 | ||||
| 
 | ||||
|       - name: Create release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: actions/create-release@v1 | ||||
|         continue-on-error: true | ||||
|         env: | ||||
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||||
|         with: | ||||
|           tag_name: ${{ env.TAG_NAME }} | ||||
|           release_name: ${{ env.RELEASE_NAME }} | ||||
|           draft: false | ||||
|           prerelease: ${{ env.PRERELEASE }} | ||||
| 
 | ||||
|       - name: Upload NOR FW to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_FW }} | ||||
|           asset_name: openipc.${{ env.BOARD }}-ultimate-br.tgz | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Upload NAND FW to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_FW_NAND }} | ||||
|           asset_name: openipc.${{ env.BOARD }}-nand-br.tgz | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Send binary file to telegram channel | ||||
|         if: ${{ !env.ACT }} | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \ | ||||
|             -F chat_id=$TG_CHANNEL -F document="@$ARCHIVE_FW" -F caption="$TG_HEADER" | ||||
|  | @ -1,152 +0,0 @@ | |||
| name: "Hi3516Av200  " | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - production | ||||
|     tags: | ||||
|       - "v*" | ||||
|   schedule: | ||||
|       - cron: "00 03 * * *" | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| jobs: | ||||
|   build_core: | ||||
|     name: OpenIPC firmware for Hi3516Av200 | ||||
|     runs-on: ubuntu-latest | ||||
| 
 | ||||
|     steps: | ||||
| 
 | ||||
|       - name: Checkout | ||||
|         id: checkout | ||||
|         uses: actions/checkout@v2 | ||||
| 
 | ||||
|       - name: Install build dependencies | ||||
|         run: | | ||||
|           make install-deps | ||||
|           mkdir -p tmp | ||||
|           if [ ! -z "$ACT" ]; then | ||||
|             apt install -y cpio rsync bc | ||||
|             echo "FORCE_UNSAFE_CONFIGURE=1" >> $GITHUB_ENV | ||||
|             # Mitigate #325 issue | ||||
|             apt install -y pip && pip install cmake | ||||
|           else | ||||
|             # https://github.com/actions/runner-images/issues/2577 | ||||
|             echo "1.1.1.1 invisible-mirror.net" | sudo tee -a /etc/hosts | ||||
|           fi | ||||
| 
 | ||||
|       - name: Free disk space | ||||
|         if: ${{ !env.ACT }} | ||||
|         run: | | ||||
|           sudo swapoff -a | ||||
|           sudo rm -f /swapfile | ||||
|           sudo apt clean | ||||
|           docker rmi $(docker image ls -aq) | ||||
|           df -h | ||||
| 
 | ||||
|       - name: Prepare buildroot | ||||
|         id: prepare | ||||
|         run: | | ||||
|           HEAD_TAG=$(git tag --points-at HEAD) | ||||
|           GIT_HASH=$(git rev-parse --short $GITHUB_SHA) | ||||
|           BRANCH_NAME=$(echo $GITHUB_REF | cut -d'/' -f 3) | ||||
|           if [ -z "$HEAD_TAG" ]; then | ||||
|             TAG_NAME="latest" | ||||
|             RELEASE_NAME="Development Build" | ||||
|             PRERELEASE=true | ||||
|           else | ||||
|             TAG_NAME=${{ github.ref }} | ||||
|             RELEASE_NAME="Release ${{ github.ref }}" | ||||
|             PRERELEASE=false | ||||
|           fi | ||||
|           echo "GIT_HASH=$GIT_HASH" >> $GITHUB_ENV | ||||
|           echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV | ||||
|           echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV | ||||
|           echo "PRERELEASE=$PRERELEASE" >> $GITHUB_ENV | ||||
|           echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make prepare | ||||
| 
 | ||||
|       - name: Build Hi3516Av200 firmware | ||||
|         id: build-hi3516av200-firmware | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_FW="${GITHUB_WORKSPACE}/output/images/openipc.hi3516av200-br.tgz" | ||||
|           echo "ARCHIVE_FW=$ARCHIVE_FW" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make PLATFORM=hisilicon BOARD=unknown_unknown_hi3516av200_openipc all | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) -gt 2097152 ]] && echo "TG_NOTIFY=Warning, kernel size exceeded : $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) vs 2097152... HI3516AV200" >> $GITHUB_ENV && exit 1 | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) -gt 5242880 ]] && echo "TG_NOTIFY=Warning, rootfs size exceeded - $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) vs 5242880... HI3516AV200" >> $GITHUB_ENV && exit 1 | ||||
|           cd ${GITHUB_WORKSPACE}/output/images | ||||
|           mv uImage uImage.hi3516av200 | ||||
|           mv rootfs.squashfs rootfs.squashfs.hi3516av200 | ||||
|           md5sum rootfs.squashfs.hi3516av200 > rootfs.squashfs.hi3516av200.md5sum | ||||
|           md5sum uImage.hi3516av200 > uImage.hi3516av200.md5sum | ||||
|           tar -cvzf $ARCHIVE_FW *hi3516av200* | ||||
| 
 | ||||
|       - name: Build Hi3516Av200 SDK | ||||
|         id: build-hi3516av200-sdk | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_SDK="${GITHUB_WORKSPACE}/output/images/arm-openipc-linux-musleabi_sdk-buildroot.tar.gz" | ||||
|           echo "ARCHIVE_SDK=$ARCHIVE_SDK" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE/output | ||||
|           make sdk | ||||
| 
 | ||||
|       - name: Send error message to telegram channel | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         if: steps.build-hi3516av200-firmware.outcome != 'success' || steps.build-hi3516av200-sdk.outcome != 'success' | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_NOTIFY="${TG_NOTIFY:=Warning, Buildroot compiling error... HI3516AV200}" | ||||
|           TG_HEADER=$(echo -e "\r\n$TG_NOTIFY \r\n\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9A\xA0 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendMessage \ | ||||
|             -F chat_id=$TG_CHANNEL -F text="$TG_HEADER" | ||||
|           exit 2 | ||||
| 
 | ||||
|       - name: Create release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: actions/create-release@v1 | ||||
|         continue-on-error: true | ||||
|         env: | ||||
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||||
|         with: | ||||
|           tag_name: ${{ env.TAG_NAME }} | ||||
|           release_name: ${{ env.RELEASE_NAME }} | ||||
|           draft: false | ||||
|           prerelease: ${{ env.PRERELEASE }} | ||||
| 
 | ||||
|       - name: Upload NOR FW to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_FW }} | ||||
|           asset_name: "openipc.hi3516av200-br.tgz" | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Upload SDK to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_SDK }} | ||||
|           asset_name: "arm-openipc-hi3516av200-linux-musleabi_sdk-buildroot.tar.gz" | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Send binary file to telegram channel | ||||
|         if: ${{ !env.ACT }} | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \ | ||||
|             -F chat_id=$TG_CHANNEL -F document="@$ARCHIVE_FW" -F caption="$TG_HEADER" | ||||
|  | @ -1,151 +0,0 @@ | |||
| name: "Hi3516Av200 (ultimate)" | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - production | ||||
|     tags: | ||||
|       - "v*" | ||||
|   schedule: | ||||
|       - cron: "00 03 * * *" | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| jobs: | ||||
|   build_core: | ||||
|     name: OpenIPC firmware for Hi3516Av200 (ultimate) | ||||
|     runs-on: ubuntu-latest | ||||
| 
 | ||||
|     steps: | ||||
| 
 | ||||
|       - name: Checkout | ||||
|         id: checkout | ||||
|         uses: actions/checkout@v2 | ||||
| 
 | ||||
|       - name: Install build dependencies | ||||
|         run: | | ||||
|           make install-deps | ||||
|           mkdir -p tmp | ||||
|           if [ ! -z "$ACT" ]; then | ||||
|             apt install -y cpio rsync bc | ||||
|             echo "FORCE_UNSAFE_CONFIGURE=1" >> $GITHUB_ENV | ||||
|             # Mitigate #325 issue | ||||
|             apt install -y pip && pip install cmake | ||||
|           else | ||||
|             # https://github.com/actions/runner-images/issues/2577 | ||||
|             echo "1.1.1.1 invisible-mirror.net" | sudo tee -a /etc/hosts | ||||
|           fi | ||||
| 
 | ||||
|       - name: Free disk space | ||||
|         if: ${{ !env.ACT }} | ||||
|         run: | | ||||
|           sudo swapoff -a | ||||
|           sudo rm -f /swapfile | ||||
|           sudo apt clean | ||||
|           docker rmi $(docker image ls -aq) | ||||
|           df -h | ||||
| 
 | ||||
|       - name: Prepare buildroot | ||||
|         id: prepare | ||||
|         run: | | ||||
|           HEAD_TAG=$(git tag --points-at HEAD) | ||||
|           GIT_HASH=$(git rev-parse --short $GITHUB_SHA) | ||||
|           BRANCH_NAME=$(echo $GITHUB_REF | cut -d'/' -f 3) | ||||
|           if [ -z "$HEAD_TAG" ]; then | ||||
|             TAG_NAME="latest" | ||||
|             RELEASE_NAME="Development Build" | ||||
|             PRERELEASE=true | ||||
|           else | ||||
|             TAG_NAME=${{ github.ref }} | ||||
|             RELEASE_NAME="Release ${{ github.ref }}" | ||||
|             PRERELEASE=false | ||||
|           fi | ||||
|           echo "GIT_HASH=$GIT_HASH" >> $GITHUB_ENV | ||||
|           echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV | ||||
|           echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV | ||||
|           echo "PRERELEASE=$PRERELEASE" >> $GITHUB_ENV | ||||
|           echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV | ||||
|           echo "BOARD=hi3516av200" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make prepare | ||||
| 
 | ||||
|       - name: Build Hi3516Av200 (ultimate) firmware | ||||
|         id: build-hi3516av200-ultimate-firmware | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_FW="${GITHUB_WORKSPACE}/output/images/openipc.${BOARD}-ultimate-br.tgz" | ||||
|           ARCHIVE_FW_NAND="${GITHUB_WORKSPACE}/output/images/openipc.${BOARD}-nand-br.tgz" | ||||
|           echo "ARCHIVE_FW=$ARCHIVE_FW" >> $GITHUB_ENV | ||||
|           echo "ARCHIVE_FW_NAND=$ARCHIVE_FW_NAND" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make PLATFORM=hisilicon BOARD=unknown_unknown_${BOARD}_ultimate all | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) -gt 3145728 ]] && echo "TG_NOTIFY=Warning, kernel size exceeded : $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) ... ${BOARD} (ultimate)" >> $GITHUB_ENV && exit 1 | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) -gt 10485760 ]] && echo "TG_NOTIFY=Warning, rootfs size exceeded - $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) vs 10485760... ${BOARD} (ultimate)" >> $GITHUB_ENV && exit 1 | ||||
|           cd ${GITHUB_WORKSPACE}/output/images | ||||
|           mv uImage uImage.${BOARD} | ||||
|           mv rootfs.squashfs rootfs.squashfs.${BOARD} | ||||
|           mv rootfs.ubi rootfs.ubi.${BOARD} | ||||
|           mv rootfs.ubifs rootfs.ubifs.${BOARD} | ||||
|           md5sum rootfs.squashfs.${BOARD} > rootfs.squashfs.${BOARD}.md5sum | ||||
|           md5sum uImage.${BOARD} > uImage.${BOARD}.md5sum | ||||
|           md5sum rootfs.ubifs.${BOARD} > rootfs.ubifs.${BOARD}.md5sum | ||||
|           md5sum uImage.${BOARD} > uImage.${BOARD}.md5sum | ||||
|           tar -cvzf $ARCHIVE_FW uImage* *rootfs.squashfs.${BOARD}* | ||||
|           tar -cvzf $ARCHIVE_FW_NAND uImage* *rootfs.ubi*.${BOARD}* | ||||
| 
 | ||||
|       - name: Send error message to telegram channel | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         if: steps.build-hi3516av200-ultimate-firmware.outcome != 'success' | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_NOTIFY="${TG_NOTIFY:=Warning, Buildroot compiling error... ${BOARD} (ultimate)}" | ||||
|           TG_HEADER=$(echo -e "\r\n$TG_NOTIFY \r\n\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9A\xA0 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendMessage \ | ||||
|             -F chat_id=$TG_CHANNEL -F text="$TG_HEADER" | ||||
|           exit 2 | ||||
| 
 | ||||
|       - name: Create release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: actions/create-release@v1 | ||||
|         continue-on-error: true | ||||
|         env: | ||||
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||||
|         with: | ||||
|           tag_name: ${{ env.TAG_NAME }} | ||||
|           release_name: ${{ env.RELEASE_NAME }} | ||||
|           draft: false | ||||
|           prerelease: ${{ env.PRERELEASE }} | ||||
| 
 | ||||
|       - name: Upload NOR FW to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_FW }} | ||||
|           asset_name: openipc.${{ env.BOARD }}-ultimate-br.tgz | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Upload NAND FW to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_FW_NAND }} | ||||
|           asset_name: openipc.${{ env.BOARD }}-nand-br.tgz | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Send binary file to telegram channel | ||||
|         if: ${{ !env.ACT }} | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \ | ||||
|             -F chat_id=$TG_CHANNEL -F document="@$ARCHIVE_FW" -F caption="$TG_HEADER" | ||||
|  | @ -1,152 +0,0 @@ | |||
| name: "Hi3516Dv100  " | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - production | ||||
|     tags: | ||||
|       - "v*" | ||||
|   schedule: | ||||
|       - cron: "00 03 * * *" | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| jobs: | ||||
|   build_core: | ||||
|     name: OpenIPC firmware for Hi3516Dv100 | ||||
|     runs-on: ubuntu-latest | ||||
| 
 | ||||
|     steps: | ||||
| 
 | ||||
|       - name: Checkout | ||||
|         id: checkout | ||||
|         uses: actions/checkout@v2 | ||||
| 
 | ||||
|       - name: Install build dependencies | ||||
|         run: | | ||||
|           make install-deps | ||||
|           mkdir -p tmp | ||||
|           if [ ! -z "$ACT" ]; then | ||||
|             apt install -y cpio rsync bc | ||||
|             echo "FORCE_UNSAFE_CONFIGURE=1" >> $GITHUB_ENV | ||||
|             # Mitigate #325 issue | ||||
|             apt install -y pip && pip install cmake | ||||
|           else | ||||
|             # https://github.com/actions/runner-images/issues/2577 | ||||
|             echo "1.1.1.1 invisible-mirror.net" | sudo tee -a /etc/hosts | ||||
|           fi | ||||
| 
 | ||||
|       - name: Free disk space | ||||
|         if: ${{ !env.ACT }} | ||||
|         run: | | ||||
|           sudo swapoff -a | ||||
|           sudo rm -f /swapfile | ||||
|           sudo apt clean | ||||
|           docker rmi $(docker image ls -aq) | ||||
|           df -h | ||||
| 
 | ||||
|       - name: Prepare buildroot | ||||
|         id: prepare | ||||
|         run: | | ||||
|           HEAD_TAG=$(git tag --points-at HEAD) | ||||
|           GIT_HASH=$(git rev-parse --short $GITHUB_SHA) | ||||
|           BRANCH_NAME=$(echo $GITHUB_REF | cut -d'/' -f 3) | ||||
|           if [ -z "$HEAD_TAG" ]; then | ||||
|             TAG_NAME="latest" | ||||
|             RELEASE_NAME="Development Build" | ||||
|             PRERELEASE=true | ||||
|           else | ||||
|             TAG_NAME=${{ github.ref }} | ||||
|             RELEASE_NAME="Release ${{ github.ref }}" | ||||
|             PRERELEASE=false | ||||
|           fi | ||||
|           echo "GIT_HASH=$GIT_HASH" >> $GITHUB_ENV | ||||
|           echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV | ||||
|           echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV | ||||
|           echo "PRERELEASE=$PRERELEASE" >> $GITHUB_ENV | ||||
|           echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make prepare | ||||
| 
 | ||||
|       - name: Build Hi3516Dv100 firmware | ||||
|         id: build-hi3516dv100-firmware | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_FW="${GITHUB_WORKSPACE}/output/images/openipc.hi3516dv100-br.tgz" | ||||
|           echo "ARCHIVE_FW=$ARCHIVE_FW" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make PLATFORM=hisilicon BOARD=unknown_unknown_hi3516dv100_openipc all | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) -gt 2097152 ]] && echo "TG_NOTIFY=Warning, kernel size exceeded : $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) vs 2097152... Hi3516Dv100" >> $GITHUB_ENV && exit 1 | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) -gt 5242880 ]] && echo "TG_NOTIFY=Warning, rootfs size exceeded - $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) vs 5242880... Hi3516Dv100" >> $GITHUB_ENV && exit 1 | ||||
|           cd ${GITHUB_WORKSPACE}/output/images | ||||
|           mv uImage uImage.hi3516dv100 | ||||
|           mv rootfs.squashfs rootfs.squashfs.hi3516dv100 | ||||
|           md5sum rootfs.squashfs.hi3516dv100 > rootfs.squashfs.hi3516dv100.md5sum | ||||
|           md5sum uImage.hi3516dv100 > uImage.hi3516dv100.md5sum | ||||
|           tar -cvzf $ARCHIVE_FW *hi3516dv100* | ||||
| 
 | ||||
|       - name: Build Hi3516Dv100 SDK | ||||
|         id: build-hi3516dv100-sdk | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_SDK="${GITHUB_WORKSPACE}/output/images/arm-openipc-linux-musleabi_sdk-buildroot.tar.gz" | ||||
|           echo "ARCHIVE_SDK=$ARCHIVE_SDK" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE/output | ||||
|           make sdk | ||||
| 
 | ||||
|       - name: Send error message to telegram channel | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         if: steps.build-hi3516dv100-firmware.outcome != 'success' || steps.build-hi3516dv100-sdk.outcome != 'success' | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_NOTIFY="${TG_NOTIFY:=Warning, Buildroot compiling error... Hi3516Dv100}" | ||||
|           TG_HEADER=$(echo -e "\r\n$TG_NOTIFY \r\n\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9A\xA0 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendMessage \ | ||||
|             -F chat_id=$TG_CHANNEL -F text="$TG_HEADER" | ||||
|           exit 2 | ||||
| 
 | ||||
|       - name: Create release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: actions/create-release@v1 | ||||
|         continue-on-error: true | ||||
|         env: | ||||
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||||
|         with: | ||||
|           tag_name: ${{ env.TAG_NAME }} | ||||
|           release_name: ${{ env.RELEASE_NAME }} | ||||
|           draft: false | ||||
|           prerelease: ${{ env.PRERELEASE }} | ||||
| 
 | ||||
|       - name: Upload NOR FW to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_FW }} | ||||
|           asset_name: "openipc.hi3516dv100-br.tgz" | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Upload SDK to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_SDK }} | ||||
|           asset_name: "arm-openipc-hi3516dv100-linux-musleabi_sdk-buildroot.tar.gz" | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Send binary file to telegram channel | ||||
|         if: ${{ !env.ACT }} | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \ | ||||
|             -F chat_id=$TG_CHANNEL -F document="@$ARCHIVE_FW" -F caption="$TG_HEADER" | ||||
|  | @ -1,151 +0,0 @@ | |||
| name: "Hi3516Dv100 (ultimate)" | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - production | ||||
|     tags: | ||||
|       - "v*" | ||||
|   schedule: | ||||
|       - cron: "00 03 * * *" | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| jobs: | ||||
|   build_core: | ||||
|     name: OpenIPC firmware for Hi3516Dv100 (ultimate) | ||||
|     runs-on: ubuntu-latest | ||||
| 
 | ||||
|     steps: | ||||
| 
 | ||||
|       - name: Checkout | ||||
|         id: checkout | ||||
|         uses: actions/checkout@v2 | ||||
| 
 | ||||
|       - name: Install build dependencies | ||||
|         run: | | ||||
|           make install-deps | ||||
|           mkdir -p tmp | ||||
|           if [ ! -z "$ACT" ]; then | ||||
|             apt install -y cpio rsync bc | ||||
|             echo "FORCE_UNSAFE_CONFIGURE=1" >> $GITHUB_ENV | ||||
|             # Mitigate #325 issue | ||||
|             apt install -y pip && pip install cmake | ||||
|           else | ||||
|             # https://github.com/actions/runner-images/issues/2577 | ||||
|             echo "1.1.1.1 invisible-mirror.net" | sudo tee -a /etc/hosts | ||||
|           fi | ||||
| 
 | ||||
|       - name: Free disk space | ||||
|         if: ${{ !env.ACT }} | ||||
|         run: | | ||||
|           sudo swapoff -a | ||||
|           sudo rm -f /swapfile | ||||
|           sudo apt clean | ||||
|           docker rmi $(docker image ls -aq) | ||||
|           df -h | ||||
| 
 | ||||
|       - name: Prepare buildroot | ||||
|         id: prepare | ||||
|         run: | | ||||
|           HEAD_TAG=$(git tag --points-at HEAD) | ||||
|           GIT_HASH=$(git rev-parse --short $GITHUB_SHA) | ||||
|           BRANCH_NAME=$(echo $GITHUB_REF | cut -d'/' -f 3) | ||||
|           if [ -z "$HEAD_TAG" ]; then | ||||
|             TAG_NAME="latest" | ||||
|             RELEASE_NAME="Development Build" | ||||
|             PRERELEASE=true | ||||
|           else | ||||
|             TAG_NAME=${{ github.ref }} | ||||
|             RELEASE_NAME="Release ${{ github.ref }}" | ||||
|             PRERELEASE=false | ||||
|           fi | ||||
|           echo "GIT_HASH=$GIT_HASH" >> $GITHUB_ENV | ||||
|           echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV | ||||
|           echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV | ||||
|           echo "PRERELEASE=$PRERELEASE" >> $GITHUB_ENV | ||||
|           echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV | ||||
|           echo "BOARD=hi3516dv100" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make prepare | ||||
| 
 | ||||
|       - name: Build Hi3516Dv100 (ultimate) firmware | ||||
|         id: build-hi3516dv100-ultimate-firmware | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_FW="${GITHUB_WORKSPACE}/output/images/openipc.${BOARD}-ultimate-br.tgz" | ||||
|           ARCHIVE_FW_NAND="${GITHUB_WORKSPACE}/output/images/openipc.${BOARD}-nand-br.tgz" | ||||
|           echo "ARCHIVE_FW=$ARCHIVE_FW" >> $GITHUB_ENV | ||||
|           echo "ARCHIVE_FW_NAND=$ARCHIVE_FW_NAND" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make PLATFORM=hisilicon BOARD=unknown_unknown_${BOARD}_ultimate all | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) -gt 3145728 ]] && echo "TG_NOTIFY=Warning, kernel size exceeded : $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) ... ${BOARD} (ultimate)" >> $GITHUB_ENV && exit 1 | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) -gt 10485760 ]] && echo "TG_NOTIFY=Warning, rootfs size exceeded - $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) vs 10485760... ${BOARD} (ultimate)" >> $GITHUB_ENV && exit 1 | ||||
|           cd ${GITHUB_WORKSPACE}/output/images | ||||
|           mv uImage uImage.${BOARD} | ||||
|           mv rootfs.squashfs rootfs.squashfs.${BOARD} | ||||
|           mv rootfs.ubi rootfs.ubi.${BOARD} | ||||
|           mv rootfs.ubifs rootfs.ubifs.${BOARD} | ||||
|           md5sum rootfs.squashfs.${BOARD} > rootfs.squashfs.${BOARD}.md5sum | ||||
|           md5sum uImage.${BOARD} > uImage.${BOARD}.md5sum | ||||
|           md5sum rootfs.ubifs.${BOARD} > rootfs.ubifs.${BOARD}.md5sum | ||||
|           md5sum uImage.${BOARD} > uImage.${BOARD}.md5sum | ||||
|           tar -cvzf $ARCHIVE_FW uImage* *rootfs.squashfs.${BOARD}* | ||||
|           tar -cvzf $ARCHIVE_FW_NAND uImage* *rootfs.ubi*.${BOARD}* | ||||
| 
 | ||||
|       - name: Send error message to telegram channel | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         if: steps.build-hi3516dv100-ultimate-firmware.outcome != 'success' | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_NOTIFY="${TG_NOTIFY:=Warning, Buildroot compiling error... ${BOARD} (ultimate)}" | ||||
|           TG_HEADER=$(echo -e "\r\n$TG_NOTIFY \r\n\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9A\xA0 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendMessage \ | ||||
|             -F chat_id=$TG_CHANNEL -F text="$TG_HEADER" | ||||
|           exit 2 | ||||
| 
 | ||||
|       - name: Create release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: actions/create-release@v1 | ||||
|         continue-on-error: true | ||||
|         env: | ||||
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||||
|         with: | ||||
|           tag_name: ${{ env.TAG_NAME }} | ||||
|           release_name: ${{ env.RELEASE_NAME }} | ||||
|           draft: false | ||||
|           prerelease: ${{ env.PRERELEASE }} | ||||
| 
 | ||||
|       - name: Upload NOR FW to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_FW }} | ||||
|           asset_name: openipc.${{ env.BOARD }}-ultimate-br.tgz | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Upload NAND FW to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_FW_NAND }} | ||||
|           asset_name: openipc.${{ env.BOARD }}-nand-br.tgz | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Send binary file to telegram channel | ||||
|         if: ${{ !env.ACT }} | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \ | ||||
|             -F chat_id=$TG_CHANNEL -F document="@$ARCHIVE_FW" -F caption="$TG_HEADER" | ||||
|  | @ -28,7 +28,9 @@ jobs: | |||
|       fail-fast: false | ||||
|       matrix: | ||||
|         platform: | ||||
|           - hi3516av100 | ||||
|           - hi3516cv200 | ||||
|           - hi3519v101 | ||||
|           - hi3516cv300 | ||||
|           - hi3516cv500 | ||||
|           - hi3516ev200 | ||||
|  | @ -140,6 +142,9 @@ jobs: | |||
|       fail-fast: false | ||||
|       matrix: | ||||
|         platform: | ||||
|           - hi3516av100 | ||||
|           - hi3516dv100 | ||||
|           - hi3516av200 | ||||
|           - hi3516ev200 | ||||
|           - hi3516ev300 | ||||
|           - hi3518ev300 | ||||
|  | @ -155,6 +160,8 @@ jobs: | |||
|         include: | ||||
|           - platform: hi3518ev200 | ||||
|             release: mini | ||||
|           - platform: hi3519v101 | ||||
|             release: lite | ||||
|           - platform: hi3516cv300 | ||||
|             release: mini | ||||
|           - platform: hi3516ev200 | ||||
|  |  | |||
|  | @ -1,152 +0,0 @@ | |||
| name: "Hi3519v101  " | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - production | ||||
|     tags: | ||||
|       - "v*" | ||||
|   schedule: | ||||
|       - cron: "00 03 * * *" | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| jobs: | ||||
|   build_core: | ||||
|     name: OpenIPC firmware for Hi3519v101 | ||||
|     runs-on: ubuntu-latest | ||||
| 
 | ||||
|     steps: | ||||
| 
 | ||||
|       - name: Checkout | ||||
|         id: checkout | ||||
|         uses: actions/checkout@v2 | ||||
| 
 | ||||
|       - name: Install build dependencies | ||||
|         run: | | ||||
|           make install-deps | ||||
|           mkdir -p tmp | ||||
|           if [ ! -z "$ACT" ]; then | ||||
|             apt install -y cpio rsync bc | ||||
|             echo "FORCE_UNSAFE_CONFIGURE=1" >> $GITHUB_ENV | ||||
|             # Mitigate #325 issue | ||||
|             apt install -y pip && pip install cmake | ||||
|           else | ||||
|             # https://github.com/actions/runner-images/issues/2577 | ||||
|             echo "1.1.1.1 invisible-mirror.net" | sudo tee -a /etc/hosts | ||||
|           fi | ||||
| 
 | ||||
|       - name: Free disk space | ||||
|         if: ${{ !env.ACT }} | ||||
|         run: | | ||||
|           sudo swapoff -a | ||||
|           sudo rm -f /swapfile | ||||
|           sudo apt clean | ||||
|           docker rmi $(docker image ls -aq) | ||||
|           df -h | ||||
| 
 | ||||
|       - name: Prepare buildroot | ||||
|         id: prepare | ||||
|         run: | | ||||
|           HEAD_TAG=$(git tag --points-at HEAD) | ||||
|           GIT_HASH=$(git rev-parse --short $GITHUB_SHA) | ||||
|           BRANCH_NAME=$(echo $GITHUB_REF | cut -d'/' -f 3) | ||||
|           if [ -z "$HEAD_TAG" ]; then | ||||
|             TAG_NAME="latest" | ||||
|             RELEASE_NAME="Development Build" | ||||
|             PRERELEASE=true | ||||
|           else | ||||
|             TAG_NAME=${{ github.ref }} | ||||
|             RELEASE_NAME="Release ${{ github.ref }}" | ||||
|             PRERELEASE=false | ||||
|           fi | ||||
|           echo "GIT_HASH=$GIT_HASH" >> $GITHUB_ENV | ||||
|           echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV | ||||
|           echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV | ||||
|           echo "PRERELEASE=$PRERELEASE" >> $GITHUB_ENV | ||||
|           echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make prepare | ||||
| 
 | ||||
|       - name: Build Hi3519v101 firmware | ||||
|         id: build-hi3519v101-firmware | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_FW="${GITHUB_WORKSPACE}/output/images/openipc.hi3519v101-br.tgz" | ||||
|           echo "ARCHIVE_FW=$ARCHIVE_FW" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE | ||||
|           make PLATFORM=hisilicon BOARD=unknown_unknown_hi3519v101_openipc all | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) -gt 2097152 ]] && echo "TG_NOTIFY=Warning, kernel size exceeded : $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/uImage) vs 2097152... HI3519V101" >> $GITHUB_ENV && exit 1 | ||||
|           [[ $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) -gt 5242880 ]] && echo "TG_NOTIFY=Warning, rootfs size exceeded - $(stat --printf="%s" ${GITHUB_WORKSPACE}/output/images/rootfs.squashfs) vs 5242880... HI3519V101" >> $GITHUB_ENV && exit 1 | ||||
|           cd ${GITHUB_WORKSPACE}/output/images | ||||
|           mv uImage uImage.hi3519v101 | ||||
|           mv rootfs.squashfs rootfs.squashfs.hi3519v101 | ||||
|           md5sum rootfs.squashfs.hi3519v101 > rootfs.squashfs.hi3519v101.md5sum | ||||
|           md5sum uImage.hi3519v101 > uImage.hi3519v101.md5sum | ||||
|           tar -cvzf $ARCHIVE_FW *hi3519v101* | ||||
| 
 | ||||
|       - name: Build Hi3519v101 SDK | ||||
|         id: build-hi3519v101-sdk | ||||
|         continue-on-error: true | ||||
|         run: | | ||||
|           ARCHIVE_SDK="${GITHUB_WORKSPACE}/output/images/arm-openipc-linux-musleabi_sdk-buildroot.tar.gz" | ||||
|           echo "ARCHIVE_SDK=$ARCHIVE_SDK" >> $GITHUB_ENV | ||||
|           cd $GITHUB_WORKSPACE/output | ||||
|           make sdk | ||||
| 
 | ||||
|       - name: Send error message to telegram channel | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         if: steps.build-hi3519v101-firmware.outcome != 'success' || steps.build-hi3519v101-sdk.outcome != 'success' | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_NOTIFY="${TG_NOTIFY:=Warning, Buildroot compiling error... HI3519V101}" | ||||
|           TG_HEADER=$(echo -e "\r\n$TG_NOTIFY \r\n\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9A\xA0 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendMessage \ | ||||
|             -F chat_id=$TG_CHANNEL -F text="$TG_HEADER" | ||||
|           exit 2 | ||||
| 
 | ||||
|       - name: Create release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: actions/create-release@v1 | ||||
|         continue-on-error: true | ||||
|         env: | ||||
|           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||||
|         with: | ||||
|           tag_name: ${{ env.TAG_NAME }} | ||||
|           release_name: ${{ env.RELEASE_NAME }} | ||||
|           draft: false | ||||
|           prerelease: ${{ env.PRERELEASE }} | ||||
| 
 | ||||
|       - name: Upload NOR FW to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_FW }} | ||||
|           asset_name: "openipc.hi3519v101-br.tgz" | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Upload SDK to release | ||||
|         if: ${{ !env.ACT }} | ||||
|         uses: svenstaro/upload-release-action@v2 | ||||
|         continue-on-error: true | ||||
|         with: | ||||
|           repo_token: ${{ secrets.GITHUB_TOKEN }} | ||||
|           file: ${{ env.ARCHIVE_SDK }} | ||||
|           asset_name: "arm-openipc-hi3519v101-linux-musleabi_sdk-buildroot.tar.gz" | ||||
|           tag: ${{ env.TAG_NAME }} | ||||
|           overwrite: true | ||||
| 
 | ||||
|       - name: Send binary file to telegram channel | ||||
|         if: ${{ !env.ACT }} | ||||
|         env: | ||||
|           TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }} | ||||
|           TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }} | ||||
|         run: | | ||||
|           TG_OPTIONS="-s --connect-timeout 30 --max-time 30" | ||||
|           TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions") | ||||
|           curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \ | ||||
|             -F chat_id=$TG_CHANNEL -F document="@$ARCHIVE_FW" -F caption="$TG_HEADER" | ||||
|  | @ -14,10 +14,6 @@ FAMILY := $(shell grep "/board/" $(BR2_CONFIG) | head -1 | cut -d "/" -f 3) | |||
| # TODO: change field number removing unknown_unknown
 | ||||
| RELEASE := $(shell grep "BR2_DEFCONFIG" $(BR2_CONFIG) | head -1 | cut -d "_" -f 5) | ||||
| 
 | ||||
| ifneq ($(RELEASE),ultimate) | ||||
| 	RELEASE := lite | ||||
| endif | ||||
| 
 | ||||
| ifeq ($(BR2_PACKAGE_INGENIC_OSDRV_T20),y) | ||||
| 	FAMILY := t21 | ||||
| else ifeq ($(BR2_PACKAGE_INGENIC_OSDRV_T30),y) | ||||
|  | @ -28,6 +24,20 @@ else ifeq ($(BR2_PACKAGE_SIGMASTAR_OSDRV_SSC335),y) | |||
| 	FAMILY := ssc335 | ||||
| endif | ||||
| 
 | ||||
| ifeq ($(RELEASE),fpv) | ||||
| 	# keep | ||||
| else ifeq ($(RELEASE),ultimate) | ||||
| 	# we don't have Majestic binary Ultimate distributions for these | ||||
| 	# platforms so use Lite | ||||
| 	ifeq ($(FAMILY),hi3516av100) | ||||
| 		RELEASE := lite | ||||
| 	else ifeq ($(FAMILY),hi3519v101) | ||||
| 		RELEASE := lite | ||||
| 	endif | ||||
| else | ||||
| 	RELEASE := lite | ||||
| endif | ||||
| 
 | ||||
| MAJESTIC_SOURCE := majestic.$(FAMILY).$(RELEASE).master.tar.bz2 | ||||
| 
 | ||||
| MAJESTIC_DEPENDENCIES = \
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue