• Re: =?utf-8?B?0J3QtSDQt9Cw0L/Rg9GB0LrQsNC1?= =?utf-8?B?0YLRgdGPIHNzaGQg

    From Eugene Berdnikov@21:1/5 to Victor Wagner on Thu Feb 15 19:50:01 2024
    On Thu, Feb 15, 2024 at 09:17:40PM +0300, Victor Wagner wrote:
    В Thu, 15 Feb 2024 13:47:48 +0300
    Dmitrii Kashin <[email protected]> пишет:

    On 14 Feb 2024, at 22:33, Misha Ramendik <[email protected]> wrote:

    Всем привет!
    Мне нужно собрать пакет для bullseye. У меня Федора.
    Ну, поднял VM <...> Хочу поднять sshd и работать с VM по ssh.

    Действительно ли Вы этого хотите?
    Если стоит задача собрать пакет, так просто возьмите контейнер с
    bullseye. Уж какой-нибудь docker, полагаю, на федоре найдётся.

    А протестирвать? Мы, например, на архитектуре x86_64 тестируем постгрес
    исключительно в виртуалках. Потому как сетевой сервис, взаимодействует
    с инитом и все такое. Тестировать лучше в системе имеющей полноценный
    init/systemd и отдельный от хоста сетевой стек.

    В контейнерах есть и свой init/systemd, и отдельный namespace для сети,
    позволяющий тестировать сетевые приложения. В этом смысле что docker,
    что lxc -- пригодные для этого среды, а постгресс в плане сети и инита
    ничего странного требовать не должен.

    Ситуации, в которых контейнер не даёт делать полноценное тестирование,
    встречаются нечасто. Например, с lvm в контейнере есть проблемы.
    --
    Eugene Berdnikov

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Eugene Berdnikov@21:1/5 to Victor Wagner on Thu Feb 15 21:40:02 2024
    On Thu, Feb 15, 2024 at 10:50:22PM +0300, Victor Wagner wrote:
    В Thu, 15 Feb 2024 21:39:42 +0300
    Eugene Berdnikov <[email protected]> пишет:

    В контейнерах есть и свой init/systemd, и отдельный namespace для
    сети, позволяющий тестировать сетевые приложения. В этом смысле что
    docker, что lxc -- пригодные для этого среды, а постгресс в плане
    сети и инита ничего странного требовать не должен.

    В свое время пришллось очень сильно потрахаться в ситуациях когда на
    хосте и в контейнере существенно разные версии systemd (или с одной
    стороны systemd а с другой sysv init).

    Это другой вопрос. Речь шла о том, что для тестирования PG в плане
    запуска и работы с сетью нет причин требовать полной виртуализации.

    А если у тебя GUI и нужно тестировать с X Window, Wayland и что там еще
    нынче бывает?

    Теоретически X Window, Wayland & Ко должны уметь работать по tcp и
    проксироваться через unix-сокеты, например, через ssh. Практически же
    я неоднократно наблюдал с этим проблемы у Firefox и Libreoffice.
    Но я думаю, что там что-то ломали в либах... Времени и желания
    разбираться не было, другие приложения работали нормально. Так что
    GUI вполне можно отлаживать в контейнерах, если не хотеть экзотики,
    вроде прямой работы с видеокартой, аппаратного ускорения и т.п.
    --
    Eugene Berdnikov

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Eugene Berdnikov@21:1/5 to Victor Wagner on Fri Feb 16 07:00:01 2024
    On Fri, Feb 16, 2024 at 08:35:28AM +0300, Victor Wagner wrote:
    В Thu, 15 Feb 2024 23:33:31 +0300
    Eugene Berdnikov <[email protected]> пишет:

    В свое время пришллось очень сильно потрахаться в ситуациях когда на
    хосте и в контейнере существенно разные версии systemd (или с одной
    стороны systemd а с другой sysv init).

    Это другой вопрос. Речь шла о том, что для тестирования PG в плане
    запуска и работы с сетью нет причин требовать полной виртуализации.


    Есть причины. Как только речь заходит о системах мандатного доступа,
    нужна поддержка на уровне ядра.

    А эти системы бывают разные. Ну вот откуда в дебиановском ядре
    поддержка астровского parsec.

    Ну и про тесты использущие специфическую FUSE-файловую систему я уже
    упоминал. Это тоже связано с защитой данных - мы так проверяем что
    удаленные данные действительно исчезли с диска.
    (а уж как тестируется зачистка удаленных данных из RAM, это вообще
    песня)

    Ну и при чём тут инициализация и сеть в постгресе? Не при чём,
    поскольку виртуализации требует нечто, к постгресу прямо не относящееся.
    Не обманывайте подписчиков рассылки!

    А если у тебя GUI и нужно тестировать с X Window, Wayland и что там
    еще нынче бывает?

    Теоретически X Window, Wayland & Ко должны уметь работать по tcp и
    проксироваться через unix-сокеты, например, через ssh. Практически же
    я неоднократно наблюдал с этим проблемы у Firefox и Libreoffice.
    Но я думаю, что там что-то ломали в либах... Времени и желания

    Вот вот. В теории нет различий между теорией и практикой. а на практике
    ого-го какие различия.

    На практике нужно вычёсывать подобные баги, после чего можно продолжать
    тестирование гуя в контейнере.
    --
    Eugene Berdnikov

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Eugene Berdnikov@21:1/5 to Misha Ramendik on Fri Feb 16 09:00:01 2024
    On Fri, Feb 16, 2024 at 12:04:49AM +0000, Misha Ramendik wrote:
    On Thu, 15 Feb 2024 at 10:48, Dmitrii Kashin <[email protected]> wrote:

    > Действительно ли Вы этого хотите?
    > Если стоит задача собрать пакет, так просто возьмите контейнер с
    > bullseye.
    > Уж какой-нибудь docker, полагаю, на федоре найдётся.

    Всё очень просто. С контейнером пришлось бы разбираться, как прикручивать
    ему persistent storage, чтобы не качать заново все дополнительные пакеты
    для каждой новой сборки (пока было две, может ещё случиться, всё только
    для себя - у меня есть VPS на bullseye). И с обменом файлами между
    контейнером и хостом (собранное желательно куда-то деть).

    Для меня это было одной из главных причин, по которым docker пошёл на.
    С lxc всё намного проще и удобней, файлы доступны напрямую в отдельном
    каталоге. Правда, с lxc тоже нужно разбираться, хотя бы с созданием
    исходного образа, в то время как операции с VM в полностью виртуализованной
    среде всем знакомы и привычны.

    Я имел дело с
    контейнерами - но не с вот этими вот квестами, а только CI/CD в котором
    всё совсем просто. Есть кого спросить про контейнеры - но на VM это всё не
    нужно. Мне своё время жалко, а ресурсы машины на VM - нет.

    Правильно.
    --
    Eugene Berdnikov

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Eugene Berdnikov@21:1/5 to Victor Wagner on Fri Feb 16 16:40:02 2024
    On Fri, Feb 16, 2024 at 06:09:27PM +0300, Victor Wagner wrote:
    В Fri, 16 Feb 2024 17:07:11 +0300
    Dmitrii Kashin <[email protected]> пишет:

    Если сборки частые -- то есть большая разница, занимает она семь
    минут или одну (помножаем на число сборок в день, получаем количество
    сэкономленного времени. Если собирается что-нибудь явовское -- есть

    Нет разницы. Потому что нормальные люди, которые хотят чтобы клиентам
    достался работающий софт, после сборки запускают тесты.

    Бывает, что тест нагружает дисковую подсистему. И тут разница между
    контейнером и виртуалкой, которая эмулирует диск, становится очень
    даже заметной.

    Думаю, это должно особенно доставлять тогда, когда нет возможности
    запихнуть этот тест в файловую систему в оперативке -- например,
    потому что "не лезет", т.к. места на диске нужно слишком много.
    --
    Eugene Berdnikov

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)