From 0b47dd8067d2a838a23a426ff45058db6d1909d5 Mon Sep 17 00:00:00 2001 From: Zefek <32429493+Zefek@users.noreply.github.com> Date: Wed, 15 Apr 2026 09:44:07 +0200 Subject: [PATCH 1/2] Specify versions for Arduino core and libraries Updated Arduino CLI commands to specify versions for board core and library installations. Added validation for the serial port format before uploading firmware. --- .github/workflows/deployment.yml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deployment.yml b/.github/workflows/deployment.yml index 6b9e7ef..42f3c81 100644 --- a/.github/workflows/deployment.yml +++ b/.github/workflows/deployment.yml @@ -19,12 +19,12 @@ jobs: - name: Install required board core run: | - & "$Env:RUNNER_TOOL_CACHE\arduino-cli\arduino-cli.exe" --config-file config.yaml core install arduino:avr + & "$Env:RUNNER_TOOL_CACHE\arduino-cli\arduino-cli.exe" --config-file config.yaml core install arduino:avr@1.8.7 - name: Install custom Arduino libraries (Windows) shell: powershell run: | - & "$Env:RUNNER_TOOL_CACHE\arduino-cli\arduino-cli.exe" --config-file config.yaml lib install MQTTESP8266 + & "$Env:RUNNER_TOOL_CACHE\arduino-cli\arduino-cli.exe" --config-file config.yaml lib install "MQTTESP8266@5.1.2" - name: Set configs (Windows) shell: powershell @@ -38,6 +38,11 @@ jobs: & "$Env:RUNNER_TOOL_CACHE\arduino-cli\arduino-cli.exe" --config-file config.yaml compile --fqbn arduino:avr:uno ./ --output-dir build - name: Upload firmware to Arduino + env: + SERIAL_PORT: ${{ github.event.deployment.payload.serial_port }} run: | - $port = "${{ github.event.deployment.payload.serial_port }}" - & "$Env:RUNNER_TOOL_CACHE\arduino-cli\arduino-cli.exe" --config-file config.yaml upload --fqbn arduino:avr:uno --port $port --input-dir build + if ($env:SERIAL_PORT -notmatch '^COM\d+$') { + Write-Error "Invalid serial port format: $env:SERIAL_PORT" + exit 1 + } + & "$Env:RUNNER_TOOL_CACHE\arduino-cli\arduino-cli.exe" --config-file config.yaml upload --fqbn arduino:avr:uno --port $env:SERIAL_PORT --input-dir build From 54324e76f52214ea0906eb64247eae0f604ef172 Mon Sep 17 00:00:00 2001 From: Zefek <32429493+Zefek@users.noreply.github.com> Date: Wed, 15 Apr 2026 09:47:43 +0200 Subject: [PATCH 2/2] Update build.yml --- .github/workflows/build.yml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b8569a6..eb641eb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,9 +15,7 @@ jobs: uses: actions/checkout@v3 - name: Install Arduino CLI - run: | - curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | sh - sudo mv bin/arduino-cli /usr/local/bin/ + uses: arduino/setup-arduino-cli@81d310742121c928ea9c8bbd407b4217b432ae02 # v2.0.0 - name: Initialize Arduino CLI run: | @@ -25,12 +23,11 @@ jobs: arduino-cli core update-index - name: Install required board core - run: arduino-cli core install arduino:avr + run: arduino-cli core install arduino:avr@1.8.7 # napÅ™. pro Arduino Uno - name: Install custom library run: | - mkdir -p ~/Arduino/libraries - git clone https://github.com/Zefek/MQTTESP8266.git ~/Arduino/libraries/MQTTESP8266 + arduino-cli lib install "MQTTESP8266@5.1.2" - name: Set configs run: |