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
**Solution:** Either add the corresponding chart to your configuration or remove the unused HelmChart manifest. Warnings are informational and won't cause linting to fail.
300
300
301
-
## Embedded Cluster Configuration
301
+
## Linter-Specific Configuration
302
302
303
-
The embedded-cluster linter validates Embedded Cluster configuration files. Embedded Cluster is Replicated's solution for packaging Kubernetes and your application together as a single appliance-style installer.
303
+
### Helm Linter
304
304
305
-
### What It Validates
305
+
The Helm linter validates Helm chart structure, templates, and values files using the official `helm lint` command.
306
306
307
-
The embedded-cluster linter validates:
308
-
- Configuration schema correctness
309
-
- Kubernetes version compatibility
310
-
- Extension configurations
311
-
- Network and storage settings
312
-
- High availability settings
313
-
- Custom branding configuration
307
+
**What it validates:**
308
+
- Chart.yaml metadata and format
309
+
- Template syntax and rendering
310
+
- Values file structure
311
+
- Required files and directories
312
+
- Kubernetes resource validity
314
313
315
-
### Platform Requirements
314
+
**Configuration:**
315
+
```yaml
316
+
repl-lint:
317
+
linters:
318
+
helm:
319
+
enabled: true
320
+
strict: false # Set to true to treat warnings as errors
321
+
tools:
322
+
helm: "latest" # Optional: pin to specific version (e.g., "3.14.4")
323
+
```
316
324
317
-
**Important:** The embedded-cluster linter binary is currently only available for **Linux AMD64**.
325
+
**Auto-discovery:** Automatically finds charts by locating `Chart.yaml` files in your project.
318
326
319
-
- ✅ **Linux (x86_64/amd64)**: Full support
320
-
- ❌ **macOS**: Not currently available
321
-
- ❌ **Windows**: Not currently available
322
-
- ❌ **ARM64**: Not currently available
327
+
---
323
328
324
-
If you're on an unsupported platform:
325
-
- The linter will fail gracefully with a clear error message
326
-
- Other linters (helm, preflight, support-bundle) will continue running
327
-
- Consider running in a Linux container or CI environment
329
+
### Support Bundle Linter
328
330
329
-
### Configuration
331
+
The Support Bundle linter validates support bundle collector specs for Replicated's troubleshooting framework.
330
332
331
-
Enable the embedded-cluster linter in your `.replicated` file:
333
+
**What it validates:**
334
+
- Collector spec syntax and structure
335
+
- Analyzer definitions
336
+
- Output redaction rules
337
+
- Kubernetes resource collectors
332
338
339
+
**Configuration:**
333
340
```yaml
334
341
repl-lint:
335
-
version: 1
336
342
linters:
337
-
embedded-cluster:
343
+
support-bundle:
338
344
enabled: true
339
-
strict: false # Set to true to treat warnings as errors
345
+
strict: false
340
346
tools:
341
-
embedded-cluster: "latest" # Optional: pin to specific version
347
+
support-bundle: "latest" # Optional: pin to specific version
342
348
```
343
349
344
-
### Auto-Discovery
350
+
**Auto-discovery:** Finds support bundle specs by locating files with `kind: SupportBundle` or `kind: Collector`.
345
351
346
-
When no `.replicated` config exists, the linter automatically discovers embedded-cluster configs by:
347
-
- Finding files with `kind: Config` and `apiVersion: embeddedcluster.replicated.com/v1beta1`
348
-
- Validating only 0 or 1 config exists (multiple configs are not supported)
352
+
---
349
353
350
-
### Multiple Config Validation
354
+
### Embedded Cluster Linter
351
355
352
-
**Only 0 or 1 embedded cluster config is allowed per project.**
356
+
The Embedded Cluster linter validates Embedded Cluster configuration files for Replicated's embedded Kubernetes installer solution.
353
357
354
-
If multiple configs are detected:
355
-
- Each config will show as failed with a clear error message
356
-
- Other linters (helm, preflight, support-bundle) continue running
357
-
- The linting command returns a non-zero exit code
358
+
**What it validates:**
359
+
- Configuration schema correctness
360
+
- Kubernetes version compatibility
361
+
- Extension configurations
362
+
- Network and storage settings
363
+
- High availability settings
358
364
359
-
### Example Configuration
365
+
**Important constraint:** Only 0 or 1 embedded cluster config is allowed per project.
**Solution:** Only one embedded cluster config is allowed per project. Remove duplicate configs or move them to separate projects.
414
+
**GVK filtering:** The linter distinguishes KOTS Config (`kots.io`) from Embedded Cluster Config (`embeddedcluster.replicated.com`) using Group-Version-Kind filtering. Both use `kind: Config` but belong to different API groups.
445
415
446
-
**Problem:** Validation errors about Kubernetes version
416
+
**Multiple configs error:** If multiple KOTS configs are found, each will show as failed with an actionable error message: "Remove duplicate configs or specify a single config file." Other linters continue running.
447
417
448
-
**Solution:** Ensure the `spec.version` field uses a supported Kubernetes version. Check the embedded-cluster documentation for supported versions.
0 commit comments