Build Image with Agent
This page describes how to insert the Connect Agent into an OS image build in order to deploy JFrog Connect to a large number of devices.
Last updated
Was this helpful?
This page describes how to insert the Connect Agent into an OS image build in order to deploy JFrog Connect to a large number of devices.
Last updated
Was this helpful?
This method is suitable for off-the-shelf and custom linux-based operating systems. This procedure uses Yocto OS as an example, but it is applicable to other OS’s as well.
You need the following before starting the procedure:
Devices meet minimum hardware, OS, and software requirements as described in
Internet connectivity with the devices
JFrog Connect account created and a project defined as described in
The requirements and parameters specifically for Yocto are shown below.
Systemd or init.d and Cron. It is recommended to use Systemd:
DISTRO_FEATURES_append = " systemd"
VIRTUAL-RUNTIME_init_manager = "systemd"
DISTRO_FEATURES_BACKFILL_CONSIDERED = "sysvinit"
VIRTUAL-RUNTIME_initscripts = ""
OpenSSH:
CORE_IMAGE_EXTRA_INSTALL_append = " openssh"
For other operating systems, the requirements are similar:
Systemd or init.d (systemd is recommended)
Cron
OpenSSH
To obtain the Connect Agent binary file, contact JFrog Connect Support.
Open the file connect/service/settings.json
Fill in the value for <pairing_token>
. To find this, go to the Devices page and click Register Device. Below is an example of a settings.json file with the values filled in.
{"pairing_token":"the-pairing-token", "device_name":"","device_group":"", "software_version":"", "device_token":""}
Save the file.
Copy the following files and folders to your OS (i.e., Yocto) file system:
/connect/
folder to /etc/
connect.service
file to /etc/systemd/system/
connect.service
file to /etc/systemd/system/multi-user.target.wants/
Open the file connect/service/settings.json
Fill in the values for <user_token>
and <project_name>
. To find these, go to the Devices page and click Register Device. Below is an example of a settings.json
file with the values filled in.
{"user_token":"YourUserTokenXxxxyyyy","project_name":"Demo","device_name":"","device_group":"","software_version":"","device_token":""}
(Optional) If you leave the values of <device_name>
and <device_group>
blank, by default the devices will register with the generated name "New Device" and group "Production". However, you could set the value of <device_name>
to “$HOSTNAME”
or to some other variable. Then the device name that appears in the web UI will be the host name of each device (or a different name depending on the variable you use for the <device_name>
value).
Save the file.
Copy the following files and folders to your OS (i.e., Yocto) file system:
/connect/ folder
to /etc/
connect.service
file to /etc/systemd/system/.
connect.service
file to /etc/systemd/system/multi-user.target.wants/
Duplicate the OS image and burn it on your SD cards or eMMC flashes.
Boot the new devices that have the duplicated image. Connect Agent will automatically recognize that it is running on new hardware and will register the device as a new device.
The new devices now appear in the Web UI on the Devices page. You can view them there and edit any of the details as necessary. To change the device names and groups automatically, complete the procedure in .
Learn a simple way to deploy software updates to your fleet by creating .