diff --git a/README.md b/README.md index acf3f4a0..f7458a6a 100644 --- a/README.md +++ b/README.md @@ -64,6 +64,7 @@ Not sure what these terms mean? The [glossary](docs/introduction/glossary.md) de **Host machine** (where you run `topo`): - [Docker](#install-a-container-engine) +- [Git](https://git-scm.com/downloads) - OpenSSH Client **Target machine** (the remote Arm system): diff --git a/e2e/health_test.go b/e2e/health_test.go index 682bd4dc..d9c8836f 100644 --- a/e2e/health_test.go +++ b/e2e/health_test.go @@ -34,6 +34,7 @@ func TestHealthCheck(t *testing.T) { require.NoError(t, err) assert.Contains(t, out, " ✓ OpenSSH (ssh)") + assert.Contains(t, out, " ✓ Git (git)") assert.Contains(t, out, " ✓ Container Engine (docker)") }) diff --git a/e2e/testdata/TestHealthCheckJson.golden b/e2e/testdata/TestHealthCheckJson.golden index a5b7f032..4e3634df 100644 --- a/e2e/testdata/TestHealthCheckJson.golden +++ b/e2e/testdata/TestHealthCheckJson.golden @@ -11,6 +11,11 @@ "status": "ok", "value": "ssh" }, + { + "name": "Git", + "status": "ok", + "value": "git" + }, { "name": "Container Engine", "status": "ok", diff --git a/internal/health/dependencies.go b/internal/health/dependencies.go index e268dea4..b0857a6a 100644 --- a/internal/health/dependencies.go +++ b/internal/health/dependencies.go @@ -81,6 +81,16 @@ var HostRequiredDependencies = []Dependency{ Label: "OpenSSH", Checks: []Check{BinaryExists{}, OpenSSHAvailable{}}, }, + { + Binary: "git", + Label: "Git", + Checks: []Check{BinaryExists{ + Severity: SeverityWarning, + Fix: &Fix{ + Description: "Install Git and ensure its git executable is on PATH. See https://git-scm.com/downloads", + }, + }}, + }, { Binary: "docker", Label: "Container Engine",