Skip to content

Commit

Permalink
Merge pull request #5178 from werf/docs-rewrite-charts-doc
Browse files Browse the repository at this point in the history
doc(usage): move Charts distrubution to separate section
  • Loading branch information
ilya-lesikov committed Dec 19, 2022
2 parents 2016b9c + dd45d54 commit 3af476a
Show file tree
Hide file tree
Showing 5 changed files with 83 additions and 56 deletions.
6 changes: 6 additions & 0 deletions docs/_data/breadcrumbs.yml
Expand Up @@ -24,6 +24,9 @@ en:
/usage/deploy: &documentation-usage-deploy
title: Deploy
url: usage/deploy/intro.html
/usage/distribute: &documentation-usage-distribute
title: Distribute
url: usage/distribute/charts.html
/usage/cleanup: &documentation-usage-cleanup
title: Cleanup
url: usage/cleanup/cr_cleanup.html
Expand Down Expand Up @@ -86,6 +89,9 @@ ru:
/usage/deploy:
<<: *documentation-usage-deploy
title: Развертывание
/usage/distribute:
<<: *documentation-usage-distribute
title: Дистрибуция
/usage/cleanup:
<<: *documentation-usage-cleanup
title: Очистка
Expand Down
5 changes: 5 additions & 0 deletions docs/_data/sidebars/_documentation.yml
Expand Up @@ -304,6 +304,11 @@ entries:
- title: Бандлы
url: /usage/deploy/bundles.html

- title: Дистрибуция
f:
- title: Чарты
url: /usage/distribute/charts.html

- title: Очистка
f:
- title: Очистка container registry
Expand Down
66 changes: 10 additions & 56 deletions docs/pages_ru/usage/deploy/charts.md
Expand Up @@ -64,11 +64,18 @@ chartname/

### Основной чарт

При запуске команд вроде `werf converge` или `werf render` werf по умолчанию использует чарт, лежащий в директории `<корень Git-репозитория>/.helm`. Этот чарт называют основным чартом.
При запуске команд вроде `werf converge` или `werf render` werf по умолчанию использует чарт, лежащий в директории `<корень Git-репозитория>/.helm`. Этот чарт называется основным чартом. Директорию с основным чартом можно изменить директивой `deploy.helmChartDir` файла `werf.yaml`.

Директорию с основным чартом можно изменить директивой `deploy.helmChartDir` файла `werf.yaml`.
В основном чарте, в отличие от обычного чарта, может не быть файла `Chart.yaml`. В таком случае будет использоваться следующий `.helm/Chart.yaml` :

Если в основном чарте нет файла `Chart.yaml`, то werf использует имя проекта из `werf.yaml` в качестве имени чарта и версию чарта `1.0.0`.
```yaml
# .helm/Chart.yaml:
apiVersion: v2
name: <имя проекта werf>
version: 1.0.0
```

Если в `.helm/Chart.yaml` нужно изменить значение вышеупомянутых директив, либо добавить новые, то создайте файл `.helm/Chart.yaml` самостоятельно, добавив/переопределив интересующие директивы.

Если вы хотите использовать чарт из OCI/HTTP-репозитория вместо локального чарта или разворачивать несколько чартов сразу, то просто укажите интересующие вас чарты как зависимые для основного чарта. Используйте для этого директиву `dependencies` файла `Chart.yaml`.

Expand Down Expand Up @@ -311,56 +318,3 @@ dependencies:
4. Закоммитите обновлённые `Chart.yaml` и `Chart.lock` в Git.

Также рекомендуется добавить `.helm/charts/**.tgz` в `.gitignore`.

## Публикация

Рекомендуемый способ публикации чарта — публикация бандла (который по существу и является чартом) в OCI-репозиторий:

1. Разместите чарт в `.helm`;

2. Если ещё нет `werf.yaml`, то создайте его:

```yaml
# werf.yaml:
project: mychart
configVersion: 1
```

3. Опубликуйте содержимое `.helm` как чарт `example.org/charts/mychart:v1.0.0` в виде OCI-образа:

```shell
werf bundle publish --repo example.org/charts --tag v1.0.0
```

### Публикация нескольких чартов из одного Git-репозитория

Разместите `.helm` с содержимым чарта и соответствующий ему `werf.yaml` в отдельную директорию для каждого чарта:

```
chart1/
.helm/
werf.yaml
chart2/
.helm/
werf.yaml
```

Теперь опубликуйте каждый чарт по отдельности:

```shell
cd chart1
werf bundle publish --repo example.org/charts --tag v1.0.0

cd ../chart2
werf bundle publish --repo example.org/charts --tag v1.0.0
```

### .helmignore

Файл `.helmignore`, находящийся в корне чарта, может содержать фильтры по именам файлов, при соответствии которым файлы *не будут добавляться* в чарт при публикации. Формат правил такой же, как и в [.gitignore](https://git-scm.com/docs/gitignore), за исключением:

- `**` не поддерживается;

- `!` в начале строки не поддерживается;

- `.helmignore` не исключает сам себя по умолчанию.
5 changes: 5 additions & 0 deletions docs/pages_ru/usage/deploy/deployment.md
@@ -0,0 +1,5 @@
---
title: Развертывание
permalink: usage/deploy/deployment.html
published: false
---
57 changes: 57 additions & 0 deletions docs/pages_ru/usage/distribute/charts.md
@@ -0,0 +1,57 @@
---
title: Чарты
permalink: usage/distribute/charts.html
---

## Публикация чартов

Рекомендуемый способ публикации чарта — публикация бандла (который по существу и является чартом) в OCI-репозиторий:

1. Разместите чарт в `.helm`;

2. Если ещё нет `werf.yaml`, то создайте его:

```yaml
# werf.yaml:
project: mychart
configVersion: 1
```

3. Опубликуйте содержимое `.helm` как чарт `example.org/charts/mychart:v1.0.0` в виде OCI-образа:

```shell
werf bundle publish --repo example.org/charts --tag v1.0.0
```

### Публикация нескольких чартов из одного Git-репозитория

Разместите `.helm` с содержимым чарта и соответствующий ему `werf.yaml` в отдельную директорию для каждого чарта:

```
chart1/
.helm/
werf.yaml
chart2/
.helm/
werf.yaml
```

Теперь опубликуйте каждый чарт по отдельности:

```shell
cd chart1
werf bundle publish --repo example.org/charts --tag v1.0.0

cd ../chart2
werf bundle publish --repo example.org/charts --tag v1.0.0
```

### .helmignore

Файл `.helmignore`, находящийся в корне чарта, может содержать фильтры по именам файлов, при соответствии которым файлы *не будут добавляться* в чарт при публикации. Формат правил такой же, как и в [.gitignore](https://git-scm.com/docs/gitignore), за исключением:

- `**` не поддерживается;

- `!` в начале строки не поддерживается;

- `.helmignore` не исключает сам себя по умолчанию.

0 comments on commit 3af476a

Please sign in to comment.