Commit Graph

167 Commits

Author SHA1 Message Date
hedger
35c903494c
[FL-3627, FL-3628, FL-3631] fbt: glob & git improvements (#3151)
* fbt: optional shallow submodule checkout
* fbt: more git threads by default
* fbt: git condition fix
* fbt: renamed FBT_SHALLOW to FBT_GIT_SUBMODULE_SHALLOW
* github: enabled   FBT_GIT_SUBMODULE_SHALLOW in flows
* fbt: always compile icons' .c, even if user does not specify a proper source glob; changed glob to require files at user-specified paths to exist
* fbt: fail build for missing imports in .faps
* fbt: moved STRICT_FAP_IMPORT_CHECK to commandline options; enabled by default
* ufbt: enabled STRICT_FAP_IMPORT_CHECK

Co-authored-by: あく <alleteam@gmail.com>
2023-10-23 18:55:36 +09:00
hedger
f0f2a6c11f
github: typo fix (#3070)
* github: typo fix
* github: sdk action: added validation for action inputs
* github: sdk action: 10+ rcs
2023-09-12 18:24:44 +09:00
hedger
8bfa9898e3
github: final fixes for SDK publishing (#3069)
* Fixes 4 fixes 4 fixes
* gh: proper step naming
* github: Restored SDK processing logic
2023-09-12 10:20:45 +09:00
hedger
c657eb8a40
github: potential fix for compact builds (#3067)
* github: potential fix for compact builds
* github: explicit build mode
2023-09-12 01:18:04 +09:00
hedger
77d6c41914
github: submit SDKs to prod & dev (#3060)
* github: submit SDKs to prod & dev
* github: increased limit of queried SDKs

Co-authored-by: あく <alleteam@gmail.com>
2023-09-11 19:51:03 +09:00
Sergey Gavrilov
4705812d24
SD-Card: proper HAL (#3058)
* Storage: remove unused error from SDInfo
* FatFS: remove sd_spi_io
* HAL: sd card api
* Update: use sd hal
* FatFS: use sd hal
* Storage: use sd hal
* API: sd hal
* Fix TODO workflow
* SD Hal: Fix source buffer overflow
* fix for fix!
* HAL: cleanup sd detection api
* HAL: FURI_HAL_SD_SPI_DEBUG flag
* HAL: FuriHalSdStatus -> FuriStatus
* API: downgrade
* Change define logic
* HAL: presence
2023-09-11 18:30:56 +09:00
hedger
dfd5233760
github: don't cancel jobs if parallel ones failed (#3044) 2023-09-05 18:17:16 +04:00
hedger
452e27b05e
github: workflow improvements (#3032)
* github: compact build: status reporting step
* github: build: matrix strategy
* debugging
* github: added version_token to /uploadfiles request
* github: reworked main build flow
* github: suppressed non-zero cp status
* github: build: fixed comment lookup; experimental changes to apps build order
* github: removed summary step for compact builds; united map analyzer steps
* fbt: added get_apiversion target; moved ext apps processing logic to AppBuildset
* ufbt: added missing global
* fbt: Moved incompatible app list to firmware config output
* fbt: cleaner extapps processing
* github: build: added automation for SDK publishing
2023-09-05 20:49:39 +09:00
hedger
5eeb672dd4
github: workflow trigger optimizations (#3030) 2023-09-01 12:09:48 +09:00
hedger
c3aa151712
github: Check for todos (#3011) 2023-08-25 23:38:41 +09:00
Konstantin Volkov
4ade0fc76d
[FL-3421] Unit bench: multiple attempts to find flipper (#2960)
* Unit bench: added retry count for finding flipper for reboot/reboot2dfu and power off scripts. Changed returns to sys.exit() since scripts are being used standalone
* fixed typo in await flipper and changed debug level to info for searching flipper in power.py
* reversed return operator instead of sys.exit, changed app.py exit behavior
* test run to see if exit(1) fails the run
* reversed test changes, fixed flipper name and increased await flipper timeout
* await after flash increase
* increased serial timeout
* increased serial timeout, apparently it is for entire run

Co-authored-by: doomwastaken <k.volkov@flipperdevices.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-08-23 21:51:02 +09:00
hedger
ace0901125
[FL-3486,FL-3392] fbt: various improvements and bug fixes (#2982)
* fbt: extapps: compact debug format for .faps
* fbt: sdk: fixed symbol cache regen logic for removed-only symbols
* lib: elf_file: early .fap file handle release
* fbt: extapps: added FAP_VERSION define for application environments
* github: added appsymbols artifact
* api: updates for f18
* github: fixed early fap_dist
* fbt: added flash_dap
* ufbt: added flash_dap
* fbt: reworked flash target; scripts: program.py->fwflash.py and changes
* vscode: updated configuration
* scripts: fwflash.py: ugly fixes for ufbt
* scripts: fwflash.py: cleanup
* fbt: flash: always use .elf file
* scripts: fwflash: fixed elf file path

Co-authored-by: あく <alleteam@gmail.com>
2023-08-23 03:33:10 +09:00
Nikolay Minaylov
fb63e53d9a
[FL-3435] External apps removed (#2934)
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-08-10 06:18:40 +09:00
Konstantin Volkov
5d40193308
increased timeouts (#2816)
Co-authored-by: doomwastaken <k.volkov@flipperdevices.com>
2023-06-30 04:41:35 +09:00
Konstantin Volkov
e680cf59b6
Actions: unit_test and updater timeouts (#2807)
* added some extra timeouts, fixed duration of units run command and minor logging changes. No list_ports yet needed
* increased timeouts
* make pvs happy

---------

Co-authored-by: doomwastaken <k.volkov@flipperdevices.com>
Co-authored-by: SG <who.just.the.doctor@gmail.com>
2023-06-28 06:47:13 +10:00
hedger
1c306a04fc
[FL-3359] github: added debugapps artifact; packaging resources per-target (#2750)
* github: added debugapps artifact; packaging resources per-target
* github: target name fixes
* github: fixed path for debug apps
* scripts: dist: removed lib stub artifact
* scripts: fixed broken SDK
* github: removed unused step
2023-06-08 21:43:05 +09:00
hedger
3226254876
[FL-3351] github: re-enabled f18 build (#2743)
* github: re-enabled f18 build
* scripts: storage: better transfer logging
* Fix PVS warnings

Co-authored-by: あく <alleteam@gmail.com>
2023-06-08 15:16:01 +09:00
Max Andreev
72ad22bb91
[DEVOPS-18]: Add map file parser, mariadb inserter (#2732) 2023-06-05 19:25:43 +09:00
Max Andreev
d062ce73d7
Add new indexer (#2681) 2023-05-19 18:32:30 +09:00
あく
f57f0efc48
Debug: revert cortex debug to lxml and drop DWT (#2651)
* Debug: revert cortex debug to lxml

* Debug: update PyCortexMDebug readme

* fbt: moved "debug" dir to "scripts" subfolder

* ufbt: added missing debug_other & debug_other_blackmagic targets; github: fixed script bundling

* lint: fixed formatting on debug scripts

* vscode: updated configuration for debug dir changes

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: hedger <hedger@nanode.su>
2023-05-09 03:31:44 +04:00
hedger
c3ececcf96
[FL-3174] Dolphin builder in ufbt; minor ufbt/fbt improvements (#2601)
* ufbt: added "dolphin_ext" target (expects "external" subfolder in cwd with dolphin assets); cleaned up unused code
* ufbt: codestyle fixes
* scripts: fixed style according to ruff linter
* scripts: additional cleanup & codestyle fixes
* github: pass target hw code when installing local SDK with ufbt
* ufbt: added error message for missing folder in dolphin builder
* scripts: more linter fixes
* sdk: added flipper_format_stream; ufbt: support for --extra-define
* fbt: reduced amount of global defines
* scripts, fbt: rearranged imports

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-05-03 14:48:49 +09:00
Max Andreev
e42aec68c5
Disable ci/cd on release* branches (#2624) 2023-04-28 23:25:20 +09:00
hedger
3932503660
[FL-3243] github: testing SDK with ufbt action (#2581)
* github: testing SDK with ufbt action
* github: also build apps with ufbt
* github: fixed dir lookup for ufbt
* ufbt: checks for compatibility on app discovery
* github: Conditional app skip for ufbt
* github: fixed app build flow with ufbt
* extra debug
* github: lint: message capture
* github: testing different output capture method for linters
* shorter version of status check
* github: updated comment actions to suppress warnings
* Reverted formatting changes

Co-authored-by: あく <alleteam@gmail.com>
2023-04-19 20:08:13 +09:00
あく
0d8518d31d
[FL-3232] FuriHal: fix gpio naming and add explicit pulls for vibro, speaker and ir_tx (#2565)
* FuriHal: fix gpio naming and add explicit pulls for vibro, speaker and ir_tx
* Github: workflow event debug print
* Github: proper PR head commit SHA extraction in get_env.py
2023-04-06 19:06:19 +10:00
あく
973287b09b
Github: wipe workspace before checkout (#2527)
* Github: wipe workspace before checkout

* Github: allow find to fail

* Github: limit maxdepth for find
2023-03-22 15:26:40 +04:00
あく
acc32f66e8
Github: force cleanup tree on decontaminate (#2526) 2023-03-22 14:48:41 +04:00
あく
fd8607398d
Github: unshallow on decontamination (#2521)
* Github: unshallow on decontamination
* Github: fix syntax
* Github: decontaminate without full tree
* Github: update decontaminate action in all workflows
2023-03-21 13:55:20 +04:00
hedger
d8385b7f91
gh: use shallow clones whenever possible (#2491)
* gh: use shallow clones whenever possible
* gh: reverted submodule checks
* gh: lint: joined linting scripts
* gh: renamed linter workflow
* check python linter output
* gh: reworked linter
* checking c linter
* gh: merged submodule check & lint
* gh: renamed step
* gh: removed redundant `submodules: false`

Co-authored-by: あく <alleteam@gmail.com>
2023-03-16 00:24:56 +09:00
hedger
4ab832cc46
github: check API versions for all targets to match on gh build (#2459)
* github: check API versions for all targets to match on gh build
* typo fix
* gh: forcing target mismatch to test pipeline
* reverted API version change
2023-03-05 14:17:33 +09:00
Konstantin Volkov
82ad44a863
changed updater and unit benches (#2427)
* changed updater and unit benches
* switched flipper name from macos style to searching

Co-authored-by: Konstantin Volkov <k.volkov@flipperdevices.com>
2023-02-25 21:05:02 +09:00
Max Andreev
67c2d1cf61
Migrating CI/CD to Linode S3 (#2380)
* Test PVS linode S3
* Migrating to Linode S3
* Disable PVS action debug
* Fix pvs_studio.yml
2023-02-09 19:42:41 +09:00
hedger
a005087636
fbt: building fap_dist for compact gh build; accessor: fixed for latest ibutton changes (#2377)
* fbt: building fap_dist as default target; accessor: fixed for latest ibutton changes
* fbt: not building fap_dist as default target; github: doing fap_dist for compact builds

Co-authored-by: あく <alleteam@gmail.com>
2023-02-09 03:16:05 +09:00
あく
20f98050f2
Github: disable f18 build (#2375) 2023-02-08 13:38:09 +03:00
hedger
224d0aefe4
[FL-2733] multitarget support for fbt (#2209)
* First part of multitarget porting
* Delete firmware/targets/f7/Inc directory
* Delete firmware/targets/f7/Src directory
* gpio: cli fixes; about: using version from HAL
* sdk: path fixes
* gui: include fixes
* applications: more include fixes
* gpio: ported to new apis
* hal: introduced furi_hal_target_hw.h; libs: added one_wire
* hal: f18 target
* github: also build f18 by default
* typo fix
* fbt: removed extra checks on app list
* api: explicitly bundling select mlib headers with sdk
* hal: f18: changed INPUT_DEBOUNCE_TICKS to match f7
* cleaned up commented out code
* docs: added info on hw targets
* docs: targets: formatting fixes
* f18: fixed link error
* f18: fixed API version to match f7
* docs: hardware: minor wording fixes
* faploader: added fw target check
* docs: typo fixes
* github: not building komi target by default
* fbt: support for `targets` field for built-in apps
* github: reworked build flow to exclude app_set; fbt: removed komi-specific appset; added additional target buildset check
* github: fixed build; nfc: fixed pvs warnings
* attempt to fix target id
* f7, f18: removed certain HAL function from public API
* apps: debug: enabled bt_debug_app for f18
* Targets: backport input pins configuration routine from F7 to F18

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-02-08 01:33:05 +09:00
Konstantin Volkov
7f3ebcd110
Changed bench target, stlink serial and added error for testing the run (#2275)
* changed bench target, stlink serial and added error for testing the run
* changed flipper name for macos and changed serial aquisition for device manager
* tested broken pipeline, reverting test data
* added timeout-minutes, testing if its int or float

Co-authored-by: Konstantin Volkov <k.volkov@flipperdevices.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-01-30 15:59:45 +07:00
hedger
341610b8a1
[FL-3080] fbt: PVS support (#2286)
* fbt: added firmware_pvscheck & firmware_pvs targets for *nix
* fbt: pvs support on Windows
* fbt: additional fixes & docs for PVS support
* fbt: fixes for updater env configuration
* github: reworked pvs workflow
* vscode: added PVS shortcut
* pvs: added --ignore-ccache flag
* fbt: pvs: opening web browser if there are warnings
* fbt: pvs: added browser handler for mac
* github: fixed report path for PVS
* fbt: pvs: fixed report upload path
* removed intentional PVS warning
* fixed more PVS warnings
* fixed secplus_v1 PVS warning
* fbt: added PVSNOBROWSER flag
* github: setting PVSNOBROWSER for pvs runs
* fbt: less debug output

Co-authored-by: あく <alleteam@gmail.com>
2023-01-17 15:55:49 +03:00
Konstantin Volkov
3108dc7c8c
Splitting units and updater benches (#2165)
* test run, moved updated to separate physical runner/flipper/card
* simplified units, removed re-flashing, moved format to beginning of run
* added reboot requence and mini optimizations
* forgot gitadd, added script modifications, workflow changes
* fixed linter issues
* moved updater to unit bench for speed up
* changes to units, flash (not full) on second update, new fbt GDB thread check
* changed serial of second device
* testing pipelines, added failing unit test
* fixed gdb step
* fixed gdb step v2 electric boogaloo
* fixed gdb step v3, fixed target
* reverted while1 in units, tests complete
* testing colored output
* trying different term setting
* debug outputs for terminal
* fixed typo in SConstruct and another terminal test
* reverted changes, no colored output, for production
* fixed log output to readable format
* fixed linter

Co-authored-by: Konstantin Volkov <k.volkov@flipperdevices.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-12-28 23:16:06 +09:00
Max Andreev
4e347b207c
Fix amap on forks (#2200) 2022-12-27 16:35:57 +09:00
Max Andreev
1c926cf8a2
Trigger amap from another repo (#2171)
* Add s3 upload, repository dispatch
* Add trigger
* Fix map file upload
* Debug
* Add event file upload to s3
* fix triggering
* Fix upload process
* fix build.yml

Co-authored-by: あく <alleteam@gmail.com>
2022-12-27 05:22:22 +09:00
Max Andreev
a34fbf6976
[FL-3056] Prevent merging of PRs if there are warnings from PVS-studio (#2176)
Co-authored-by: あく <alleteam@gmail.com>
2022-12-27 04:33:44 +09:00
Georgii Surkov
8582670a34
[FL-2811] Fix PVS-Studio warnings (#2142)
Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: gornekich <n.gorbadey@gmail.com>
2022-12-26 21:13:30 +09:00
Konstantin Volkov
84ba2690a5
GitHub: update unit_tests workflow steps to always re-flash device (#2150)
Co-authored-by: Konstantin Volkov <k.volkov@flipperdevices.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-12-20 03:14:44 +09:00
Max Andreev
361ca8b750
Rollback new amap workflow (#2152) 2022-12-20 02:09:19 +09:00
Max Andreev
ef7052fbad
Fix new amap workflow (#2151)
* Fix amap workflow
* get_env.py
* Fix amap_analyse.yml
2022-12-20 01:42:06 +09:00
Max Andreev
5d18b189ec
Run map file analyser through repository dispatch (#2148)
* Add ripository dispatch
* Fix mistakes
2022-12-20 00:28:53 +09:00
Konstantin Volkov
36e15a1352
Doom/Unit_tests flashing proper firmware (#2133)
* doom: should fix all issues, needs review
* fixed flash call and added port
* increased timeout, full flash wasn't completing
* turned serial back
* added unit formatting and force flag for overwriting files
* testing crash
* fixed step names, added release flashing, removed unit_tests from updater tests
* changed checkout method, added step validations
* removed duplicated tag
* fixed styling, stopped relying on shebang lines, removed debug output
* moved format to the end, flash_usb_full copies resourses already
* awaiting flipper after flashing and step status for file move

Co-authored-by: Konstantin Volkov <k.volkov@flipperdevices.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-12-19 22:07:23 +09:00
あく
27921e42ff
Github: fix unit tests workflow (#2117) 2022-12-11 05:34:12 +09:00
Max Andreev
9d728a1c65
Check FL ticket in PR name after merge (#2076)
* Add base
* Add base again
* Test reporting
* Fix reporting
* Fix secrets
* Fix arguments in report
* Remove depricated actions
* Disable reporting on PR

Co-authored-by: あく <alleteam@gmail.com>
2022-12-10 22:10:51 +09:00
Max Andreev
ce294c3b1e
Update toolchain to version 19. Update codeowners. Fix amap analyze. (#1986)
* Up toolchain to 19
* Fix amap_analyse.yml
* Github: update codeowners

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2022-11-09 01:56:49 +09:00
hedger
2d6c2886ae
fbt: compile_db fixes (#1981)
* fbt: forked compilation_db tool
* fbt: fixes for static analysis
* pvs-studio: ignoring more generic warnings
* fbt: util: added extract_abs_dir
* vscode: added fap-set-debug-elf-root for debug configurations
2022-11-07 23:54:41 +09:00