Skip to content

Commit 1e17a3a

Browse files
committed
[uk] Plugins - developer/tutorial-cli-plugin.mdx
Signed-off-by: Andrii Holovin <[email protected]>
1 parent 4ad1415 commit 1e17a3a

File tree

1 file changed

+139
-0
lines changed

1 file changed

+139
-0
lines changed
Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
---
2+
title: "Посібник: Створення втулків CLI"
3+
sidebar_label: Створення втулків CLI
4+
---
5+
6+
import GetVersion from "@site/src/components/GetVersion";
7+
import CodeBlock from "@theme/CodeBlock";
8+
9+
Створіть команду `helm system-info`, яка виводить інформацію про систему.
10+
11+
## Subprocess Runtime
12+
13+
Почнемо з створення втулка CLI з середовищем виконання Subprocess.
14+
15+
### Передумови {#prerequisites}
16+
17+
1. Встановіть останню версію Helm 4: **<GetVersion majorVersion="4" label={false} link={true} />**
18+
2. У терміналі створіть аліас `helm` для завантаженої версії. Команда `helm version --short` повинна показати правильну версію Helm у цьому терміналі.
19+
20+
### 1. Створіть теку для втулка {#1-create-plugin-directory}
21+
22+
Ви можете створити її в будь-якому місці вашої файлової системи. Наприклад:
23+
24+
```bash
25+
mkdir -p $HOME/code/helm/plugins/system-info
26+
cd $HOME/code/helm/plugins/system-info
27+
```
28+
29+
### 2. Створіть маніфест втулка {#2-create-plugin-manifest}
30+
31+
```yaml title="plugin.yaml" showLineNumbers
32+
apiVersion: v1
33+
type: cli/v1
34+
name: "system-info"
35+
version: "0.1.0"
36+
runtime: subprocess
37+
config:
38+
usage: system-info
39+
shortHelp: Показує системну інформацію та інформацію Helm
40+
longHelp: Показує інформацію про ОС, версію Helm та деталі середовища
41+
runtimeConfig:
42+
platformCommand:
43+
- command: ${HELM_PLUGIN_DIR}/system-info.sh
44+
```
45+
46+
### 3. Створіть скрипт {#3-create-script}
47+
48+
```bash title="system-info.sh" showLineNumbers
49+
#!/bin/bash
50+
51+
echo "=== System Information ==="
52+
echo "OS: $(uname -s)"
53+
echo "Architecture: $(uname -m)"
54+
55+
echo ""
56+
echo "=== Helm Information ==="
57+
echo "Plugin Dir: $HELM_PLUGIN_DIR"
58+
echo "Arguments: $*"
59+
60+
echo ""
61+
echo "System info complete!"
62+
```
63+
64+
Зробіть його виконуваним:
65+
66+
```bash
67+
chmod +x system-info.sh
68+
```
69+
70+
### 4. Встановлення в режимі розробки та тестування {#4-install-in-dev-mode-and-test}
71+
72+
Встановлення втулка з вашої файлової системи відбувається в локальному режимі розробки. Це дозволяє обійти перевірку або підтвердження походження:
73+
74+
```bash
75+
% helm plugin install $HOME/code/helm/plugins/system-info
76+
Installing plugin from local directory (development mode)
77+
Installed plugin: system-info
78+
```
79+
80+
Встановлення в локальному режимі розробки створює символічне посилання з вашого теки джерел до теки втулків, тому ви можете продовжувати розробку в бажаному місці. Ви можете побачити символічне посилання, переглянувши розташування теки за допомогою внутрішньої змінної середовища HELM_PLUGINS:
81+
82+
```bash
83+
% ls -lah $(helm env HELM_PLUGINS)
84+
total 0
85+
drwxr-xr-x@ 3 r6by staff 96B Nov 10 02:18 .
86+
drwxr-xr-x@ 3 r6by staff 96B Jan 21 2025 ..
87+
lrwxr-xr-x 1 r6by staff 41B Nov 10 02:18 system-info -> /Users/r6by/code/helm/plugins/system-info
88+
```
89+
90+
Ви можете переглянути детальну інформацію про втулок у списку встановлених втулків `helm plugin list`:
91+
92+
```bash
93+
% helm plugin list
94+
NAME VERSION TYPE APIVERSION PROVENANCE SOURCE
95+
system-info 0.1.0 cli/v1 v1 local dev unknown
96+
```
97+
98+
Тепер ви також можете побачити свій втулок у списку доступних команд за допомогою команди `helm help` і переглянути власне повідомлення довідки, яке ви визначили у файлі `plugin.yaml`:
99+
100+
```bash
101+
% helm help | grep system-info
102+
system-info Показує системну інформацію та інформацію Helm
103+
104+
% helm help system-info
105+
Показує інформацію про ОС, версію Helm та деталі середовища
106+
107+
Usage:
108+
helm system-info [flags]
109+
```
110+
111+
Спробуємо запустити команду CLI:
112+
113+
```bash
114+
% helm system-info
115+
=== System Information ===
116+
OS: Darwin
117+
Architecture: arm64
118+
119+
=== Helm Information ===
120+
Plugin Dir: /Users/r6by/Library/helm/plugins/system-info
121+
Arguments:
122+
123+
System info complete!
124+
```
125+
126+
Що ви створили: втулок CLI з використанням середовища виконання Subprocess!
127+
128+
Тепер давайте зробимо це ще раз, але цього разу з використанням середовища виконання Wasm…
129+
130+
## Wasm Runtime
131+
132+
### Передумови {#prerequisites-1}
133+
134+
- Передумови з [Subprocess Runtime](#subprocess-runtime)
135+
- Встановлений Go 1.25
136+
137+
:::warning
138+
To-do: додати цей розділ
139+
:::

0 commit comments

Comments
 (0)