TOOLS/ — generators + scripts + config + ARCHITECTURE.md ├── yaml-generator/ (code) ├── resource-generator/ (code) ├── docs-generator/ (code) ├── scripts/ (← devops/*.sh) ├── config/ (← devops/profiles/ + devops/config/) │ ├── test/ profile.env, services_list.txt, operation_timeouts.json │ ├── prod/ │ └── dev/ └── ARCHITECTURE.md (← devops/ARCHITECTURE.md) generated/ — pipeline output only (gitignored) ├── test/resources_yaml/, go/, docs/, provider_build/ ├── prod/ └── dev/ provider/ — code only, no generated files resources_yaml/ — DELETED (generated) internal/resources_gen/ — DELETED (generated) devops/ — removed (replaced by TOOLS/scripts + TOOLS/config + generated/) Generators now fail if NUBES_*_DIR not set (no defaults to provider/). Provider requires pipeline to populate resources_gen/ before build.
185 lines
6.3 KiB
YAML
185 lines
6.3 KiB
YAML
name: nextcloud
|
|
service_id: 50
|
|
service_display_name: Nextcloud
|
|
service_short_name: nextcloud
|
|
service_man: 'Ресурсная платформа: k8s. Автоматизация: helm chart'
|
|
lifecycle:
|
|
suspend_on_destroy_default: true
|
|
adopt_existing_on_create_default: false
|
|
outputs:
|
|
params:
|
|
- code: state_params
|
|
type: map
|
|
- code: state_out
|
|
type: map
|
|
- code: state_params_flat
|
|
type: map
|
|
- code: state_out_flat
|
|
type: map
|
|
- code: vault_secrets
|
|
type: map
|
|
sensitive: true
|
|
- code: vault_url
|
|
type: string
|
|
- code: vault_user_path
|
|
type: string
|
|
- code: vault_fields
|
|
type: list
|
|
operations:
|
|
- name: create
|
|
id: 16
|
|
kind: instance
|
|
action: create
|
|
man: DEV-Ветка сборки Nextcloud
|
|
params:
|
|
- id: 21
|
|
code: domain
|
|
data_type: string
|
|
required: true
|
|
default: web01
|
|
regex: ^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$
|
|
descr: Если будет указан FQDN, то происходят проверки DNS на валидность А-записи, или будет добавлено в зону resourceRealm
|
|
man: Наименование домена. Если будет указан FQDN, то происходят проверки DNS. Если указан поддомен, то будет добавлен в зону services.ngcloud.ru<br/>Можно указать клиентскую DNS-Запись. Важно, чтобы запись смотрела на Ingress кластера
|
|
sort: 10
|
|
- id: 99
|
|
code: resourceCPU
|
|
data_type: integer > 0
|
|
required: true
|
|
default: "1000"
|
|
maxvalue: 4000
|
|
minvalue: 100
|
|
descr: Квота ядра пода (Указывается в mili). 1 ядро = 1000 Mili
|
|
man: Квота ядра пода (Указывается в mili). 1 ядро = 1000 Mili
|
|
sort: 30
|
|
is_modifiable: true
|
|
- id: 100
|
|
code: resourceMemory
|
|
data_type: integer > 0
|
|
required: true
|
|
default: "1024"
|
|
maxvalue: 8192
|
|
minvalue: 1024
|
|
descr: Квота памяти пода (Указывается в Megabytes)
|
|
man: Квота памяти пода (Указывается в Megabytes)
|
|
sort: 40
|
|
is_modifiable: true
|
|
- id: 101
|
|
code: resourceDisk
|
|
data_type: integer > 0
|
|
required: true
|
|
default: "2"
|
|
maxvalue: 999
|
|
minvalue: 2
|
|
descr: Квота диска (Указывается в GIGAbytes)<br/>Диск не может быть меньше 2G (!)
|
|
man: Квота диска (Указывается в GIGAbytes)
|
|
sort: 50
|
|
is_modifiable: true
|
|
- id: 192
|
|
code: documentServer
|
|
data_type: string
|
|
required: true
|
|
default: collabora
|
|
value_list:
|
|
- collabora
|
|
descr: Выбор сервера документов (onlyoffice)/(collabora). onlyoffice пока не доступен<br/>Размер пода collabora:<br/>1.8 ядра. 2Gi ОЗУ
|
|
man: Выбор сервера документов (onlyoffice)/(collabora). onlyoffice пока не доступен
|
|
sort: 100
|
|
- id: 470
|
|
code: resourceInstances
|
|
data_type: integer > 0
|
|
required: true
|
|
default: "1"
|
|
value_list:
|
|
- "1"
|
|
maxvalue: 7
|
|
minvalue: 1
|
|
descr: Количество узлов<br/>Не может пока быть больше одного, так как нужны SC под RWMany
|
|
sort: 60
|
|
is_modifiable: true
|
|
- id: 564
|
|
code: psqlUid
|
|
data_type: uuid
|
|
required: true
|
|
ref_svc_id: 90
|
|
sort: 6
|
|
- id: 569
|
|
code: appVersion
|
|
required: true
|
|
default: 32.0.1
|
|
value_list:
|
|
- 32.0.1
|
|
sort: 20
|
|
is_modifiable: true
|
|
- id: 570
|
|
code: redisUid
|
|
data_type: uuid
|
|
required: true
|
|
ref_svc_id: 91
|
|
sort: 7
|
|
- name: delete
|
|
id: 17
|
|
kind: instance
|
|
action: delete
|
|
man: DEV-Ветка удаления Nextcloud
|
|
params: []
|
|
- name: modify
|
|
id: 67
|
|
kind: instance
|
|
action: modify
|
|
params:
|
|
- id: 178
|
|
code: resourceCPU
|
|
data_type: integer > 0
|
|
required: false
|
|
maxvalue: 4000
|
|
minvalue: 100
|
|
descr: Квота ядра пода (Указывается в mili)
|
|
man: Квота ядра пода (Указывается в mili)
|
|
- id: 179
|
|
code: resourceMemory
|
|
data_type: integer > 0
|
|
required: false
|
|
maxvalue: 8192
|
|
minvalue: 128
|
|
descr: Квота памяти пода (Указывается в Megabytes)
|
|
man: Квота памяти пода (Указывается в Megabytes)
|
|
- id: 180
|
|
code: resourceDisk
|
|
data_type: integer > 0
|
|
required: false
|
|
maxvalue: 999
|
|
minvalue: 1
|
|
descr: Квота диска (Указывается в GIGAbytes)
|
|
man: Квота диска (Указывается в GIGAbytes)
|
|
- id: 547
|
|
code: resourceInstances
|
|
data_type: integer > 0
|
|
required: false
|
|
value_list:
|
|
- "1"
|
|
maxvalue: 7
|
|
minvalue: 1
|
|
descr: Количество узлов.<br/>Не может пока быть больше одного, так как нужны SC под RWMany
|
|
- id: 571
|
|
code: appVersion
|
|
data_type: string
|
|
required: true
|
|
value_list:
|
|
- 32.0.1
|
|
descr: Нельзя обновляться сразу через несколько версий сразу
|
|
- name: restart
|
|
id: 66
|
|
kind: action
|
|
action: restart
|
|
params: []
|
|
- name: resume
|
|
id: 129
|
|
kind: instance
|
|
action: resume
|
|
params: []
|
|
- name: suspend
|
|
id: 128
|
|
kind: instance
|
|
action: suspend
|
|
params: []
|