Description
Add support for installing and automatically updating the edge-agent binary from GitHub releases.
Components Needed
- Build-time download script - Downloads initial binary during image creation
- Runtime updater service - Updates binary when internet available
- Systemd services - Manages agent lifecycle
Recipe Structure
recipes-core/edge-agent/
├── edge-agent.bb
├── files/
│ ├── edge-agent.service
│ ├── edge-agent-running.service
│ ├── edge-agent-updater.sh
│ └── download-edge-agent.sh
Implementation Details
Build-time Download
The recipe should attempt to download the latest edge-agent during build if network is available, falling back to runtime download if not.
Runtime Update Service
[Unit]
Description=EdgeOS Agent Updater
After=network-online.target
Wants=network-online.target
[Service]
Type=oneshot
ExecStart=/opt/edgeos/bin/edge-agent-updater.sh
RemainAfterExit=true
Acceptance Criteria
Description
Add support for installing and automatically updating the edge-agent binary from GitHub releases.
Components Needed
Recipe Structure
Implementation Details
/usr/local/bin/edge-agent/opt/edgeos/bin/Build-time Download
The recipe should attempt to download the latest edge-agent during build if network is available, falling back to runtime download if not.
Runtime Update Service
Acceptance Criteria
/usr/local/binwith backup in/opt/edgeos/bin