Skip to content
  • Категории
  • Главная
  • Документация
  • Последние
  • Пользователи
Collapse
  1. Главная
  2. Raspberry Pi
  3. SaaS-решение для сборки персонализированных образов операционной системы на базе Debian GNU/Linux

SaaS-решение для сборки персонализированных образов операционной системы на базе Debian GNU/Linux

Запланировано Прикреплена Закрыта Перенесена Raspberry Pi
24 Сообщения 1 Posters 342 Просмотры
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • piP Не в сети
    piP Не в сети
    pi
    написал в отредактировано
    #3

    raspiman спасибо большое! Ждём с нетерпением отзыв!

    1 ответ Последний ответ
    0
    • piP Не в сети
      piP Не в сети
      pi
      написал в отредактировано
      #4

      Список изменений:

      • Добавили управление пользователями и группами, а также возможность задать пароль суперпользователя во время сборки образа.
      • Ускорили процесс разрешения зависимостей.
      1 ответ Последний ответ
      0
      • piP Не в сети
        piP Не в сети
        pi
        написал в отредактировано
        #5

        Недавно зарегистрировался. Сейчас пытаюсь залогиниться, но логин не проходит, просто поле пароля сбрасывается. Ну думаю забыл пароль. Нажимаю восстановить, а в ответ тишина. А зареган ли я на самом деле здесь? Пытаюсь зарегистрироваться во второй раз и сайт с радостью вывалил мне лог с ошибками. Environment:

        Request Method: POST
        Request URL: http://cusdeb.com/signup/

        Django Version: 1.8.13
        Python Version: 3.4.2
        Installed Applications:
        ('django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'firmwares',
        'users',
        'webpack_loader')
        Installed Middleware:
        ('django.contrib.sessions.middleware.SessionMiddleware',
        'django.middleware.common.CommonMiddleware',
        'django.middleware.csrf.CsrfViewMiddleware',
        'django.contrib.auth.middleware.AuthenticationMiddleware',
        'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
        'django.contrib.messages.middleware.MessageMiddleware',
        'django.middleware.clickjacking.XFrameOptionsMiddleware',
        'django.middleware.security.SecurityMiddleware')

        Traceback:
        File "/usr/local/lib/python3.4/dist-packages/django/core/handlers/base.py" in get_response
        132. response = wrapped_callback(request, *callback_args, **callback_kwargs)
        File "/var/dashboard/src/django-cusdeb-users/users/views.py" in sign_up
        105. cd['password'])
        File "/usr/local/lib/python3.4/dist-packages/django/contrib/auth/models.py" in create_user
        187. **extra_fields)
        File "/usr/local/lib/python3.4/dist-packages/django/contrib/auth/models.py" in _create_user
        182. user.save(using=self._db)
        File "/usr/local/lib/python3.4/dist-packages/django/db/models/base.py" in save
        734. force_update=force_update, update_fields=update_fields)
        File "/usr/local/lib/python3.4/dist-packages/django/db/models/base.py" in save_base
        762. updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
        File "/usr/local/lib/python3.4/dist-packages/django/db/models/base.py" in _save_table
        846. result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
        File "/usr/local/lib/python3.4/dist-packages/django/db/models/base.py" in _do_insert
        885. using=using, raw=raw)
        File "/usr/local/lib/python3.4/dist-packages/django/db/models/manager.py" in manager_method
        127. return getattr(self.get_queryset(), name)(*args, **kwargs)
        File "/usr/local/lib/python3.4/dist-packages/django/db/models/query.py" in _insert
        920. return query.get_compiler(using=using).execute_sql(return_id)
        File "/usr/local/lib/python3.4/dist-packages/django/db/models/sql/compiler.py" in execute_sql
        974. cursor.execute(sql, params)
        File "/usr/local/lib/python3.4/dist-packages/django/db/backends/utils.py" in execute
        79. return super(CursorDebugWrapper, self).execute(sql, params)
        File "/usr/local/lib/python3.4/dist-packages/django/db/backends/utils.py" in execute
        64. return self.cursor.execute(sql, params)
        File "/usr/local/lib/python3.4/dist-packages/django/db/utils.py" in exit
        98. six.reraise(dj_exc_type, dj_exc_value, traceback)
        File "/usr/local/lib/python3.4/dist-packages/django/utils/six.py" in reraise
        685. raise value.with_traceback(tb)
        File "/usr/local/lib/python3.4/dist-packages/django/db/backends/utils.py" in execute
        64. return self.cursor.execute(sql, params)

        Exception Type: IntegrityError at /signup/
        Exception Value: duplicate key value violates unique constraint "auth_user_username_key"
        DETAIL: Key (username)=(alfacom) already exists.

        1 ответ Последний ответ
        0
        • piP Не в сети
          piP Не в сети
          pi
          написал в отредактировано
          #6

          alfacom , благодарю за отчёт об ошибке! Я нашёл ваш аккаунт, установил новый пароль и отправил пароль в личку. Сегодня ночью поправим регистрацию.

          1 ответ Последний ответ
          0
          • piP Не в сети
            piP Не в сети
            pi
            написал в отредактировано
            #7

            alfacom , исправлено. Еще раз спасибо.

            1 ответ Последний ответ
            0
            • piP Не в сети
              piP Не в сети
              pi
              написал в отредактировано
              #8

              Вы знакомы с Buldroot?
              Я думаю, что многим было бы интересно, если со временем ваш проект разовьётся до этакого SaaS аналога Buildroot'а

              1 ответ Последний ответ
              0
              • piP Не в сети
                piP Не в сети
                pi
                написал в отредактировано
                #9

                admin (2016-05-28 08:43:50):Вы знакомы с Buldroot?
                Я думаю, что многим было бы интересно, если со временем ваш проект разовьётся до этакого SaaS аналога Buildroot'а да, у Buildroot есть достоинства, с оглядкой на которые мы разрабатываем CusDeb, но в одном эти два проекта отличаются друг от друга принципиально: Buildroot предлагает собирать образы из исходных текстов, а CusDeb — из бинарных пакетов.

                1 ответ Последний ответ
                0
                • piP Не в сети
                  piP Не в сети
                  pi
                  написал в отредактировано
                  #10

                  Подвисает на стадии инициализации.
                  Консоль ошибок на скрине, браузер Chrome

                  WebSocket connection to 'ws://cusdeb.com/rpc/token/' failed: Error during WebSocket handshake: Unexpected response code: 404

                  1 ответ Последний ответ
                  0
                  • piP Не в сети
                    piP Не в сети
                    pi
                    написал в отредактировано
                    #11

                    raspiman (2016-05-28 15:40:17):Подвисает на стадии инициализации.
                    Консоль ошибок на скрине, браузер Chrome

                    WebSocket connection to 'ws://cusdeb.com/rpc/token/' failed: Error during WebSocket handshake: Unexpected response code: 404

                    Спасибо. Мы выяснили в чем проблема. Быстрое решение заключается в том, что бы просто перелогиниться.
                    Сегодня-завтра мы исправим источник этой проблемы.

                    1 ответ Последний ответ
                    0
                    • piP Не в сети
                      piP Не в сети
                      pi
                      написал в отредактировано
                      #12

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

                      1 ответ Последний ответ
                      0
                      • piP Не в сети
                        piP Не в сети
                        pi
                        написал в отредактировано
                        #13

                        У всех зарегистрировавшихся прошу прощения. При входе сразу после регистрации не создавался токен, что делало автоматический вход сразу после регистрации бессмысленным. Проблема исправлена.

                        1 ответ Последний ответ
                        0
                        • piP Не в сети
                          piP Не в сети
                          pi
                          написал в отредактировано
                          #14

                          Теперь cusdeb.com/ собирает полноценные образы Debian Jessie для Raspberry Pi 2 и Raspberry Pi 3. Для сборки используется скрипт: github.com/drtyhlpr/rpi23-gen-image

                          Приглашаю всех желающих присоединиться к разработке. Буду рад любому отзыву, совету или найденной ошибке.

                          1 ответ Последний ответ
                          0
                          • piP Не в сети
                            piP Не в сети
                            pi
                            написал в отредактировано
                            #15

                            Откуда берётся список пакетов, которые можно выбрать?
                            Автоматически из оф.репозиториев парсится или как-то вручную модерируется?
                            К названию пакета было бы неплохо выводить описание — я ввёл ключевое слово, мне вывалилась куча пакетов, содержащая в названии ключевое слово.
                            Из этой кучи без описания выбрать то, что мне нужно не очень просто.

                            Не очень понятно, что получится на выходе — будет ли дистрибутив содержать графическую систему XWindow или только консоль?

                            Если окно браузера закрыть, прервётся ли процесс сборки?

                            1 ответ Последний ответ
                            0
                            • piP Не в сети
                              piP Не в сети
                              pi
                              написал в отредактировано
                              #16

                              raspiman (2016-12-04 22:47:19):Откуда берётся список пакетов, которые можно выбрать?
                              Автоматически из оф.репозиториев парсится или как-то вручную модерируется?
                              К названию пакета было бы неплохо выводить описание — я ввёл ключевое слово, мне вывалилась куча пакетов, содержащая в названии ключевое слово.
                              Из этой кучи без описания выбрать то, что мне нужно не очень просто.

                              Не очень понятно, что получится на выходе — будет ли дистрибутив содержать графическую систему XWindow или только консоль?

                              Если окно браузера закрыть, прервётся ли процесс сборки?

                              • Список пакетов берется из официального репозитория. У нас есть простой сервис, который дергает, к примеру, из ftp.ru.debian.org/debian/dists/stable/main/binary-armhf/Packages.xz пакеты и обновляет их в нашей базе. Каждый пакет представляется в виде документа MongoDB.
                              • Описание к каждому пакету является приоритетной задачей. CusDeb находится в статусе альфы, поэтому ему пока не хватает некоторых важных функций.
                              • В основу целевого образа закладывается базовая система. Если вы выберите из списка пакетов xorg + какую-нибудь DE, тогда графика будет. Мы удерживаемся от соблазна добавлять в целевой образ что-то от себя.
                              • Да, вы можете закрыть окно/вкладку, а через некоторое время найти образ в списке в панели управления. Думаю, что нужно отправлять два письма: 1) сборка началась, 2.1) сборка закончилась удачно 2.2) сборка закончилась с ошибкой. Что думаете?
                              1 ответ Последний ответ
                              0
                              • piP Не в сети
                                piP Не в сети
                                pi
                                написал в отредактировано
                                #17

                                Да, было бы неплохо высылать уведомление, что сборка завершена.

                                Также было бы неплохо сделать возможность внесения изменений в готовый образ

                                1 ответ Последний ответ
                                0
                                • piP Не в сети
                                  piP Не в сети
                                  pi
                                  написал в отредактировано
                                  #18

                                  raspiman (2016-12-05 14:03:18):Да, было бы неплохо высылать уведомление, что сборка завершена.

                                  Также было бы неплохо сделать возможность внесения изменений в готовый образ мы рассматривали идею прикрутить к CusDeb терминал, чтобы работать с целевой прошивкой, запущенной в эмуляторе. Так вы могли бы вносить изменения в образ. Или у вас есть другая идея?

                                  1 ответ Последний ответ
                                  0
                                  • piP Не в сети
                                    piP Не в сети
                                    pi
                                    написал в отредактировано
                                    #19

                                    Мы добавили руководство пользователя на русском языке

                                    1 ответ Последний ответ
                                    0
                                    • piP Не в сети
                                      piP Не в сети
                                      pi
                                      написал в отредактировано
                                      #20

                                      raspiman , благодарю за комментарии. Мы добавили краткие описания к пакетам (к сожалению, только на английском языке), и уведомления по электронной почте о завершении сборки.

                                      Пока не придумали как реализовать внесение изменений в готовый образ.

                                      1 ответ Последний ответ
                                      0
                                      • piP Не в сети
                                        piP Не в сети
                                        pi
                                        написал в отредактировано
                                        #21

                                        Добрый день, нельзя удалить ранее созданный образ.
                                        Выдает что незадана функция.

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

                                        1 ответ Последний ответ
                                        0
                                        • piP Не в сети
                                          piP Не в сети
                                          pi
                                          написал в отредактировано
                                          #22

                                          Roman (2017-01-16 11:28:04):Добрый день, нельзя удалить ранее созданный образ.
                                          Выдает что незадана функция.

                                          А так проект прикольный, какое все же внутри ядро? Нельзя в качестве опции, если не дебиановское поставить его в качестве возможности выбора альтернативного ядра?
                                          Благодарю за находку! Я исправлю удаление образов в воскресенье.

                                          С ядром всё запутано 🙂 Для Raspberry Pi 2 это 3.18 (пакет linux-image-3.18.0-trunk-rpi2 из repositories.collabora.co.uk/debian). Для Raspberry Pi 3 это самое свежее ядро Raspberry Pi Linux (https://github.com/raspberrypi/linux)

                                          Я попробую добавить Debian Stretch в CusDeb и судя по этому посту: michaelfranzl.com/2016/10/31/raspberry-pi-debian-stretch/, всё заработает прекрасно. Осталось дождаться включения вот этих изменений github.com/drtyhlpr/rpi23-gen-image/pull/57 в скрипт сборки.

                                          1 ответ Последний ответ
                                          0

                                          • 1
                                          • 2
                                          • Войти

                                          • Нет учётной записи? Зарегистрироваться

                                          • Login or register to search.
                                          • Первое сообщение
                                            Последнее сообщение
                                          0
                                          • Категории
                                          • Главная
                                          • Документация
                                          • Последние
                                          • Пользователи