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
Copy file name to clipboardExpand all lines: blog/2022-09-15-declarative-config-overview/index.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -167,7 +167,7 @@ Different from other languages of the same type in the community, KCL is a stati
167
167
168
168
The core features of KCL are its **modeling** and **constraint** capabilities, and the basic functions of KCL revolve around the two core features. In addition, KCL follows the user-centric configuration concept to design its basic functions, which can be understood from two aspects:
169
169
170
-
-**Domain model-centric configuration view**: With the rich features of KCL language and [KCL OpenAPI](https://kcl-lang.io/docs/tools/cli/openapi/) tools, we can directly integrate a wide range of well-designed models in the community into KCL (such as the K8s resource model). We can also design and implement our own KCL models or libraries according to different scenarios, forming a complete set of domain models for other configuration end users to use.
170
+
-**Domain model-centric configuration view**: With the rich features of KCL language and KCL OpenAPI tools, we can directly integrate a wide range of well-designed models in the community into KCL (such as the K8s resource model). We can also design and implement our own KCL models or libraries according to different scenarios, forming a complete set of domain models for other configuration end users to use.
171
171
-**End user-centric configuration view**: With KCL's code encapsulation, abstraction and reuse capabilities, the model architecture can be further abstracted and simplified (for example, the K8s resource model is abstracted into an application-centered server model) to **minimize the end user configuration input**, simplify the user's configuration interface, and facilitate manual or automatic API modification.
172
172
173
173
No matter what configuration view is centered on, for configuration code, there are requirements for configuration data constraints, such as type constraints, required/optional constraints on configuration attributes, range constraints, and immutability constraints. This is also one of the core issues KCL is committed to solving. KCL mainly contains the core features shown in Fig. 5.
@@ -214,7 +214,7 @@ Fig. 8: A K-V validation visualization product based on KCL.
214
214
215
215
### 2.2 Definition and Abstraction of Complex Configuration Model
216
216
217
-
As shown in Fig 9, with the help of the [KCL OpenAPI](https://kcl-lang.io/docs/tools/cli/openapi/) tool, we can directly integrate a wide range of well-designed models.
217
+
As shown in Fig 9, with the help of the KCL OpenAPI tool, we can directly integrate a wide range of well-designed models.
Copy file name to clipboardExpand all lines: blog/2023-04-14-kcl-0.4.6-release/index.md
+3-4
Original file line number
Diff line number
Diff line change
@@ -250,7 +250,6 @@ spec:
250
250
- containerPort: 80
251
251
```
252
252
253
-
- See [here](https://kcl-lang.io/docs/user_docs/guides/package-management/overview) for more information about the **kpm** tool.
254
253
- See [here](https://kcl-lang.io/docs/user_docs/guides/working-with-konfig/overview) for more information about the **konfig** model.
255
254
256
255
## Integrations
@@ -329,9 +328,9 @@ In the YAML configuration mentioned above, we only wrote one line of KCL code to
329
328
330
329
In addition, we have provided commonly used container and service configuration mutation and validation KCL models for Kustomize/Helm/KPT tools and will continue to improve them.
331
330
332
-
- See [here](https://kcl-lang.io/docs/user_docs/guides/working-with-k8s/kustomize_kcl_plugin) for more information about the Kustomize KCL plugin.
333
-
- See [here](https://kcl-lang.io/docs/user_docs/guides/working-with-k8s/helm_kcl_plugin) for more information about the Helm KCL Plugin.
334
-
- See [here](https://kcl-lang.io/docs/user_docs/guides/working-with-k8s/kpt_kcl_sdk) for more information about the KPTKCL Plugin.
331
+
- See [here](https://kcl-lang.io/docs/user_docs/guides/working-with-k8s/mutate-manifests/kubectl-kcl-plugin) for more information about the Kustomize KCL plugin.
332
+
- See [here](https://kcl-lang.io/docs/user_docs/guides/working-with-k8s/mutate-manifests/helm-kcl-plugin) for more information about the Helm KCL Plugin.
333
+
- See [here](https://kcl-lang.io/docs/user_docs/guides/working-with-k8s/mutate-manifests/kpt-kcl-sdk) for more information about the KPTKCL Plugin.
Copy file name to clipboardExpand all lines: blog/2023-06-29-k8s-sidecar-2/index.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -47,7 +47,7 @@ k8core.Pod {
47
47
}
48
48
```
49
49
50
-
Here, the `import` statement imports the `k8s/api/core/v1` package from the k8s package, and the `Pod` structure definition corresponds to the `Pod` model. The default values for apiVersion and kind have already been included, so we only need to add the `metadata.name` and `spec.containers` properties (KCL also provides syntax sugar for some multi-level nested properties). We can use the [kpm package management tool](https://kcl-lang.io/docs/user_docs/guides/package-management/installation/) to create a KCL program to define a Pod resource and execute the program to get the corresponding YAML:
50
+
Here, the `import` statement imports the `k8s/api/core/v1` package from the k8s package, and the `Pod` structure definition corresponds to the `Pod` model. The default values for apiVersion and kind have already been included, so we only need to add the `metadata.name` and `spec.containers` properties (KCL also provides syntax sugar for some multi-level nested properties). We can use the package management tool to create a KCL program to define a Pod resource and execute the program to get the corresponding YAML:
51
51
52
52
```shell
53
53
# 1. Initialize a kcl program package called hello.
Copy file name to clipboardExpand all lines: blog/2023-07-14-kcl-0.5.0-release/index.md
-2
Original file line number
Diff line number
Diff line change
@@ -303,8 +303,6 @@ The kpm tool supports pushing KCL packages through OCI Registry. The default OCI
303
303
304
304
You can browse the KCL package you need here. We currently provide the KCL package for k8s, which supports all versions of k8s from 1.14 to 1.27. Welcome to open [Issues](https://github.com/kcl-lang/kpm/issues) to co build KCL models.
305
305
306
-
See [here](https://kcl-lang.io/docs/user_docs/guides/package-management/overview) for more information about the **kpm** tool.
Copy file name to clipboardExpand all lines: blog/2023-08-31-helmfile-kcl-plugin/index.md
-2
Original file line number
Diff line number
Diff line change
@@ -109,8 +109,6 @@ spec:
109
109
110
110
Specific example codes can be found [here](https://github.com/kcl-lang/krm-kcl/tree/main/examples)
111
111
112
-
If you want to contribute more KCL code repositories, feel free to contact us and refer to the documentation for contribution: https://kcl-lang.io/zh-CN/docs/user_docs/guides/package-management/share_your_pkg/
113
-
114
112
## Conclusion
115
113
116
114
This blog provided a quick getting started guide to help you master the basics of the Helmfile KCL Plugin in just 5 minutes. Now, you can start using this powerful tool to simplify and optimize your Kubernetes application deployment process!
Copy file name to clipboardExpand all lines: blog/2023-09-06-biweekly-newsletter/index.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,7 @@ Thank you to all contributors for their outstanding work over the past two weeks
31
31
**📰 Official Website and Use Case Updates**
32
32
33
33
- KCL website adds v0.5.6 documentation version.
34
-
- Publishing KCL packages to docker.io or ghcr.io registries using Github Actions Example: [https://github.com/kcl-lang/kpm/blob/main/docs/push_by_github_action.md](https://github.com/kcl-lang/kpm/blob/main/docs/push_by_github_action.md)
34
+
- Publishing KCL packages to docker.io or ghcr.io registries using Github Actions Example.
-[16] GitOps using KCL: [https://kcl-lang.io/docs/user_docs/guides/gitops/gitops-quick-start](https://kcl-lang.io/docs/user_docs/guides/gitops/gitops-quick-start)
Copy file name to clipboardExpand all lines: blog/2023-11-08-biweekly-newsletter/index.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -57,7 +57,7 @@ For the model design phase, quick generation of document strings has also been a
57
57
58
58
### KCL Package Manager Updates
59
59
60
-
The package management tool has now interconnected the core workflow of KCL package creation, update, code review, and release. Based on this, over 120+ out-of-the-box KCL model packages have been added. Users can refer to the [Writing and Publishing Kubernetes KCL Code Packages guide](https://kcl-lang.io/docs/user_docs/guides/working-with-k8s/publish-modules/) to start using them immediately.
60
+
The package management tool has now interconnected the core workflow of KCL package creation, update, code review, and release. Based on this, over 120+ out-of-the-box KCL model packages have been added.
Copy file name to clipboardExpand all lines: docs/tools/Ide/intellij.md
+8-8
Original file line number
Diff line number
Diff line change
@@ -28,14 +28,14 @@ IntelliJ KCL LSP also can be downloaded from the plugin marketplace
28
28
29
29
Additionally, you need to install the [kcl-language-server](https://www.kcl-lang.io/docs/user_docs/getting-started/install#install-language-server) and verify that the `kcl-language-server` command is in your PATH. Here are the steps for different operating systems:
0 commit comments