Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
134 changes: 2 additions & 132 deletions .github/workflows/deploy-prod.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,136 +7,6 @@ on:
types:
- closed

# Cancel in-progress jobs for the same tag/branch.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: false

permissions:
contents: read
id-token: write

jobs:
deploy:
runs-on: "regular"
if: >
github.event.pull_request.merged == true &&
github.event.pull_request.base.ref == 'main' &&
startsWith(github.repository, 'deckhouse/')
steps:
- name: Checkout code
uses: actions/checkout@v6
with:
ref: ${{ github.event.pull_request.merge_commit_sha || github.sha }}
submodules: recursive
fetch-depth: 0

- name: Set environment
id: env
run: |
echo "env=production" >> $GITHUB_OUTPUT

- name: Import secrets
id: secrets
uses: hashicorp/vault-action@v3
with:
url: https://seguro.flant.com
path: github
role: deckhouse-web-products
method: jwt
jwtGithubAudience: github-access-aud
secrets: |
projects/data/6db2f1ee-9b6f-4f4f-8381-2fb43060478a/github/registry_host DECKHOUSE_REGISTRY_HOST | DECKHOUSE_REGISTRY_HOST ;
projects/data/6db2f1ee-9b6f-4f4f-8381-2fb43060478a/github/registry_host DECKHOUSE_DEV_REGISTRY_HOST | DECKHOUSE_DEV_REGISTRY_HOST ;
projects/data/101ceaca-97cd-462f-aed5-070d9b9de175/dev-registry/writetoken login | DECKHOUSE_DEV_REGISTRY_USER ;
projects/data/101ceaca-97cd-462f-aed5-070d9b9de175/dev-registry/writetoken password | DECKHOUSE_DEV_REGISTRY_PASSWORD ;
projects/data/101ceaca-97cd-462f-aed5-070d9b9de175/registry-write/demotoken login | DECKHOUSE_REGISTRY_USER ;
projects/data/101ceaca-97cd-462f-aed5-070d9b9de175/registry-write/demotoken password | DECKHOUSE_REGISTRY_PASSWORD ;
projects/data/6db2f1ee-9b6f-4f4f-8381-2fb43060478a/github/registry_host DECKHOUSE_REGISTRY_READ_HOST | DECKHOUSE_REGISTRY_READ_HOST ;
projects/data/6db2f1ee-9b6f-4f4f-8381-2fb43060478a/github/registry_read_token login | DECKHOUSE_REGISTRY_READ_USER ;
projects/data/6db2f1ee-9b6f-4f4f-8381-2fb43060478a/github/registry_read_token password | DECKHOUSE_REGISTRY_READ_PASSWORD ;
projects/data/6db2f1ee-9b6f-4f4f-8381-2fb43060478a/github/documentation_deploy_secret KUBECONFIG_BASE64_PROD_25 | KUBECONFIG_BASE64_PROD ;

- name: Check dev registry credentials
id: check_dev_registry
env:
HOST: ${{steps.secrets.outputs.DECKHOUSE_DEV_REGISTRY_HOST}}
run: |
if [[ -n $HOST ]]; then
echo "has_credentials=true" >> $GITHUB_OUTPUT
echo "web_registry_path=${{steps.secrets.outputs.DECKHOUSE_DEV_REGISTRY_HOST }}/deckhouse/site" >> $GITHUB_OUTPUT
fi

- name: Login to dev registry
uses: docker/login-action@v3
if: ${{ steps.check_dev_registry.outputs.has_credentials == 'true' }}
with:
registry: ${{ steps.secrets.outputs.DECKHOUSE_DEV_REGISTRY_HOST }}
username: ${{ steps.secrets.outputs.DECKHOUSE_DEV_REGISTRY_USER }}
password: ${{ steps.secrets.outputs.DECKHOUSE_DEV_REGISTRY_PASSWORD }}
logout: false

- name: Check rw registry credentials
id: check_rw_registry
env:
HOST: ${{steps.secrets.outputs.DECKHOUSE_REGISTRY_HOST}}
run: |
if [[ -n $HOST ]]; then
echo "has_credentials=true" >> $GITHUB_OUTPUT
echo "web_registry_path=${{steps.secrets.outputs.DECKHOUSE_REGISTRY_HOST }}/deckhouse/site" >> $GITHUB_OUTPUT
fi

- name: Login to rw registry
uses: docker/login-action@v3
if: ${{ steps.check_rw_registry.outputs.has_credentials == 'true' }}
with:
registry: ${{ steps.secrets.outputs.DECKHOUSE_REGISTRY_HOST }}
username: ${{ steps.secrets.outputs.DECKHOUSE_REGISTRY_USER }}
password: ${{ steps.secrets.outputs.DECKHOUSE_REGISTRY_PASSWORD }}
logout: false

- name: Check readonly registry credentials
id: check_readonly_registry
env:
HOST: ${{ steps.secrets.outputs.DECKHOUSE_REGISTRY_READ_HOST }}
run: |
if [[ -n $HOST ]]; then
echo "has_credentials=true" >> $GITHUB_OUTPUT
echo "web_registry_path=${{ steps.secrets.outputs.DECKHOUSE_REGISTRY_READ_HOST }}/deckhouse/site" >> $GITHUB_OUTPUT
fi

- name: Login to readonly registry
uses: docker/login-action@v3
if: ${{ steps.check_readonly_registry.outputs.has_credentials == 'true' }}
with:
registry: ${{ steps.secrets.outputs.DECKHOUSE_REGISTRY_READ_HOST }}
username: ${{ steps.secrets.outputs.DECKHOUSE_REGISTRY_READ_USER }}
password: ${{ steps.secrets.outputs.DECKHOUSE_REGISTRY_READ_PASSWORD }}
logout: false

- name: Build
id: build
uses: werf/actions/build@v2
with:
channel: beta
kube-config-base64-data: ${{ steps.secrets.outputs.KUBECONFIG_BASE64_PROD }}
env: ${{ steps.env.outputs.env }}
env:
WERF_VIRTUAL_MERGE: 0
WERF_REPO: ${{ steps.check_rw_registry.outputs.web_registry_path }}
WERF_SECONDARY_REPO: ${{ steps.check_dev_registry.outputs.web_registry_path }}
WERF_SET_URL: "global.url=deckhouse.io"
WERF_SET_URL_RU: "global.url_ru=deckhouse.ru"

- name: Deploy to ${{ steps.env.outputs.env }}
id: deploy
uses: werf/actions/converge@v2
with:
channel: beta
kube-config-base64-data: ${{ steps.secrets.outputs.KUBECONFIG_BASE64_PROD }}
env: ${{ steps.env.outputs.env }}
env:
WERF_VIRTUAL_MERGE: 0
WERF_REPO: ${{ steps.check_readonly_registry.outputs.web_registry_path }}
WERF_SET_URL: "global.url=deckhouse.io"
WERF_SET_URL_RU: "global.url_ru=deckhouse.ru"
call-reusable:
uses: deckhouse/hugo-web-product-module/.github/workflows/deploy-prod.yaml@main
18 changes: 18 additions & 0 deletions content/documentation/admin/external-services.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,24 @@ Private-Token: <ваш-gitlab-token>

Подробнее о том, как получить GitLab token можно узнать в [официальной документации](https://docs.gitlab.com/api/rest/authentication/).

### GitHub

**Тип авторизации:** Personal Access Token.

**Заголовки:**

| Заголовок | Формат значения |
|-----------------|--------------------|
| `Authorization` | `Bearer <токен>` |

**Пример:**

```sh
Authorization: Bearer <ваш-github-token>
```

Токен создаётся в настройках GitHub: «Settings» → «Developer settings» → «Personal access tokens».

### Harbor

**Тип авторизации:** Basic Authentication.
Expand Down
38 changes: 38 additions & 0 deletions content/documentation/admin/widgets/types.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,44 @@ title: Типы виджетов
Для выполнения действий с PR требуются соответствующие права доступа в репозитории Bitbucket.
{{< /alert >}}

## GitHub. Pull Requests

Виджет отображает Pull Requests (PR) репозитория на GitHub и позволяет просматривать изменения, создавать, сливать и закрывать PR.

### Авторизация

Конфигурация авторизации описана в разделе [Внешние сервисы](../external-services/#github).
В настройках внешнего сервиса или в конфигурации виджета в поле **URL** необходимо указать `https://api.github.com`.

### Конфигурация

| Название | Обязательность | Описание | Значение по умолчанию |
|----------------------|----------------|------------------------------------------------------------------------------------------------------------------------------------------|-----------------------|
| Владелец репозитория | **да** | Владелец репозитория (организация или пользователь). Пример: для `https://github.com/example/my-repo` укажите `example`. | — |
| Репозиторий | **да** | Название репозитория без `.git`. Пример: для `https://github.com/example/my-repo` укажите `my-repo`. | — |

### Статус

В настройках запроса виджета можно фильтровать PR по статусу:

- **Открыт** — только открытые PR (не черновики).
- **Черновик** — только черновики.
- **Закрыт** — только закрытые PR.
- **Все** — любые PR.

По умолчанию отображаются открытые PR. В таблице отображаются: номер, название, описание, статус, метки, автор, дата создания, дата обновления; для каждого PR доступны действия через меню.

### Действия

- **Изменения** — просмотр списка изменённых файлов и диффа по каждому файлу.
- **Слить** — слияние открытого PR (доступно только для открытых PR, не черновиков).
- **Закрыть** — закрытие PR без слияния.
- **Создать PR** — создание нового Pull Request. В диалоге указываются название, исходная ветка, целевая ветка и описание.

{{< alert level="info" >}}
Для выполнения действий с PR требуются соответствующие права доступа в репозитории GitHub.
{{< /alert >}}

## CodeScoring. Зависимости

Виджет позволяет вывести таблицу с зависимостями продукта на основе информации из CodeScoring с указанием названия зависимости, версии, лицензии, количество уязвимостей и другой информацией для каждой зависимости.
Expand Down
6 changes: 6 additions & 0 deletions content/documentation/release-notes/v1.4.0.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,12 @@ CREATE EXTENSION IF NOT EXISTS pg_trgm;

- **Глобальный поиск** — добавлен поиск по сущностям платформы ([подробнее](../../user/interface/#глобальный-поиск)).

### Виджеты

Добавлены новые виджеты:

- **GitHub. Pull Requests** — для просмотра и управления Pull Requests в GitHub ([подробнее](../../admin/widgets/types/#github-pull-requests)).

### Действия

- **Wait** — добавлено действие для паузы на заданное время ([подробнее](../../admin/actions/types/#wait)).
Expand Down
Loading