Update the add-on to Bamboo v0.1.6 and add opt-in service discovery options

This commit is contained in:
Veillax committed 2026-10-30 19:14:34 -06:00
1 parent cd453221f6
commit 0bd7247766
7 files changed
+41 -4

No files matched your search

+1 -1
View File
@@ -12,7 +12,7 @@ It builds on your Home Assistant machine the first time you install it. It suppo
## For maintainers
The add-on version is the Bamboo release it installs: version `0.1.5` downloads Bamboo `v0.1.5` and checks it against that release's `SHA256SUMS`. To follow a new Bamboo release, change `version` in `bamboo/config.yaml` (and the default of `BUILD_VERSION` in `bamboo/Dockerfile`), and add a line to `bamboo/CHANGELOG.md`.
The add-on version is the Bamboo release it installs: version `0.1.6` downloads Bamboo `v0.1.6` and checks it against that release's `SHA256SUMS`. To follow a new Bamboo release, change `version` in `bamboo/config.yaml` (and the default of `BUILD_VERSION` in `bamboo/Dockerfile`), and add a line to `bamboo/CHANGELOG.md`.
## License
+5
View File
@@ -1,5 +1,10 @@
# Changelog
## 0.1.6
* Installs Bamboo v0.1.6.
* New, off by default: **Suggest services** reports what is listening on Home Assistant's machine as suggested targets in Hammerhead. **Scan subnets** also scans the private subnets you list. Nothing is exposed until you pick a target.
## 0.1.5
* First version of the add-on. Installs Bamboo v0.1.5.
+4
View File
@@ -33,6 +33,10 @@ Without it, the page fails with "400: Bad Request". Home Assistant has its own s
The add-on uses host networking, so a resource can also point at any address on your network, such as a camera at `192.168.1.40`. Pick this site as the target and enter that address and port.
## Suggest services (optional)
Turn on **Suggest services** and Bamboo reports the services listening on Home Assistant's machine to Hammerhead, so you can pick one as a target instead of typing its address. Fill in **Scan subnets** (for example `192.168.1.0/24`) and it also looks for services on those networks, trying the ports in **Scan ports** or a short list of common ones. It is gentle, with a rate limit and a sweep every 15 minutes, and only private networks are accepted. Nothing is exposed until you pick a target. Only scan networks you are allowed to scan.
## Updates
The add-on version is the Bamboo release it installs. Update it from the add-on's page when a new version appears. Bamboo's own auto-update is not used here, because a new version arrives as an add-on update instead. Your WireGuard key and settings are kept across updates.
+2 -2
View File
@@ -1,9 +1,9 @@
ARG BUILD_FROM
FROM ${BUILD_FROM}
# The add-on version in config.yaml is the Bamboo release it installs (0.1.5 installs v0.1.5).
# The add-on version in config.yaml is the Bamboo release it installs (0.1.6 installs v0.1.6).
ARG BUILD_ARCH
ARG BUILD_VERSION=0.1.5
ARG BUILD_VERSION=0.1.6
# Download the release for this CPU and check it against the release's SHA256SUMS before installing.
RUN set -eu; \
+7 -1
View File
@@ -1,5 +1,5 @@
name: Bamboo
version: "0.1.5"
version: "0.1.6"
slug: bamboo
description: Connects Home Assistant and your home network to a Blacktip edge, so you can reach them from the internet without opening any ports.
url: https://git.veillax.com/Veillax/bamboo
@@ -16,6 +16,12 @@ host_network: true
options:
hammerhead_url: ""
token: ""
discover: false
discover_subnets: ""
discover_ports: ""
schema:
hammerhead_url: url
token: password
discover: bool
discover_subnets: str?
discover_ports: str?
+13
View File
@@ -14,6 +14,19 @@ fi
export BAMBOO_HAMMERHEAD="${url%/}"
export BAMBOO_TOKEN="${token}"
# Service discovery is opt-in: Bamboo reports what it finds as suggested targets in Hammerhead.
if bashio::config.true 'discover'; then
export BAMBOO_DISCOVER=1
fi
subnets="$(bashio::config 'discover_subnets')"
if [ -n "${subnets}" ]; then
export BAMBOO_DISCOVER_SUBNETS="${subnets}"
fi
ports="$(bashio::config 'discover_ports')"
if [ -n "${ports}" ]; then
export BAMBOO_DISCOVER_PORTS="${ports}"
fi
bashio::log.info "Starting $(bamboo -version), connecting to ${BAMBOO_HAMMERHEAD}"
# /data survives restarts and updates; it holds this site's WireGuard key.
exec bamboo -data /data
+9
View File
@@ -5,3 +5,12 @@ configuration:
token:
name: Site token
description: The token of the site you created for this network. In Hammerhead, open Sites and use Show command to copy it.
discover:
name: Suggest services
description: Report the services listening on this machine to Hammerhead as suggested targets. Nothing is exposed until you pick one.
discover_subnets:
name: Scan subnets
description: "Also scan these private subnets for services, comma separated, for example 192.168.1.0/24. Each can be at most a /22. Leave empty to scan nothing. Only scan networks you are allowed to scan."
discover_ports:
name: Scan ports
description: "The TCP ports to try when scanning, for example 22,80,443,8000-8010. Leave empty for a short list of common ones."