Back out changes to non-source files

This commit is contained in:
Thomas Göttgens 2023-01-21 16:17:08 +01:00
parent 9ebe24e680
commit ab3446faed
21 changed files with 151 additions and 147 deletions

View File

@ -28,7 +28,7 @@ body:
description: What LoRa IC does the board have? description: What LoRa IC does the board have?
validations: validations:
required: true required: true
- type: input - type: input
id: link id: link
attributes: attributes:

View File

@ -1,5 +1,5 @@
name: "Setup Build Base Composite Action" name: 'Setup Build Base Composite Action'
description: "Base build actions for Meshtastic Platform IO steps" description: 'Base build actions for Meshtastic Platform IO steps'
runs: runs:
using: "composite" using: "composite"
@ -10,7 +10,7 @@ runs:
submodules: "recursive" submodules: "recursive"
ref: ${{github.event.pull_request.head.ref}} ref: ${{github.event.pull_request.head.ref}}
repository: ${{github.event.pull_request.head.repo.full_name}} repository: ${{github.event.pull_request.head.repo.full_name}}
- name: Install cppcheck - name: Install cppcheck
shell: bash shell: bash
run: | run: |
@ -38,4 +38,4 @@ runs:
- name: Upgrade platformio - name: Upgrade platformio
shell: bash shell: bash
run: | run: |
pio upgrade pio upgrade

View File

@ -7,7 +7,7 @@ on:
required: true required: true
type: string type: string
jobs: jobs:
build-esp32: build-esp32:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
@ -31,7 +31,7 @@ jobs:
- name: Remove debug flags for release - name: Remove debug flags for release
if: ${{ github.event_name == 'workflow_dispatch' }} if: ${{ github.event_name == 'workflow_dispatch' }}
run: | run: |
sed -i '/DDEBUG_HEAP/d' ./arch/esp32/esp32.ini sed -i '/DDEBUG_HEAP/d' ./arch/esp32/esp32.ini
sed -i '/DDEBUG_HEAP/d' ./arch/esp32/esp32s2.ini sed -i '/DDEBUG_HEAP/d' ./arch/esp32/esp32s2.ini
sed -i '/DDEBUG_HEAP/d' ./arch/esp32/esp32s3.ini sed -i '/DDEBUG_HEAP/d' ./arch/esp32/esp32s3.ini
@ -46,7 +46,7 @@ jobs:
file: "firmware.bin" file: "firmware.bin"
target: "release/bleota.bin" target: "release/bleota.bin"
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
- name: Get release version string - name: Get release version string
shell: bash shell: bash
run: echo "version=$(./bin/buildinfo.py long)" >> $GITHUB_OUTPUT run: echo "version=$(./bin/buildinfo.py long)" >> $GITHUB_OUTPUT

View File

@ -7,7 +7,7 @@ on:
required: true required: true
type: string type: string
jobs: jobs:
build-nrf52: build-nrf52:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
@ -30,4 +30,4 @@ jobs:
path: | path: |
release/*.uf2 release/*.uf2
release/*.elf release/*.elf
release/*.zip release/*.zip

View File

@ -7,7 +7,7 @@ on:
required: true required: true
type: string type: string
jobs: jobs:
build-rpi2040: build-rpi2040:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
@ -29,4 +29,4 @@ jobs:
name: firmware-${{ inputs.board }}-${{ steps.version.outputs.version }}.zip name: firmware-${{ inputs.board }}-${{ steps.version.outputs.version }}.zip
path: | path: |
release/*.uf2 release/*.uf2
release/*.elf release/*.elf

View File

@ -10,31 +10,31 @@ on:
jobs: jobs:
flawfinder: flawfinder:
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Flawfinder name: Flawfinder
steps: steps:
# step 1 # step 1
- name: clone application source code - name: clone application source code
uses: actions/checkout@v3 uses: actions/checkout@v3
# step 2 # step 2
- name: flawfinder_scan - name: flawfinder_scan
uses: david-a-wheeler/flawfinder@2.0.19 uses: david-a-wheeler/flawfinder@2.0.19
with: with:
arguments: "--sarif ./" arguments: '--sarif ./'
output: "flawfinder_report.sarif" output: 'flawfinder_report.sarif'
# step 3 # step 3
- name: save report as pipeline artifact - name: save report as pipeline artifact
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: flawfinder_report.sarif name: flawfinder_report.sarif
path: flawfinder_report.sarif path: flawfinder_report.sarif
# step 4 # step 4
- name: publish code scanning alerts - name: publish code scanning alerts
uses: github/codeql-action/upload-sarif@v2 uses: github/codeql-action/upload-sarif@v2
with: with:
sarif_file: flawfinder_report.sarif sarif_file: flawfinder_report.sarif
category: flawfinder category: flawfinder

View File

@ -6,37 +6,39 @@ on:
branches: branches:
- master - master
schedule: schedule:
- cron: "0 1 * * 6" - cron: '0 1 * * 6'
jobs: jobs:
semgrep-full: semgrep-full:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: container:
image: returntocorp/semgrep image: returntocorp/semgrep
steps: steps:
# step 1
- name: clone application source code
uses: actions/checkout@v3
# step 2 # step 1
- name: full scan - name: clone application source code
run: | uses: actions/checkout@v3
semgrep \
--sarif --output report.sarif \
--metrics=off \
--config="p/default"
# step 3 # step 2
- name: save report as pipeline artifact - name: full scan
uses: actions/upload-artifact@v3 run: |
with: semgrep \
name: report.sarif --sarif --output report.sarif \
path: report.sarif --metrics=off \
--config="p/default"
# step 4 # step 3
- name: publish code scanning alerts - name: save report as pipeline artifact
uses: github/codeql-action/upload-sarif@v2 uses: actions/upload-artifact@v3
with: with:
sarif_file: report.sarif name: report.sarif
category: semgrep path: report.sarif
# step 4
- name: publish code scanning alerts
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: report.sarif
category: semgrep

View File

@ -1,14 +1,17 @@
--- ---
name: Semgrep Differential Scan name: Semgrep Differential Scan
on: pull_request on:
pull_request
jobs: jobs:
semgrep-diff: semgrep-diff:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: container:
image: returntocorp/semgrep image: returntocorp/semgrep
steps: steps:
# step 1 # step 1
- name: clone application source code - name: clone application source code
uses: actions/checkout@v3 uses: actions/checkout@v3

View File

@ -8,16 +8,17 @@ plugins:
uri: https://github.com/trunk-io/plugins uri: https://github.com/trunk-io/plugins
lint: lint:
enabled: enabled:
- git-diff-check
- gitleaks@8.15.2
- clang-format@14.0.0
- prettier@2.8.3
disabled:
- shellcheck@0.9.0 - shellcheck@0.9.0
- shfmt@3.5.0 - shfmt@3.5.0
- oxipng@8.0.0 - oxipng@8.0.0
- actionlint@1.6.22 - actionlint@1.6.22
- git-diff-check
- gitleaks@8.15.2
- markdownlint@0.33.0 - markdownlint@0.33.0
- hadolint@2.12.0 - hadolint@2.12.0
- clang-format@14.0.0
- prettier@2.8.3
- svgo@3.0.2 - svgo@3.0.2
runtimes: runtimes:
enabled: enabled:

View File

@ -2,8 +2,8 @@
set -e set -e
VERSION=$(bin/buildinfo.py long) VERSION=`bin/buildinfo.py long`
SHORT_VERSION=$(bin/buildinfo.py short) SHORT_VERSION=`bin/buildinfo.py short`
OUTDIR=release/ OUTDIR=release/
@ -11,7 +11,7 @@ rm -f $OUTDIR/firmware*
rm -r $OUTDIR/* || true rm -r $OUTDIR/* || true
# Important to pull latest version of libs into all device flavors, otherwise some devices might be stale # Important to pull latest version of libs into all device flavors, otherwise some devices might be stale
platformio pkg update platformio pkg update
echo "Building for $1 with $PLATFORMIO_BUILD_FLAGS" echo "Building for $1 with $PLATFORMIO_BUILD_FLAGS"
rm -f .pio/build/$1/firmware.* rm -f .pio/build/$1/firmware.*

View File

@ -2,8 +2,8 @@
set -e set -e
VERSION=$(bin/buildinfo.py long) VERSION=`bin/buildinfo.py long`
SHORT_VERSION=$(bin/buildinfo.py short) SHORT_VERSION=`bin/buildinfo.py short`
OUTDIR=release/ OUTDIR=release/
@ -13,10 +13,11 @@ mkdir -p $OUTDIR/
rm -r $OUTDIR/* || true rm -r $OUTDIR/* || true
# Important to pull latest version of libs into all device flavors, otherwise some devices might be stale # Important to pull latest version of libs into all device flavors, otherwise some devices might be stale
platformio pkg update platformio pkg update
pio run --environment native pio run --environment native
cp .pio/build/native/program $OUTDIR/meshtasticd_linux_amd64 cp .pio/build/native/program $OUTDIR/meshtasticd_linux_amd64
cp bin/device-install.* $OUTDIR cp bin/device-install.* $OUTDIR
cp bin/device-update.* $OUTDIR cp bin/device-update.* $OUTDIR

View File

@ -2,8 +2,8 @@
set -e set -e
VERSION=$(bin/buildinfo.py long) VERSION=`bin/buildinfo.py long`
SHORT_VERSION=$(bin/buildinfo.py short) SHORT_VERSION=`bin/buildinfo.py short`
OUTDIR=release/ OUTDIR=release/
@ -11,7 +11,7 @@ rm -f $OUTDIR/firmware*
rm -r $OUTDIR/* || true rm -r $OUTDIR/* || true
# Important to pull latest version of libs into all device flavors, otherwise some devices might be stale # Important to pull latest version of libs into all device flavors, otherwise some devices might be stale
platformio pkg update platformio pkg update
echo "Building for $1 with $PLATFORMIO_BUILD_FLAGS" echo "Building for $1 with $PLATFORMIO_BUILD_FLAGS"
rm -f .pio/build/$1/firmware.* rm -f .pio/build/$1/firmware.*

View File

@ -2,8 +2,8 @@
set -e set -e
VERSION=$(bin/buildinfo.py long) VERSION=`bin/buildinfo.py long`
SHORT_VERSION=$(bin/buildinfo.py short) SHORT_VERSION=`bin/buildinfo.py short`
OUTDIR=release/ OUTDIR=release/
@ -11,7 +11,7 @@ rm -f $OUTDIR/firmware*
rm -r $OUTDIR/* || true rm -r $OUTDIR/* || true
# Important to pull latest version of libs into all device flavors, otherwise some devices might be stale # Important to pull latest version of libs into all device flavors, otherwise some devices might be stale
platformio pkg update platformio pkg update
echo "Building for $1 with $PLATFORMIO_BUILD_FLAGS" echo "Building for $1 with $PLATFORMIO_BUILD_FLAGS"
rm -f .pio/build/$1/firmware.* rm -f .pio/build/$1/firmware.*

View File

@ -4,23 +4,23 @@
set -e set -e
VERSION=$(bin/buildinfo.py long) VERSION=`bin/buildinfo.py long`
# The shell vars the build tool expects to find # The shell vars the build tool expects to find
export APP_VERSION=$VERSION export APP_VERSION=$VERSION
if [[ $# -gt 0 ]]; then if [[ $# -gt 0 ]]; then
# can override which environment by passing arg # can override which environment by passing arg
BOARDS="$@" BOARDS="$@"
else else
BOARDS="tlora-v2 tlora-v1 tlora_v1_3 tlora-v2-1-1.6 tbeam heltec-v1 heltec-v2.0 heltec-v2.1 tbeam0.7 meshtastic-diy-v1 rak4631 rak4631_eink rak11200 t-echo pca10059_diy_eink" BOARDS="tlora-v2 tlora-v1 tlora_v1_3 tlora-v2-1-1.6 tbeam heltec-v1 heltec-v2.0 heltec-v2.1 tbeam0.7 meshtastic-diy-v1 rak4631 rak4631_eink rak11200 t-echo pca10059_diy_eink"
fi fi
echo "BOARDS:${BOARDS}" echo "BOARDS:${BOARDS}"
CHECK="" CHECK=""
for BOARD in $BOARDS; do for BOARD in $BOARDS; do
CHECK="${CHECK} -e ${BOARD}" CHECK="${CHECK} -e ${BOARD}"
done done
pio check --flags "-DAPP_VERSION=${APP_VERSION} --suppressions-list=suppressions.txt" $CHECK --skip-packages --pattern="src/" --fail-on-defect=low --fail-on-defect=medium --fail-on-defect=high pio check --flags "-DAPP_VERSION=${APP_VERSION} --suppressions-list=suppressions.txt" $CHECK --skip-packages --pattern="src/" --fail-on-defect=low --fail-on-defect=medium --fail-on-defect=high

View File

@ -5,17 +5,17 @@
set -e set -e
if [[ $# -gt 0 ]]; then if [[ $# -gt 0 ]]; then
# can override which environment by passing arg # can override which environment by passing arg
BOARDS="$@" BOARDS="$@"
else else
BOARDS="rak4631 rak4631_eink t-echo pca10059_diy_eink pico rak11200 tlora-v2 tlora-v1 tlora_v1_3 tlora-v2-1-1.6 tbeam heltec-v1 heltec-v2.0 heltec-v2.1 tbeam0.7 meshtastic-diy-v1 nano-g1 station-g1 m5stack-core m5stack-coreink tbeam-s3-core" BOARDS="rak4631 rak4631_eink t-echo pca10059_diy_eink pico rak11200 tlora-v2 tlora-v1 tlora_v1_3 tlora-v2-1-1.6 tbeam heltec-v1 heltec-v2.0 heltec-v2.1 tbeam0.7 meshtastic-diy-v1 nano-g1 station-g1 m5stack-core m5stack-coreink tbeam-s3-core"
fi fi
echo "BOARDS:${BOARDS}" echo "BOARDS:${BOARDS}"
CHECK="" CHECK=""
for BOARD in $BOARDS; do for BOARD in $BOARDS; do
CHECK="${CHECK} -e ${BOARD}" CHECK="${CHECK} -e ${BOARD}"
done done
echo $CHECK echo $CHECK

View File

@ -1,12 +1,12 @@
#!/bin/sh #!/bin/sh
PYTHON=${PYTHON:-$(which python3 python | head -n 1)} PYTHON=${PYTHON:-$(which python3 python|head -n 1)}
set -e set -e
# Usage info # Usage info
show_help() { show_help() {
cat <<EOF cat << EOF
Usage: $(basename $0) [-h] [-p ESPTOOL_PORT] [-P PYTHON] [-f FILENAME|FILENAME] Usage: $(basename $0) [-h] [-p ESPTOOL_PORT] [-P PYTHON] [-f FILENAME|FILENAME]
Flash image file to device, but first erasing and writing system information" Flash image file to device, but first erasing and writing system information"
@ -18,41 +18,39 @@ Flash image file to device, but first erasing and writing system information"
EOF EOF
} }
while getopts ":hp:P:f:" opt; do while getopts ":hp:P:f:" opt; do
case "${opt}" in case "${opt}" in
h) h)
show_help show_help
exit 0 exit 0
;; ;;
p) p) export ESPTOOL_PORT=${OPTARG}
export ESPTOOL_PORT=${OPTARG} ;;
;; P) PYTHON=${OPTARG}
P) ;;
PYTHON=${OPTARG} f) FILENAME=${OPTARG}
;; ;;
f) *)
FILENAME=${OPTARG} echo "Invalid flag."
;; show_help >&2
*) exit 1
echo "Invalid flag." ;;
show_help >&2 esac
exit 1
;;
esac
done done
shift "$((OPTIND - 1))" shift "$((OPTIND-1))"
[ -z "$FILENAME" -a -n "$1" ] && { [ -z "$FILENAME" -a -n "$1" ] && {
FILENAME=$1 FILENAME=$1
shift shift
} }
if [ -f "${FILENAME}" ] && [ ! -z "${FILENAME##*"update"*}" ]; then if [ -f "${FILENAME}" ] && [ ! -z "${FILENAME##*"update"*}" ]; then
echo "Trying to flash ${FILENAME}, but first erasing and writing system information" echo "Trying to flash ${FILENAME}, but first erasing and writing system information"
"$PYTHON" -m esptool erase_flash "$PYTHON" -m esptool erase_flash
"$PYTHON" -m esptool write_flash 0x00 ${FILENAME} "$PYTHON" -m esptool write_flash 0x00 ${FILENAME}
"$PYTHON" -m esptool write_flash 0x260000 bleota.bin "$PYTHON" -m esptool write_flash 0x260000 bleota.bin
"$PYTHON" -m esptool write_flash 0x300000 littlefs-*.bin "$PYTHON" -m esptool write_flash 0x300000 littlefs-*.bin
else else
show_help show_help

View File

@ -1,10 +1,10 @@
#!/bin/sh #!/bin/sh
PYTHON=${PYTHON:-$(which python3 python | head -n 1)} PYTHON=${PYTHON:-$(which python3 python|head -n 1)}
# Usage info # Usage info
show_help() { show_help() {
cat <<EOF cat << EOF
Usage: $(basename $0) [-h] [-p ESPTOOL_PORT] [-P PYTHON] [-f FILENAME|FILENAME] Usage: $(basename $0) [-h] [-p ESPTOOL_PORT] [-P PYTHON] [-f FILENAME|FILENAME]
Flash image file to device, leave existing system intact." Flash image file to device, leave existing system intact."
@ -16,33 +16,31 @@ Flash image file to device, leave existing system intact."
EOF EOF
} }
while getopts ":hp:P:f:" opt; do while getopts ":hp:P:f:" opt; do
case "${opt}" in case "${opt}" in
h) h)
show_help show_help
exit 0 exit 0
;; ;;
p) p) export ESPTOOL_PORT=${OPTARG}
export ESPTOOL_PORT=${OPTARG} ;;
;; P) PYTHON=${OPTARG}
P) ;;
PYTHON=${OPTARG} f) FILENAME=${OPTARG}
;; ;;
f) *)
FILENAME=${OPTARG} echo "Invalid flag."
;; show_help >&2
*) exit 1
echo "Invalid flag." ;;
show_help >&2 esac
exit 1
;;
esac
done done
shift "$((OPTIND - 1))" shift "$((OPTIND-1))"
[ -z "$FILENAME" -a -n "$1" ] && { [ -z "$FILENAME" -a -n "$1" ] && {
FILENAME=$1 FILENAME=$1
shift shift
} }
if [ -f "${FILENAME}" ] && [ -z "${FILENAME##*"update"*}" ]; then if [ -f "${FILENAME}" ] && [ -z "${FILENAME##*"update"*}" ]; then

View File

@ -2,4 +2,4 @@
arm-none-eabi-readelf -s -e .pio/build/nrf52dk/firmware.elf | head -80 arm-none-eabi-readelf -s -e .pio/build/nrf52dk/firmware.elf | head -80
nm -CSr --size-sort .pio/build/nrf52dk/firmware.elf | grep '^200' nm -CSr --size-sort .pio/build/nrf52dk/firmware.elf | grep '^200'

View File

@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -e set -e
# regen the design bins first # regen the design bins first
cd design cd design

View File

@ -1,10 +1,10 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -e set -e
echo "This script is only for developers who are publishing new builds on github. Most users don't need it" echo "This script is only for developers who are publishing new builds on github. Most users don't need it"
VERSION=$(bin/buildinfo.py long) VERSION=`bin/buildinfo.py long`
# Must have a V prefix to trigger github # Must have a V prefix to trigger github
git tag "v${VERSION}" git tag "v${VERSION}"

View File

@ -8,3 +8,4 @@ sleep 20 # 5 seconds was not enough
echo "Simulator started, launching python test..." echo "Simulator started, launching python test..."
python3 -c 'from meshtastic.test import testSimulator; testSimulator()' python3 -c 'from meshtastic.test import testSimulator; testSimulator()'