Add MQTT broker and client example #77
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: on host workflow | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
jobs: | |
debian_and_ubuntu: | |
runs-on: ubuntu-22.04 | |
# This procedure should work on: | |
# - Debian 12 on desktop. | |
# - Ubuntu 22.04 on desktop. | |
# | |
# The setup is split into three parts: | |
# | |
# 1. Global setup: Steps that may have effects anywhere on the system. | |
# 2. Local setup: Steps that have effects only in this project (and in caches). | |
# 3. Shell setup: Steps that have effects only in the current shell. | |
# | |
# These steps are only suggestions and readers are welcome install dependencies in a different | |
# way, or skip them entirely; | |
# not every dependency is needed for every workflow and the way the `init_env.sh` file is | |
# created should allow blending global and local installations as the user sees fit. | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Global setup | |
# These steps typically need to be done once per machine, or when the project dependencies change. | |
# | |
# They are divided into multiple scripts to: | |
# - run only what is needed as root. | |
# - give the user insight into and control over how their system is configured. | |
# | |
# One prerequisite that is not documented explicitly below is Docker. | |
# | |
# More information about what each script does and why may be found in the script itself. | |
working-directory: .devhost | |
run: | | |
sudo mkdir /opt/axis/ | |
sudo chown $USER /opt/axis/ | |
./install-sdk.sh /opt/axis/ | |
sudo ./install-system-packages.sh | |
./install-rust.sh | |
- name: Local setup | |
# This step typically needs to be done once per repository clone. | |
working-directory: .devhost | |
run: | | |
./install-venv.sh venv ../init_env.sh | |
- name: Shell setup | |
# This step typically needs to be done once per shell session. | |
# To verify that the procedure has worked, the all checks are run as well. | |
run: | | |
source ./init_env.sh | |
make check_all |