From 4c7720a2c113da9d2914d898c4ccf59ae0471393 Mon Sep 17 00:00:00 2001 From: David Cermak Date: Thu, 16 Mar 2023 08:31:18 +0100 Subject: [PATCH] ci(common): Run all test on push event Added a description about the release process to the contributing guide --- .github/workflows/asio__build-target-test.yml | 6 ++++-- .github/workflows/mdns__build-target-test.yml | 12 ++++++++---- .github/workflows/mdns__host-tests.yml | 4 ++-- .github/workflows/modem__build-host-tests.yml | 6 +++--- .github/workflows/modem__target-test.yml | 6 ++++-- .github/workflows/mqtt_cxx__build.yml | 2 +- .../workflows/websocket__build-target-test.yml | 6 ++++-- CONTRIBUTING.md | 16 ++++++++++++++++ 8 files changed, 42 insertions(+), 16 deletions(-) diff --git a/.github/workflows/asio__build-target-test.yml b/.github/workflows/asio__build-target-test.yml index 74d12ad99..c6bd2cda3 100644 --- a/.github/workflows/asio__build-target-test.yml +++ b/.github/workflows/asio__build-target-test.yml @@ -9,7 +9,7 @@ on: jobs: build_asio: - if: contains(github.event.pull_request.labels.*.name, 'asio') + if: contains(github.event.pull_request.labels.*.name, 'asio') || github.event_name == 'push' name: Build strategy: matrix: @@ -58,7 +58,9 @@ jobs: target_tests_asio: # Skip running on forks since it won't have access to secrets - if: ${{ contains(github.event.pull_request.labels.*.name, 'asio') && (github.repository == 'espressif/esp-protocols') }} + if: | + github.repository == 'espressif/esp-protocols' && + ( contains(github.event.pull_request.labels.*.name, 'asio') || github.event_name == 'push' ) name: Target tests strategy: matrix: diff --git a/.github/workflows/mdns__build-target-test.yml b/.github/workflows/mdns__build-target-test.yml index d5f76171d..2f73a16ef 100644 --- a/.github/workflows/mdns__build-target-test.yml +++ b/.github/workflows/mdns__build-target-test.yml @@ -9,7 +9,7 @@ on: jobs: build_mdns: - if: contains(github.event.pull_request.labels.*.name, 'mdns') + if: contains(github.event.pull_request.labels.*.name, 'mdns') || github.event_name == 'push' name: Build strategy: matrix: @@ -42,7 +42,7 @@ jobs: if-no-files-found: error build_mdns_app: - if: contains(github.event.pull_request.labels.*.name, 'mdns') + if: contains(github.event.pull_request.labels.*.name, 'mdns') || github.event_name == 'push' name: Build Test Apps strategy: matrix: @@ -91,7 +91,9 @@ jobs: target_test_apps_mdns: # Skip running on forks since it won't have access to secrets - if: ${{ contains(github.event.pull_request.labels.*.name, 'mdns') && (github.repository == 'espressif/esp-protocols') }} + if: | + github.repository == 'espressif/esp-protocols' && + ( contains(github.event.pull_request.labels.*.name, 'mdns') || github.event_name == 'push' ) name: Target Test Apps strategy: matrix: @@ -129,7 +131,9 @@ jobs: target_tests_mdns: # Skip running on forks since it won't have access to secrets - if: ${{ contains(github.event.pull_request.labels.*.name, 'mdns') && (github.repository == 'espressif/esp-protocols') }} + if: | + github.repository == 'espressif/esp-protocols' && + ( contains(github.event.pull_request.labels.*.name, 'mdns') || github.event_name == 'push' ) name: Target Example and Unit tests strategy: matrix: diff --git a/.github/workflows/mdns__host-tests.yml b/.github/workflows/mdns__host-tests.yml index ffb5b37e6..57d0e65c6 100644 --- a/.github/workflows/mdns__host-tests.yml +++ b/.github/workflows/mdns__host-tests.yml @@ -9,7 +9,7 @@ on: jobs: host_test_mdns: - if: contains(github.event.pull_request.labels.*.name, 'mdns') + if: contains(github.event.pull_request.labels.*.name, 'mdns') || github.event_name == 'push' name: Host test runs-on: ubuntu-20.04 container: espressif/idf:latest @@ -33,7 +33,7 @@ jobs: cat ip.txt build_afl_host_test_mdns: - if: contains(github.event.pull_request.labels.*.name, 'mdns') + if: contains(github.event.pull_request.labels.*.name, 'mdns') || github.event_name == 'push' name: Build AFL host test strategy: matrix: diff --git a/.github/workflows/modem__build-host-tests.yml b/.github/workflows/modem__build-host-tests.yml index 64759ee2c..7993324d1 100644 --- a/.github/workflows/modem__build-host-tests.yml +++ b/.github/workflows/modem__build-host-tests.yml @@ -9,7 +9,7 @@ on: jobs: build_esp_modem: - if: contains(github.event.pull_request.labels.*.name, 'modem') + if: contains(github.event.pull_request.labels.*.name, 'modem') || github.event_name == 'push' name: Build strategy: matrix: @@ -47,7 +47,7 @@ jobs: python ./ci/build_apps.py components/esp_modem/examples/${{ matrix.example }} host_test_esp_modem: - if: contains(github.event.pull_request.labels.*.name, 'modem') + if: contains(github.event.pull_request.labels.*.name, 'modem') || github.event_name == 'push' name: Host Tests runs-on: ubuntu-20.04 container: espressif/idf:release-v4.3 @@ -84,7 +84,7 @@ jobs: files: esp-protocols/components/esp_modem/test/host_test/junit.xml host_test_gcov_esp_modem: - if: contains(github.event.pull_request.labels.*.name, 'modem') + if: contains(github.event.pull_request.labels.*.name, 'modem') || github.event_name == 'push' name: Run gcovr on esp modem host test runs-on: ubuntu-22.04 container: espressif/idf:release-v4.3 diff --git a/.github/workflows/modem__target-test.yml b/.github/workflows/modem__target-test.yml index cfb55e4c2..5a775c346 100644 --- a/.github/workflows/modem__target-test.yml +++ b/.github/workflows/modem__target-test.yml @@ -9,7 +9,7 @@ on: jobs: build_esp_modem_tests: - if: contains(github.event.pull_request.labels.*.name, 'modem') + if: contains(github.event.pull_request.labels.*.name, 'modem') || github.event_name == 'push' name: Build Target tests strategy: matrix: @@ -46,7 +46,9 @@ jobs: target_tests_esp_modem: # Skip running on forks since it won't have access to secrets - if: ${{ contains(github.event.pull_request.labels.*.name, 'modem') && (github.repository == 'espressif/esp-protocols') }} + if: | + github.repository == 'espressif/esp-protocols' && + ( contains(github.event.pull_request.labels.*.name, 'modem') || github.event_name == 'push' ) name: Run Target tests strategy: matrix: diff --git a/.github/workflows/mqtt_cxx__build.yml b/.github/workflows/mqtt_cxx__build.yml index 0f265f500..7f04f3dd5 100644 --- a/.github/workflows/mqtt_cxx__build.yml +++ b/.github/workflows/mqtt_cxx__build.yml @@ -9,7 +9,7 @@ on: jobs: build_esp_mqtt_cxx: - if: contains(github.event.pull_request.labels.*.name, 'mqtt') + if: contains(github.event.pull_request.labels.*.name, 'mqtt') || github.event_name == 'push' name: Build strategy: matrix: diff --git a/.github/workflows/websocket__build-target-test.yml b/.github/workflows/websocket__build-target-test.yml index 314fdbc90..f9947d75f 100644 --- a/.github/workflows/websocket__build-target-test.yml +++ b/.github/workflows/websocket__build-target-test.yml @@ -9,7 +9,7 @@ on: jobs: build_websocket: - if: contains(github.event.pull_request.labels.*.name, 'websocket') + if: contains(github.event.pull_request.labels.*.name, 'websocket') || github.event_name == 'push' name: Build strategy: matrix: @@ -56,7 +56,9 @@ jobs: run-target-websocket: # Skip running on forks since it won't have access to secrets - if: ${{ contains(github.event.pull_request.labels.*.name, 'websocket') && (github.repository == 'espressif/esp-protocols') }} + if: | + github.repository == 'espressif/esp-protocols' && + ( contains(github.event.pull_request.labels.*.name, 'websocket') || github.event_name == 'push' ) name: Target test needs: build_websocket strategy: diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0a0c3387c..e325e78a6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -13,3 +13,19 @@ Contributions in the form of pull requests, issue reports, and feature requests For quick merging, the contribution should be short, and concentrated on a single feature or topic. The larger the contribution is, the longer it would take to review it and merge it. Please follow the [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) rule when writing commit messages. + +## Release process + +When releasing a new component version we have to: + +* Update the version number +* Update the changelog +* Create the version tag in this repository +* Deploy the component to component registry +* Update the documentation + +This process is not fully automated, the first three steps need to be performed manually by project maintainers running the `bump` command (from within this repository, rather than forks, to publish the release `tag`). Release procedure is as follows: +* Create a branch in this repository (not from fork) +* Run `cz bump [version]` (version number is optional, `cz` would automatically increment it if not present) +* Check the updated `CHANGELOG.md` +* Create and merge the branch to master