Skip to content

Commit 3523c3a

Browse files
committed
[uk] SDK - gosdk.mdx
Signed-off-by: Andrii Holovin <[email protected]>
1 parent 9d1df2a commit 3523c3a

File tree

1 file changed

+72
-0
lines changed
  • i18n/uk/docusaurus-plugin-content-docs/current/sdk

1 file changed

+72
-0
lines changed
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
---
2+
title: Вступ
3+
description: Представляємо SDK Helm Go
4+
sidebar_position: 1
5+
---
6+
7+
Helm's Go SDK дозволяє користувацькому програмному забезпеченню використовувати чарти Helm та функціонал Helm для управління розгортанням програмного забезпечення Kubernetes (насправді, Helm CLI є саме таким інструментом!).
8+
9+
Наразі SDK функціонально відокремлений від Helm CLI. SDK може використовуватися (і використовується) окремими інструментами. Проєкт Helm прагне забезпечити стабільність API для SDK. Застереження: SDK має деякі недоліки, що залишилися від початкової роботи з відокремлення CLI та SDK. Проєкт Helm прагне виправити це з часом.
10+
11+
Повну документацію API можна знайти за адресою [https://pkg.go.dev/helm.sh/helm/v4](https://pkg.go.dev/helm.sh/helm/v4).
12+
13+
Нижче наведено короткий огляд деяких основних типів пакетів та простий приклад. Більше прикладів та більш повнофункціональний 'driver'. можна знайти в розділі [Прикладах](/sdk/examples.mdx).
14+
15+
## Огляд пакунка main {#main-package-overview}
16+
17+
- [pkg/action](https://pkg.go.dev/helm.sh/helm/v4/pkg/action): Містить основного «клієнта» для виконання дій Helm. Це той самий пакунок, який використовує CLI під капотом. Якщо вам потрібно лише виконувати основні команди Helm з іншої програми Go, цей пакунок саме для вас
18+
- [pkg/chart](https://pkg.go.dev/helm.sh/helm/v4/pkg/chart), [pkg/chartutil](https://pkg.go.dev/helm.sh/helm/v4/pkg/chart/v2/util): методи та допоміжні засоби, що використовуються для завантаження та обробки чартів
19+
- [pkg/cli](https://pkg.go.dev/helm.sh/helm/v4/pkg/cli) та його підпакети: містять усі обробники для стандартних змінних середовища Helm, а його підпакети містять обробку файлів виводу та значень
20+
- [pkg/release](https://pkg.go.dev/helm.sh/helm/v4/pkg/release): Визначає об'єкт `Release` та статуси
21+
22+
Крім цих пакетів, існує ще багато інших, тож перегляньте документацію, щоб отримати додаткову інформацію!
23+
24+
### Simple example {#simple-example}
25+
26+
Це простий приклад виконання команди `helm list` за допомогою Go SDK. Більш повні приклади дивіться в розділі [Приклади](/sdk/examples.mdx).
27+
28+
```go
29+
package main
30+
31+
import (
32+
"log"
33+
"os"
34+
35+
"helm.sh/helm/v4/pkg/action"
36+
"helm.sh/helm/v4/pkg/cli"
37+
)
38+
39+
func main() {
40+
settings := cli.New()
41+
42+
actionConfig := new(action.Configuration)
43+
// Ви можете передати порожній рядок замість settings.Namespace(), щоб перелічити
44+
// всі простори імен
45+
if err := actionConfig.Init(settings.RESTClientGetter(), settings.Namespace(), os.Getenv("HELM_DRIVER"), log.Printf); err != nil {
46+
log.Printf("%+v", err)
47+
os.Exit(1)
48+
}
49+
50+
client := action.NewList(actionConfig)
51+
// Тільки список розгорнутих
52+
client.Deployed = true
53+
results, err := client.Run()
54+
if err != nil {
55+
log.Printf("%+v", err)
56+
os.Exit(1)
57+
}
58+
59+
for _, rel := range results {
60+
log.Printf("%+v", rel)
61+
}
62+
}
63+
64+
```
65+
66+
## Сумісність {#compatibility}
67+
68+
Helm SDK чітко дотримується гарантій зворотної сумісності Helm:
69+
70+
https://github.com/helm/community/blob/main/hips/hip-0004.md
71+
72+
Тобто, кардинальні зміни будуть вноситися тільки при випуску нової основної версії або для усунення проблеми безпеки.

0 commit comments

Comments
 (0)