You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Or visit https://github.com/mikefarah/yq/releases for other platforms
25
+
```
26
+
16
27
## Downloading the source
17
28
18
29
```bash
@@ -22,18 +33,197 @@ cd kubeedge
22
33
23
34
## Compiling kubeedge
24
35
36
+
Build all KubeEdge binaries:
37
+
25
38
```bash
26
39
make
27
40
```
28
41
42
+
Build specific components using the `WHAT` parameter. Available binaries include: `cloudcore`, `admission`, `edgecore`, `edgesite-agent`, `edgesite-server`, `keadm`, `csidriver`, `iptablesmanager`, `edgemark`, `controllermanager`, and `conformance`.
43
+
44
+
```bash
45
+
# Build only cloudcore
46
+
make all WHAT=cloudcore
47
+
48
+
# Build only edgecore
49
+
make all WHAT=edgecore
50
+
```
51
+
52
+
Build without container (uses local environment):
53
+
54
+
```bash
55
+
make all BUILD_WITH_CONTAINER=false
56
+
```
57
+
29
58
Note: Currently keadm is only supported on Ubuntu and CentOS, so the binaries are built with `GOOS=linux` and placed in `_output/local/bin`.
30
59
60
+
### Cross-platform builds
61
+
62
+
Build binaries for different architectures:
63
+
64
+
```bash
65
+
# Cross-build for ARM architecture (ARMv8 by default)
66
+
make crossbuild
67
+
68
+
# Cross-build specific components
69
+
make crossbuild WHAT=edgecore
70
+
71
+
# Cross-build for ARMv7
72
+
make crossbuild ARM_VERSION=GOARM7
73
+
```
74
+
75
+
### Small builds
76
+
77
+
Create optimized small builds (useful for edge devices with limited resources):
78
+
79
+
```bash
80
+
# Small build for edgecore
81
+
make smallbuild WHAT=edgecore
82
+
83
+
# Small build without container
84
+
make smallbuild WHAT=edgecore BUILD_WITH_CONTAINER=false
85
+
```
86
+
87
+
### Clean build artifacts
88
+
89
+
Remove generated binaries and build artifacts:
90
+
91
+
```bash
92
+
make clean
93
+
```
94
+
31
95
## Running tests
32
96
97
+
### Lint
98
+
99
+
Run linting checks on the codebase:
100
+
101
+
```bash
102
+
make lint
103
+
```
104
+
105
+
You can lint specific components using the `WHAT` parameter:
106
+
107
+
```bash
108
+
# Lint only cloud components
109
+
make lint WHAT=cloud
110
+
111
+
# Lint only edge components
112
+
make lint WHAT=edge
113
+
```
114
+
115
+
### Verify code quality
116
+
117
+
Runs verification checks including golang version, vendor dependencies, code generation, vendor licenses, and CRDs:
118
+
33
119
```bash
34
120
make verify
121
+
```
122
+
123
+
This target runs the following checks:
124
+
-`verify-golang` - Verifies Go version and formatting
125
+
-`verify-vendor` - Ensures vendor dependencies are up to date
126
+
-`verify-codegen` - Validates generated code is current
0 commit comments