mirror of
https://github.com/DarkFlippers/unleashed-firmware
synced 2024-11-10 06:54:19 +00:00
420 lines
14 KiB
YAML
420 lines
14 KiB
YAML
kind: pipeline
|
|
type: docker
|
|
name: "Release firmware"
|
|
|
|
platform:
|
|
os: linux
|
|
arch: amd64
|
|
|
|
steps:
|
|
- name: "Update submodules"
|
|
image: alpine/git
|
|
commands:
|
|
- git submodule sync
|
|
- git -c protocol.version=2 submodule update --init --force --recursive
|
|
- git submodule foreach git config --local gc.auto 0
|
|
- git log -1 --format='%H'
|
|
|
|
- name: "Build firmware"
|
|
image: hfdj/fztools
|
|
pull: never
|
|
commands:
|
|
- export DIST_SUFFIX=${DRONE_TAG}
|
|
- export WORKFLOW_BRANCH_OR_TAG=release-cfw
|
|
- ./fbt COMPACT=1 DEBUG=0 updater_package
|
|
- mkdir artifacts-default
|
|
- mv dist/f7-C/* artifacts-default/
|
|
- ls -laS artifacts-default
|
|
- ls -laS artifacts-default/f7-update-${DRONE_TAG}
|
|
- sed -i 's/(version)/'${DRONE_TAG}'/g' CHANGELOG.md
|
|
- echo '# [Install via Web Updater](https://lab.flipper.net/?url=https://unleashedflip.com/fw/${DRONE_TAG}/flipper-z-f7-update-'${DRONE_TAG}'.tgz&channel=release-cfw&version='${DRONE_TAG}')' >> CHANGELOG.md
|
|
- echo '' >> CHANGELOG.md
|
|
- echo '### [Version without custom animations - Install via Web Updater](https://lab.flipper.net/?url=https://unleashedflip.com/fw_no_anim/flipper-z-f7-update-'${DRONE_TAG}'n.tgz&channel=release-cfw&version='${DRONE_TAG}'n)' >> CHANGELOG.md
|
|
- echo '' >> CHANGELOG.md
|
|
- echo '### [Version with extra apps - Install via Web Updater](https://lab.flipper.net/?url=https://unleashedflip.com/fw_extra_apps/flipper-z-f7-update-'${DRONE_TAG}'e.tgz&channel=release-cfw&version='${DRONE_TAG}'e)' >> CHANGELOG.md
|
|
environment:
|
|
FBT_TOOLS_CUSTOM_LINK:
|
|
from_secret: fbt_link
|
|
|
|
- name: "Build with extra apps"
|
|
image: hfdj/fztools
|
|
pull: never
|
|
commands:
|
|
- git clone https://github.com/xMasterX/unleashed-extra-pack.git
|
|
- cp -R unleashed-extra-pack/apps/* assets/resources/apps/
|
|
- rm -rf unleashed-extra-pack
|
|
- export DIST_SUFFIX=${DRONE_TAG}e
|
|
- export WORKFLOW_BRANCH_OR_TAG=release-cfw
|
|
- export FORCE_NO_DIRTY=yes
|
|
- rm -f build/f7-firmware-C/toolbox/version.*
|
|
- ./fbt COMPACT=1 DEBUG=0 updater_package
|
|
- mkdir artifacts-extra-apps
|
|
- mv dist/f7-C/* artifacts-extra-apps/
|
|
- ls -laS artifacts-extra-apps
|
|
- ls -laS artifacts-extra-apps/f7-update-${DRONE_TAG}e
|
|
environment:
|
|
FBT_TOOLS_CUSTOM_LINK:
|
|
from_secret: fbt_link
|
|
|
|
- name: "Build with ofw anims"
|
|
image: hfdj/fztools
|
|
pull: never
|
|
commands:
|
|
- rm -f assets/dolphin/external/manifest.txt
|
|
- cp .ci_files/anims_ofw.txt assets/dolphin/external/manifest.txt
|
|
- rm -rf assets/resources/apps/
|
|
- export DIST_SUFFIX=${DRONE_TAG}n
|
|
- export WORKFLOW_BRANCH_OR_TAG=no-custom-anims
|
|
- export FORCE_NO_DIRTY=yes
|
|
- rm -f build/f7-firmware-C/toolbox/version.*
|
|
- ./fbt COMPACT=1 DEBUG=0 updater_package
|
|
- mkdir artifacts-ofw-anims
|
|
- mv dist/f7-C/* artifacts-ofw-anims/
|
|
- ls -laS artifacts-ofw-anims
|
|
- ls -laS artifacts-ofw-anims/f7-update-${DRONE_TAG}n
|
|
environment:
|
|
FBT_TOOLS_CUSTOM_LINK:
|
|
from_secret: fbt_link
|
|
|
|
- name: "Bundle self-update packages"
|
|
image: kramos/alpine-zip
|
|
commands:
|
|
- cp artifacts-extra-apps/flipper-z-f7-update-${DRONE_TAG}e.tgz .
|
|
- cp artifacts-ofw-anims/flipper-z-f7-update-${DRONE_TAG}n.tgz .
|
|
- cp artifacts-default/flipper-z-f7-update-${DRONE_TAG}.tgz .
|
|
- zip -r artifacts-extra-apps/flipper-z-f7-update-${DRONE_TAG}e.zip artifacts-extra-apps/f7-update-${DRONE_TAG}e
|
|
- zip -r artifacts-ofw-anims/flipper-z-f7-update-${DRONE_TAG}n.zip artifacts-ofw-anims/f7-update-${DRONE_TAG}n
|
|
- zip -r artifacts-default/flipper-z-f7-update-${DRONE_TAG}.zip artifacts-default/f7-update-${DRONE_TAG}
|
|
- tar czpf artifacts-default/flipper-z-any-scripts-${DRONE_TAG}.tgz scripts debug
|
|
- rm -rf artifacts-extra-apps/f7-update-${DRONE_TAG}
|
|
- rm -rf artifacts-ofw-anims/f7-update-${DRONE_TAG}
|
|
- rm -rf artifacts-default/f7-update-${DRONE_TAG}
|
|
- ls -laS artifacts-extra-apps
|
|
- ls -laS artifacts-ofw-anims
|
|
- ls -laS artifacts-default
|
|
- mv artifacts-default/ ${DRONE_TAG}
|
|
- ls -laS ${DRONE_TAG}
|
|
|
|
- name: "Upload default to updates srv"
|
|
image: appleboy/drone-scp:linux-amd64
|
|
settings:
|
|
host:
|
|
from_secret: dep_host
|
|
username:
|
|
from_secret: dep_user
|
|
password:
|
|
from_secret: dep_passwd
|
|
port:
|
|
from_secret: dep_port
|
|
target:
|
|
from_secret: dep_target_new
|
|
source:
|
|
- ${DRONE_TAG}/*.tgz
|
|
- ${DRONE_TAG}/*.zip
|
|
- ${DRONE_TAG}/*.json
|
|
- ${DRONE_TAG}/*.elf
|
|
- ${DRONE_TAG}/*.dfu
|
|
- ${DRONE_TAG}/*.bin
|
|
|
|
- name: "Upload no-anims to updates srv"
|
|
image: appleboy/drone-scp:linux-amd64
|
|
settings:
|
|
host:
|
|
from_secret: dep_host
|
|
username:
|
|
from_secret: dep_user
|
|
password:
|
|
from_secret: dep_passwd
|
|
port:
|
|
from_secret: dep_port
|
|
target:
|
|
from_secret: dep_target_noanim
|
|
source: flipper-z-f7-update-${DRONE_TAG}n.tgz
|
|
|
|
- name: "Upload extra apps version to updates srv"
|
|
image: appleboy/drone-scp:linux-amd64
|
|
settings:
|
|
host:
|
|
from_secret: dep_host
|
|
username:
|
|
from_secret: dep_user
|
|
password:
|
|
from_secret: dep_passwd
|
|
port:
|
|
from_secret: dep_port
|
|
target:
|
|
from_secret: dep_target_extra
|
|
source: flipper-z-f7-update-${DRONE_TAG}e.tgz
|
|
|
|
- name: "Do Github release"
|
|
image: ddplugins/github-release
|
|
pull: never
|
|
settings:
|
|
github_url: https://github.com
|
|
repo_owner:
|
|
from_secret: github_repoowner
|
|
api_key:
|
|
from_secret: github_apikey
|
|
files:
|
|
- ${DRONE_TAG}/*.tgz
|
|
- ${DRONE_TAG}/*.zip
|
|
- artifacts-ofw-anims/*.tgz
|
|
- artifacts-extra-apps/*.tgz
|
|
title: ${DRONE_TAG}
|
|
note: CHANGELOG.md
|
|
checksum:
|
|
- md5
|
|
- sha1
|
|
- crc32
|
|
|
|
- name: "Trigger update server reindex"
|
|
image: hfdj/fztools
|
|
pull: never
|
|
environment:
|
|
UPD_KEY:
|
|
from_secret: git_update_serv_token
|
|
UPD_URL:
|
|
from_secret: git_update_server_url
|
|
commands:
|
|
- curl -X POST -F 'key='$UPD_KEY'' $UPD_URL
|
|
|
|
- name: "Send files to telegram"
|
|
image: appleboy/drone-telegram
|
|
settings:
|
|
token:
|
|
from_secret: tgtoken
|
|
to:
|
|
from_secret: tgid
|
|
format: markdown
|
|
message: "New Unleashed firmware released!
|
|
|
|
|
|
Version: {{build.tag}}
|
|
|
|
|
|
[-Github-](https://github.com/DarkFlippers/unleashed-firmware/releases/tag/${DRONE_TAG})
|
|
|
|
|
|
[-How to install firmware-](https://github.com/DarkFlippers/unleashed-firmware/blob/dev/documentation/HowToInstall.md)
|
|
|
|
|
|
[-Download latest extra apps pack-](https://download-directory.github.io/?url=https://github.com/xMasterX/unleashed-extra-pack/tree/main/apps)
|
|
|
|
|
|
[-Version without custom animations - Install via Web Updater-](https://lab.flipper.net/?url=https://unleashedflip.com/fw_no_anim/flipper-z-f7-update-${DRONE_TAG}n.tgz&channel=release-cfw&version=${DRONE_TAG}n)
|
|
|
|
|
|
[-Version with extra apps - Install via Web Updater-](https://lab.flipper.net/?url=https://unleashedflip.com/fw_extra_apps/flipper-z-f7-update-${DRONE_TAG}e.tgz&channel=release-cfw&version=${DRONE_TAG}e)
|
|
|
|
|
|
[-Install via Web Updater-](https://lab.flipper.net/?url=https://unleashedflip.com/fw/${DRONE_TAG}/flipper-z-f7-update-${DRONE_TAG}.tgz&channel=release-cfw&version=${DRONE_TAG})"
|
|
document:
|
|
- ${DRONE_TAG}/flipper-z-f7-update-${DRONE_TAG}.tgz
|
|
|
|
- name: "Send discord notification"
|
|
image: appleboy/drone-discord
|
|
settings:
|
|
webhook_id:
|
|
from_secret: ds_wh_id
|
|
webhook_token:
|
|
from_secret: ds_wh_token
|
|
message: "New Unleashed firmware released!
|
|
|
|
|
|
Version: {{build.tag}}
|
|
|
|
|
|
[[Github]](https://github.com/DarkFlippers/unleashed-firmware/releases/tag/${DRONE_TAG})
|
|
|
|
|
|
[-How to install firmware-](https://github.com/DarkFlippers/unleashed-firmware/blob/dev/documentation/HowToInstall.md)
|
|
|
|
|
|
[-Download latest extra apps pack-](https://download-directory.github.io/?url=https://github.com/xMasterX/unleashed-extra-pack/tree/main/apps)
|
|
|
|
|
|
[-Version without custom animations - Install via Web Updater-](https://lab.flipper.net/?url=https://unleashedflip.com/fw_no_anim/flipper-z-f7-update-${DRONE_TAG}n.tgz&channel=release-cfw&version=${DRONE_TAG}n)
|
|
|
|
|
|
[-Version with extra apps - Install via Web Updater-](https://lab.flipper.net/?url=https://unleashedflip.com/fw_extra_apps/flipper-z-f7-update-${DRONE_TAG}e.tgz&channel=release-cfw&version=${DRONE_TAG}e)
|
|
|
|
|
|
[-Install via Web Updater-](https://lab.flipper.net/?url=https://unleashedflip.com/fw/${DRONE_TAG}/flipper-z-f7-update-${DRONE_TAG}.tgz&channel=release-cfw&version=${DRONE_TAG})"
|
|
|
|
trigger:
|
|
event:
|
|
- tag
|
|
|
|
node:
|
|
typ: haupt
|
|
|
|
---
|
|
kind: pipeline
|
|
type: docker
|
|
name: "Dev build"
|
|
|
|
platform:
|
|
os: linux
|
|
arch: amd64
|
|
|
|
steps:
|
|
- name: "Update submodules"
|
|
image: alpine/git
|
|
commands:
|
|
- git submodule sync
|
|
- git -c protocol.version=2 submodule update --init --force --recursive
|
|
- git submodule foreach git config --local gc.auto 0
|
|
- git log -1 --format='%H'
|
|
|
|
- name: "Build dev FW"
|
|
image: hfdj/fztools
|
|
pull: never
|
|
commands:
|
|
- export DIST_SUFFIX=${DRONE_BUILD_NUMBER}
|
|
- export WORKFLOW_BRANCH_OR_TAG=dev-cfw
|
|
- ./fbt COMPACT=1 DEBUG=0 updater_package
|
|
- mkdir artifacts-default
|
|
- mv dist/f7-C/* artifacts-default/
|
|
- ls -laS artifacts-default
|
|
- ls -laS artifacts-default/f7-update-${DRONE_BUILD_NUMBER}
|
|
environment:
|
|
FBT_TOOLS_CUSTOM_LINK:
|
|
from_secret: fbt_link
|
|
|
|
- name: "Build dev with extra apps"
|
|
image: hfdj/fztools
|
|
pull: never
|
|
commands:
|
|
- git clone https://github.com/xMasterX/unleashed-extra-pack.git
|
|
- cp -R unleashed-extra-pack/apps/* assets/resources/apps/
|
|
- rm -rf unleashed-extra-pack
|
|
- export DIST_SUFFIX=${DRONE_BUILD_NUMBER}e
|
|
- export WORKFLOW_BRANCH_OR_TAG=dev-cfw
|
|
- export FORCE_NO_DIRTY=yes
|
|
- rm -f build/f7-firmware-C/toolbox/version.*
|
|
- ./fbt COMPACT=1 DEBUG=0 updater_package
|
|
- mkdir artifacts-extra-apps
|
|
- mv dist/f7-C/* artifacts-extra-apps/
|
|
- ls -laS artifacts-extra-apps
|
|
- ls -laS artifacts-extra-apps/f7-update-${DRONE_BUILD_NUMBER}e
|
|
environment:
|
|
FBT_TOOLS_CUSTOM_LINK:
|
|
from_secret: fbt_link
|
|
|
|
- name: "Bundle self-update packages"
|
|
image: kramos/alpine-zip
|
|
commands:
|
|
- cp artifacts-extra-apps/flipper-z-f7-update-${DRONE_BUILD_NUMBER}e.tgz .
|
|
- cp artifacts-default/flipper-z-f7-update-${DRONE_BUILD_NUMBER}.tgz .
|
|
- rm -rf artifacts-default/f7-update-${DRONE_BUILD_NUMBER}
|
|
- ls -laS artifacts-default
|
|
- mv artifacts-default/ dev
|
|
- ls -laS dev
|
|
|
|
- name: "Clean dev folder"
|
|
image: appleboy/drone-ssh:linux-amd64
|
|
settings:
|
|
host:
|
|
from_secret: dep_host
|
|
username:
|
|
from_secret: dep_user
|
|
password:
|
|
from_secret: dep_passwd
|
|
port:
|
|
from_secret: dep_port
|
|
command_timeout: 30s
|
|
script:
|
|
- cd web/unleashedflip.com/public_html/fw/dev && rm -f ./*
|
|
|
|
- name: "Upload default to updates srv"
|
|
image: appleboy/drone-scp:linux-amd64
|
|
settings:
|
|
host:
|
|
from_secret: dep_host
|
|
username:
|
|
from_secret: dep_user
|
|
password:
|
|
from_secret: dep_passwd
|
|
port:
|
|
from_secret: dep_port
|
|
target:
|
|
from_secret: dep_target_new
|
|
source:
|
|
- dev/*.tgz
|
|
- dev/*.zip
|
|
- dev/*.json
|
|
- dev/*.elf
|
|
- dev/*.dfu
|
|
- dev/*.bin
|
|
|
|
- name: "Upload extra apps version to updates srv"
|
|
image: appleboy/drone-scp:linux-amd64
|
|
settings:
|
|
host:
|
|
from_secret: dep_host
|
|
username:
|
|
from_secret: dep_user
|
|
password:
|
|
from_secret: dep_passwd
|
|
port:
|
|
from_secret: dep_port
|
|
target:
|
|
from_secret: dep_target_extra
|
|
source: flipper-z-f7-update-${DRONE_BUILD_NUMBER}e.tgz
|
|
|
|
- name: "Trigger update server reindex"
|
|
image: hfdj/fztools
|
|
pull: never
|
|
environment:
|
|
UPD_KEY:
|
|
from_secret: git_update_serv_token
|
|
UPD_URL:
|
|
from_secret: git_update_server_url
|
|
commands:
|
|
- curl -X POST -F 'key='$UPD_KEY'' $UPD_URL
|
|
|
|
- name: "Send files to telegram"
|
|
image: appleboy/drone-telegram
|
|
settings:
|
|
token:
|
|
from_secret: tgtoken
|
|
to:
|
|
from_secret: tgid_dev
|
|
format: markdown
|
|
message: "Unleashed firmware dev build successful!
|
|
|
|
|
|
Build: {{build.number}}
|
|
|
|
SHA: {{commit.sha}}
|
|
|
|
|
|
Commit: {{commit.message}}
|
|
|
|
|
|
[-Version with extra apps - Install via Web Updater-](https://lab.flipper.net/?url=https://unleashedflip.com/fw_extra_apps/flipper-z-f7-update-${DRONE_BUILD_NUMBER}e.tgz&channel=dev-cfw&version=${DRONE_BUILD_NUMBER}e)
|
|
|
|
|
|
[-Install via Web Updater-](https://lab.flipper.net/?url=https://unleashedflip.com/fw/dev/flipper-z-f7-update-${DRONE_BUILD_NUMBER}.tgz&channel=dev-cfw&version=${DRONE_BUILD_NUMBER})"
|
|
document:
|
|
- dev/flipper-z-f7-update-${DRONE_BUILD_NUMBER}.tgz
|
|
|
|
- name: "Send discord notification"
|
|
image: hfdj/fztools
|
|
pull: never
|
|
environment:
|
|
DISCORD_WEBHOOK:
|
|
from_secret: dis_dev_webhook
|
|
commands:
|
|
- wget "https://raw.githubusercontent.com/fieu/discord.sh/e1dc1a7595efad2cad8f072f0b3531c470f5b7c8/discord.sh"
|
|
- chmod +x ./discord.sh
|
|
- ./discord.sh --text 'Unleashed firmware dev build successful!\n\nBuild - '${DRONE_BUILD_NUMBER}'\n\nSHA - '${DRONE_COMMIT_SHA}'\n\nCommit - '${DRONE_COMMIT_MESSAGE}'\n\n\n[-Version with extra apps - Install via Web Updater-](https://lab.flipper.net/?url=https://unleashedflip.com/fw_extra_apps/flipper-z-f7-update-'${DRONE_BUILD_NUMBER}'e.tgz&channel=dev-cfw&version='${DRONE_BUILD_NUMBER}'e)\n\n[-Install via Web Updater-](https://lab.flipper.net/?url=https://unleashedflip.com/fw/dev/flipper-z-f7-update-'${DRONE_BUILD_NUMBER}'.tgz&channel=dev-cfw&version='${DRONE_BUILD_NUMBER}')'
|
|
|
|
trigger:
|
|
branch:
|
|
- dev
|
|
event:
|
|
- push
|
|
|
|
node:
|
|
typ: haupt
|