aboutsummaryrefslogtreecommitdiffstats
path: root/docs/ATTIC/3_Developer_Guides/4_X(cross)_Development_System:_User's_Guide/4_X(cross)_Development_System:_ Internals /3.4.4.4_xds-cli/3.4.4.4.4_Debug.md
blob: 311efaf8f54852b2a27c257e9503add5b79e079a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<!-- WARNING: This file is generated by fetch_docs.js using /home/boron/Documents/AGL/docs-webtemplate/site/_data/tocs/devguides/master/xds-docs-guides-devguides-book.yml -->

# Debugging

## XDS cli architecture

This tool is written in *Go*.

```bash
|
+-- bin/                # where xds-cli binary will be built
|
+-- cmd-XXX.go          # GO sources of each sub-commands
|
+-- conf.d/             # Linux configuration and startup files (systemd user service)
|
+-- glide.yaml          # Go package dependency file
|
+-- LICENSE             # XDS cli license
|
+-- main.go             # main entry point (Go)
|
+-- Makefile            # makefile including
|
+-- README.md           # readme
|
+-- scripts/            # hold various scripts used for installation
|
+-- vendor/             # temporary directory to hold Go dependencies packages
```

## Debug

Install first [Visual Studio Code](https://code.visualstudio.com/) and
[Go plugin](https://marketplace.visualstudio.com/items?itemName=lukehoban.Go)
(`ext install lukehoban.Go`)

Visual Studio Code launcher settings can be found into `.vscode/launch.json`.

Please follow instructions of xds-agent [debugging chapter](../2_xds-agent/4_debug.html#debug-xds-agent-go-code),
knowing that you execute these same instructions in `xds-cli` repo, in other words
by replacing *xds-agent* references by *xds-cli*.