IT-Deck · section 5 of 7

Build and deploy

GitHub Actions · C++/vcpkg · Ansible · Docker

On this page

Releases and tests

  • Tests in GitHub Actions on every push, on Linux and on Windows
  • A v*.*.* tag builds ITDeck.exe on a Windows runner; publishing is a manual run: a check of the version and the “What's new” entry, then a release with the exe in the public repository
  • The native webcam part (C++, CMake, vcpkg) is built by a separate workflow and embedded into the exe

Updates and uninstall

  • Update check: at start the window asks the releases page once and shows a “Download” button if a new version is out; any errors are silently ignored, and it is turned off with UPDATE_CHECK=0
  • One-button uninstall: IT-Deck Camera, the exe, the shortcut, settings and tokens, the tile layout, Windows Firewall rules and the temporary unpack folder, everything IT-Deck writes to disk at all

The server variant

  • The server variant: docker compose and deploy.sh (git pull, health check, comparing the code in the container with the code on disk)
  • An Ansible playbook for a clean Debian 12: Docker, the ufw firewall, Nginx as a TLS reverse proxy with WebSocket upgrade, a cron backup, Prometheus + node_exporter on loopback only

Section read?

Next section: Video