fleet/docs/Contributing/Run-Locally-Built-Fleetd.md
Eric 1b25187453
Docs: add syntax highlighting keywords to code blocks (#13963)
Closes: #13691

Changes: 
- Added keywords for syntax highlighting to code blocks in documentation
Markdown files.

---------

Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
2023-09-22 16:57:40 -05:00

2.1 KiB

Run locally built Fleetd

(MacOS)

Run fleet server (and the released Fleetd).

In order to run a local agent (Fleetd + osquery) the first step is to run the Fleet server locally. Follow this document which will run it together with the released agent. https://fleetdm.com/docs/contributing/building-fleet

Modify the Fleetd code as needed

Build and run locally.

In order to use a local version we need to create a local TUF service that will point the installer to take the local Fleetd (instead of the official one). More details on TUF testing is here: https://github.com/fleetdm/fleet/tree/main/tools/tuf/test

MacOS - Prepare a script file with this content. Call it my_build.sh:

SYSTEMS="macos" \
PKG_FLEET_URL=https://localhost:8080 \
PKG_TUF_URL=http://localhost:8081 \
GENERATE_PKG=1 \
ENROLL_SECRET=<REPLACE WITH REAL SECRET KEY> \
FLEET_DESKTOP=1 \
USE_FLEET_SERVER_CERTIFICATE=1 \
./tools/tuf/test/main.sh

Get a real secret key

Go to your local Fleet desktop: https://localhost:8080/hosts/manage/?order_key=display_name&order_direction=asc Get the secret key by clicking the Manage Enroll Secret

Put the real key here: ENROLL_SECRET=<REPLACE WITH REAL SECRET KEY>

Remove previous local TUF

If you already have a local TUF running, remove it.

rm -rf test_tuf

Run the local build

chmod +x my_build.sh ./my_build.sh

What your build does now

  • Download OSQ from github
  • Build Fleetd from local src code
  • Build fleet desktop from local src code
  • Push these three things to the local TUF repository
  • Create a local file server to serve the local TUF repository
  • Run fleetctl package but instead of the official TUF, it fetches the target from the local TUF
  • → the end result is the installer located in /Your-Repo-Folder/fleet/fleet-osquery.pkg

Install it

Double-click this pkg file and install the local Fleetd.

Run osquery directly from the Orbit shell

sudo orbit shell