2022-05-27 22:31:48 +03:00
kind : pipeline
type : docker
2022-11-23 17:56:51 +03:00
name : "Release firmware"
2022-05-27 22:31:48 +03:00
2023-01-01 23:47:47 +03:00
platform :
os : linux
arch : amd64
2022-05-27 22:31:48 +03:00
steps :
2022-07-29 21:18:06 +03:00
- 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'
2022-11-23 17:56:51 +03:00
- name : "Build firmware"
2022-07-29 21:18:06 +03:00
image : hfdj/fztools
pull : never
commands :
- export DIST_SUFFIX=${DRONE_TAG}
2022-11-23 17:56:51 +03:00
- export WORKFLOW_BRANCH_OR_TAG=release-cfw
2022-08-03 00:32:55 +03:00
- ./fbt COMPACT=1 DEBUG=0 updater_package
2022-07-29 21:18:06 +03:00
- mkdir artifacts-default
- mv dist/f7-C/* artifacts-default/
- ls -laS artifacts-default
- ls -laS artifacts-default/f7-update-${DRONE_TAG}
2022-08-01 23:20:04 +03:00
- sed -i 's/(version)/'${DRONE_TAG}'/g' CHANGELOG.md
2022-11-23 17:56:51 +03:00
- 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
2022-12-29 01:50:31 +03:00
- 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
2022-07-29 21:18:06 +03:00
environment :
FBT_TOOLS_CUSTOM_LINK :
from_secret : fbt_link
2022-12-29 01:50:31 +03:00
- name : "Build with extra apps"
image : hfdj/fztools
pull : never
commands :
- git clone https://github.com/xMasterX/unleashed-extra-pack.git
2022-12-31 03:20:59 +03:00
- cp -R unleashed-extra-pack/apps/* assets/resources/apps/
2022-12-29 01:50:31 +03:00
- 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"
2022-11-12 22:24:22 +03:00
image : hfdj/fztools
pull : never
commands :
- rm -f assets/dolphin/external/manifest.txt
- cp .ci_files/anims_ofw.txt assets/dolphin/external/manifest.txt
2022-12-29 01:50:31 +03:00
- rm -rf assets/resources/apps/
2022-11-23 17:56:51 +03:00
- export DIST_SUFFIX=${DRONE_TAG}n
- export WORKFLOW_BRANCH_OR_TAG=no-custom-anims
2022-12-29 01:50:31 +03:00
- export FORCE_NO_DIRTY=yes
- rm -f build/f7-firmware-C/toolbox/version.*
2022-11-12 22:24:22 +03:00
- ./fbt COMPACT=1 DEBUG=0 updater_package
- mkdir artifacts-ofw-anims
- mv dist/f7-C/* artifacts-ofw-anims/
- ls -laS artifacts-ofw-anims
2022-11-23 17:56:51 +03:00
- ls -laS artifacts-ofw-anims/f7-update-${DRONE_TAG}n
2022-11-12 22:24:22 +03:00
environment :
FBT_TOOLS_CUSTOM_LINK :
from_secret : fbt_link
2022-07-29 21:18:06 +03:00
- name : "Bundle self-update packages"
image : kramos/alpine-zip
commands :
2022-12-29 01:50:31 +03:00
- cp artifacts-extra-apps/flipper-z-f7-update-${DRONE_TAG}e.tgz .
2022-11-23 17:56:51 +03:00
- cp artifacts-ofw-anims/flipper-z-f7-update-${DRONE_TAG}n.tgz .
2022-08-01 23:56:25 +03:00
- cp artifacts-default/flipper-z-f7-update-${DRONE_TAG}.tgz .
2022-12-29 01:50:31 +03:00
- zip -r artifacts-extra-apps/flipper-z-f7-update-${DRONE_TAG}e.zip artifacts-extra-apps/f7-update-${DRONE_TAG}e
2022-11-23 17:56:51 +03:00
- zip -r artifacts-ofw-anims/flipper-z-f7-update-${DRONE_TAG}n.zip artifacts-ofw-anims/f7-update-${DRONE_TAG}n
2022-07-29 21:18:06 +03:00
- zip -r artifacts-default/flipper-z-f7-update-${DRONE_TAG}.zip artifacts-default/f7-update-${DRONE_TAG}
2022-11-23 17:56:51 +03:00
- tar czpf artifacts-default/flipper-z-any-scripts-${DRONE_TAG}.tgz scripts debug
2022-12-29 01:50:31 +03:00
- rm -rf artifacts-extra-apps/f7-update-${DRONE_TAG}
2022-11-12 22:24:22 +03:00
- rm -rf artifacts-ofw-anims/f7-update-${DRONE_TAG}
2022-07-29 21:18:06 +03:00
- rm -rf artifacts-default/f7-update-${DRONE_TAG}
2022-12-29 01:50:31 +03:00
- ls -laS artifacts-extra-apps
2022-11-12 22:24:22 +03:00
- ls -laS artifacts-ofw-anims
2022-07-29 21:18:06 +03:00
- ls -laS artifacts-default
2022-11-23 17:56:51 +03:00
- mv artifacts-default/ ${DRONE_TAG}
- ls -laS ${DRONE_TAG}
2022-07-29 21:18:06 +03:00
2022-11-12 22:24:22 +03:00
- name : "Upload default to updates srv"
2023-01-01 23:59:09 +03:00
image : appleboy/drone-scp:linux-amd64
2022-08-01 23:20:04 +03:00
settings :
host :
from_secret : dep_host
username :
from_secret : dep_user
password :
from_secret : dep_passwd
port :
from_secret : dep_port
target :
2022-11-23 17:56:51 +03:00
from_secret : dep_target_new
source :
- ${DRONE_TAG}/*.tgz
- ${DRONE_TAG}/*.zip
- ${DRONE_TAG}/*.json
- ${DRONE_TAG}/*.elf
- ${DRONE_TAG}/*.dfu
- ${DRONE_TAG}/*.bin
2022-08-01 23:20:04 +03:00
2022-11-12 22:24:22 +03:00
- name : "Upload no-anims to updates srv"
2023-01-01 23:59:09 +03:00
image : appleboy/drone-scp:linux-amd64
2022-11-12 22:24:22 +03:00
settings :
host :
from_secret : dep_host
username :
from_secret : dep_user
password :
from_secret : dep_passwd
port :
from_secret : dep_port
target :
2022-11-23 17:56:51 +03:00
from_secret : dep_target_noanim
source : flipper-z-f7-update-${DRONE_TAG}n.tgz
2022-12-29 01:50:31 +03:00
- name : "Upload extra apps version to updates srv"
2023-01-01 23:59:09 +03:00
image : appleboy/drone-scp:linux-amd64
2022-12-29 01:50:31 +03:00
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
2022-07-29 21:18:06 +03:00
- 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 :
2022-11-23 17:56:51 +03:00
- ${DRONE_TAG}/*.tgz
- ${DRONE_TAG}/*.zip
2022-11-12 22:24:22 +03:00
- artifacts-ofw-anims/*.tgz
2022-12-29 01:50:31 +03:00
- artifacts-extra-apps/*.tgz
2022-07-29 21:18:06 +03:00
title : ${DRONE_TAG}
note : CHANGELOG.md
checksum :
- md5
- sha1
- crc32
2022-11-24 04:02:22 +03:00
- 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
2022-07-29 21:18:06 +03:00
- 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}}
2023-02-11 02:07:42 +03:00
[ -Github - Changelog-](https://github.com/DarkFlippers/unleashed-firmware/releases/tag/${DRONE_TAG})
2022-08-03 00:32:55 +03:00
2022-10-29 02:53:11 +03:00
2022-10-22 23:20:17 +03:00
[ -How to install firmware-](https://github.com/DarkFlippers/unleashed-firmware/blob/dev/documentation/HowToInstall.md)
2022-08-03 00:32:55 +03:00
2022-10-29 02:53:11 +03:00
2023-03-01 02:57:06 +03:00
[ -Download latest extra apps pack-](https://github.com/xMasterX/unleashed-extra-pack/archive/refs/heads/main.zip)
2022-11-24 03:45:16 +03:00
2023-02-11 02:07:42 +03:00
[ -Install FW 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})
2022-11-13 01:14:06 +03:00
2022-10-29 02:53:11 +03:00
2023-02-11 02:07:42 +03:00
[ -Version without custom animations - Install FW 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)
2022-12-29 01:50:31 +03:00
2023-02-11 02:07:42 +03:00
[ -Version with extra apps - Install FW 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)"
2022-07-29 21:18:06 +03:00
document :
2023-02-13 02:54:12 +03:00
- ${DRONE_TAG}/flipper-z-f7-update-${DRONE_TAG}.tgz
2022-07-29 21:18:06 +03:00
- name : "Send discord notification"
2023-02-11 02:07:42 +03:00
image : hfdj/fztools
pull : never
environment :
DISCORD_WEBHOOK :
from_secret : dis_release_webhook
commands :
- wget "https://raw.githubusercontent.com/fieu/discord.sh/e1dc1a7595efad2cad8f072f0b3531c470f5b7c8/discord.sh"
- chmod +x ./discord.sh
2023-03-01 02:57:06 +03:00
- ./discord.sh --text 'New Unleashed firmware released!\n\nVersion - '${DRONE_TAG}'\n\n[[Github - Changelog]](https://github.com/DarkFlippers/unleashed-firmware/releases/tag/'${DRONE_TAG}')\n\n[-How to install firmware-](https://github.com/DarkFlippers/unleashed-firmware/blob/dev/documentation/HowToInstall.md)\n\n[-Download latest extra apps pack-](https://github.com/xMasterX/unleashed-extra-pack/archive/refs/heads/main.zip)\n\n[-Install FW 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}')\n\n[-Version without custom animations - Install FW 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)\n\n[-Version with extra apps - Install FW 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)'
2022-07-29 21:18:06 +03:00
2023-02-13 02:54:12 +03:00
- name : "Send extra pack build to telegram"
image : appleboy/drone-telegram
settings :
token :
from_secret : tgtoken
to :
from_secret : tgid
2023-02-13 03:31:16 +03:00
format : markdown
message : "Build with extra apps pack:"
2023-02-13 02:54:12 +03:00
document :
- flipper-z-f7-update-${DRONE_TAG}e.tgz
2022-05-27 22:31:48 +03:00
trigger :
event :
2022-07-29 21:18:06 +03:00
- tag
2022-05-27 22:31:48 +03:00
node :
2022-07-29 21:18:06 +03:00
typ : haupt
2022-11-23 17:56:51 +03:00
---
kind : pipeline
type : docker
name : "Dev build"
2023-01-01 23:47:47 +03:00
platform :
os : linux
arch : amd64
2022-11-23 17:56:51 +03:00
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 :
2022-11-23 18:03:48 +03:00
- export DIST_SUFFIX=${DRONE_BUILD_NUMBER}
2022-11-23 17:56:51 +03:00
- 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
2022-11-23 18:03:48 +03:00
- ls -laS artifacts-default/f7-update-${DRONE_BUILD_NUMBER}
2022-11-23 17:56:51 +03:00
environment :
FBT_TOOLS_CUSTOM_LINK :
from_secret : fbt_link
2022-12-31 15:14:32 +03:00
- 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
2022-11-23 17:56:51 +03:00
- name : "Bundle self-update packages"
image : kramos/alpine-zip
commands :
2022-12-31 15:27:47 +03:00
- cp artifacts-extra-apps/flipper-z-f7-update-${DRONE_BUILD_NUMBER}e.tgz .
2022-11-23 18:03:48 +03:00
- cp artifacts-default/flipper-z-f7-update-${DRONE_BUILD_NUMBER}.tgz .
- rm -rf artifacts-default/f7-update-${DRONE_BUILD_NUMBER}
2022-11-23 17:56:51 +03:00
- ls -laS artifacts-default
- mv artifacts-default/ dev
- ls -laS dev
- name : "Clean dev folder"
2023-01-01 23:47:47 +03:00
image : appleboy/drone-ssh:linux-amd64
2022-11-23 17:56:51 +03:00
settings :
host :
from_secret : dep_host
username :
from_secret : dep_user
password :
from_secret : dep_passwd
port :
from_secret : dep_port
2022-11-23 19:04:58 +03:00
command_timeout : 30s
2022-11-23 17:56:51 +03:00
script :
2022-12-27 00:20:00 +03:00
- cd web/unleashedflip.com/public_html/fw/dev && rm -f ./*
2022-11-23 17:56:51 +03:00
- name : "Upload default to updates srv"
2023-01-01 23:59:09 +03:00
image : appleboy/drone-scp:linux-amd64
2022-11-23 17:56:51 +03:00
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
2022-12-31 15:14:32 +03:00
- name : "Upload extra apps version to updates srv"
2023-01-01 23:59:09 +03:00
image : appleboy/drone-scp:linux-amd64
2022-12-31 15:14:32 +03:00
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
2022-11-23 17:56:51 +03:00
- 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}}
2022-12-31 15:14:32 +03:00
[ -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)
2022-11-23 18:03:48 +03:00
[ -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})"
2023-02-13 02:54:12 +03:00
document :
- dev/flipper-z-f7-update-${DRONE_BUILD_NUMBER}.tgz
- name : "Send extra pack build to telegram"
image : appleboy/drone-telegram
settings :
token :
from_secret : tgtoken
to :
from_secret : tgid_dev
2023-02-13 03:31:16 +03:00
format : markdown
message : "Build with extra apps pack:"
2022-11-23 17:56:51 +03:00
document :
2023-02-13 02:31:04 +03:00
- flipper-z-f7-update-${DRONE_BUILD_NUMBER}e.tgz
2022-11-23 17:56:51 +03:00
2023-02-11 01:12:05 +03:00
- 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
2023-02-11 03:17:39 +03:00
- ./discord.sh --text 'Unleashed firmware dev build successful!\n\nBuild - '${DRONE_BUILD_NUMBER}'\n\nSHA - '${DRONE_COMMIT_SHA}'\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}')'
2023-02-11 01:12:05 +03:00
2022-11-23 17:56:51 +03:00
trigger :
branch :
- dev
event :
- push
node :
typ : haupt