Обновить extentions/README.md
This commit is contained in:
parent
a0f8fd2225
commit
e2073d784e
@ -333,6 +333,127 @@ ghcr.io/siderolabs/nonfree-kmod-nvidia-production:550.90.07-v1.8.2@sha256:86abd0
|
||||
* util-linux(util-linux-tools)
|
||||
- копирование tar-файла исходного кода с www.kernel.org с компиляций кода (configure, make)
|
||||
|
||||
## Предложения по разворачиванию расширений (extentions) в ALTLinux
|
||||
|
||||
В ALTlinux предлагается разворачивать ВСЕ расшипения из RPM-пакетов путем установки их в базовый образ `registry.altlinux.org/base/base` с последующим копированием бинарных файлов и файлов конфигурации в соответствующий каталог `/rootfs/` (эту часть можно извлечь из стандартного пакета `pkg.yaml`).
|
||||
В этом случае корректируется только часть `steps.install` файл `pkg.yaml` talos-"пакета" (с возможным удалением предыдущих шагов).
|
||||
Все отсальные файлы описания talos-пакета остаются неизменными.
|
||||
|
||||
Пример развлоачивания пакета `crun`.
|
||||
|
||||
- описание стандартного разворачивания
|
||||
```
|
||||
name: crun
|
||||
variant: scratch
|
||||
shell: /toolchain/bin/bash
|
||||
dependencies:
|
||||
- stage: base
|
||||
steps:
|
||||
- sources:
|
||||
# {{ if eq .ARCH "aarch64" }} This in fact is YAML comment, but Go templating instruction is evaluated by bldr
|
||||
- url: https://github.com/containers/crun/releases/download/{{ .CRUN_VERSION }}/crun-{{ .CRUN_VERSION }}-linux-arm64-disable-systemd
|
||||
destination: crun
|
||||
sha256: 44b06c0ab2cc79e4bc1274e5f51cb3dbdf450c4317795f37e8a0c48a3f1924c0
|
||||
sha512: 7a4fb10c7576fd1d4fae11331554d2d79e0d72be7a4466ef89046cc4eb364af44158fbae87287a12b4e675e11f708a5dd4eca46d3bf32b4d4dcaf8227f1cc962
|
||||
# {{ else }} This in fact is YAML comment, but Go templating instruction is evaluated by bldr
|
||||
- url: https://github.com/containers/crun/releases/download/{{ .CRUN_VERSION }}/crun-{{ .CRUN_VERSION }}-linux-amd64-disable-systemd
|
||||
destination: crun
|
||||
sha256: 549e0b55ac278cb4d50bfc03c75da8d7f05f6232a35b15a488e8b4bef7ba6e38
|
||||
sha512: fa0538c1acd2a1297f170db752fe7872480bd89fdd1a0c20f7ba9b389fc2f639836f71fb14de0d718e9a2651fbf7f3f0c6764b95956765e057ca69609c217848
|
||||
# {{ end }} This in fact is YAML comment, but Go templating instruction is evaluated by bldr
|
||||
prepare:
|
||||
- |
|
||||
sed -i 's#$VERSION#{{ .VERSION }}#' /pkg/manifest.yaml
|
||||
install:
|
||||
- |
|
||||
mkdir -p /rootfs/usr/local/bin
|
||||
cp -av crun /rootfs/usr/local/bin/crun
|
||||
chmod +x /rootfs/usr/local/bin/crun
|
||||
|
||||
- |
|
||||
mkdir -p /rootfs/etc/cri/conf.d
|
||||
cp /pkg/crun.part /rootfs/etc/cri/conf.d/crun.part
|
||||
test:
|
||||
- |
|
||||
mkdir -p /extensions-validator-rootfs
|
||||
cp -r /rootfs/ /extensions-validator-rootfs/rootfs
|
||||
cp /pkg/manifest.yaml /extensions-validator-rootfs/manifest.yaml
|
||||
/extensions-validator validate --rootfs=/extensions-validator-rootfs --pkg-name="${PKG_NAME}"
|
||||
|
||||
finalize:
|
||||
- from: /rootfs
|
||||
to: /rootfs
|
||||
- from: /pkg/manifest.yaml
|
||||
to: /
|
||||
```
|
||||
|
||||
- описание разворачивания в `ALTLinux`:
|
||||
```
|
||||
name: crun
|
||||
variant: scratch
|
||||
shell: /toolchain/bin/bash
|
||||
dependencies:
|
||||
- stage: base
|
||||
- image: "registry.altlinux.org/alt/alt"
|
||||
steps:
|
||||
- prepare:
|
||||
- |
|
||||
sed -i 's#$VERSION#{{ .VERSION }}#' /pkg/manifest.yaml
|
||||
install:
|
||||
- |
|
||||
apt-get update
|
||||
apt-get install -y crun
|
||||
|
||||
- |
|
||||
mkdir -p /rootfs/usr/local/bin
|
||||
cp -av /usr/bin/crun /rootfs/usr/local/bin/crun
|
||||
chmod +x /rootfs/usr/local/bin/crun
|
||||
|
||||
- |
|
||||
mkdir -p /rootfs/etc/cri/conf.d
|
||||
cp /pkg/crun.part /rootfs/etc/cri/conf.d/crun.part
|
||||
|
||||
finalize:
|
||||
- from: /rootfs
|
||||
to: /rootfs
|
||||
- from: /pkg/manifest.yaml
|
||||
to: /
|
||||
```
|
||||
|
||||
В данном случае из стандартного описания
|
||||
- удаляется шаг `steps.sources`;
|
||||
- в шаг `install` добавляется обновление репозитория и установка пакета `crun`;
|
||||
- во шаге копирования бинарного кода меняется тропа исходного бинарного файла.
|
||||
|
||||
В итоге оба вариант сборки цели `local-crun` получают аналогичные деревья файловой системы:
|
||||
```
|
||||
_out/
|
||||
└── build
|
||||
├── linux_amd64
|
||||
│ ├── manifest.yaml
|
||||
│ └── rootfs
|
||||
│ ├── etc
|
||||
│ │ └── cri
|
||||
│ │ └── conf.d
|
||||
│ │ └── crun.part
|
||||
│ └── usr
|
||||
│ └── local
|
||||
│ └── bin
|
||||
│ └── crun
|
||||
└── linux_arm64
|
||||
├── manifest.yaml
|
||||
└── rootfs
|
||||
├── etc
|
||||
│ └── cri
|
||||
│ └── conf.d
|
||||
│ └── crun.part
|
||||
└── usr
|
||||
└── local
|
||||
└── bin
|
||||
└── crun
|
||||
```
|
||||
|
||||
|
||||
## Ссылки
|
||||
|
||||
- [Talos Linux System Extensions](https://github.com/siderolabs/extensions#installing-extensions)
|
||||
|
Loading…
Reference in New Issue
Block a user