#1753: Импорта организаций и клиентов из CSV файла

Отредактирована: 10 дней назад

В данной статье описана инструкция для импорта организаций и клиентов из CSV файла.

Требования к CSV файлу:

  • в файле должны быть 3 колонки: client, email, organization
  • данные должны быть разделены символом ";"

Пример содержимого CSV файла:

client;email;organization
"James Rodriguez";"james_rodriguez_1658@example.tld";"Umbrella Co"
"Thomas Martinez";"thomas_martinez_4320@test.tld";"Hooli"
"Jennifer Lopez";"jennifer_lopez_8285@example.tld";"Massive Dynamic"
...

Инструкция

1. Подключитесь к серверу Swarmica по SSH как root пользователь.

2. Создайте резервную копию Swarmica по этой инструкции.

3. Загрузите CSV файл со списком юзеров в папку uploads в контейнере django:

docker cp <PATH-TO-CSV-FILE> swarmica-django-1:/swarmica/swarmica/uploads

где <PATH-TO-CSV-FILE> - путь к CSV файлу.

4. Авторизуйтесь в веб-интерфейсе Swarmica как Администратор

5. Создайте скрипт для импорта в Swarmica - Настройки - Скрипты для роли Администратор:

6. Загрузите скрипт import_organizations_and_clients.py, добавьте следующие Параметры веб-формы и нажмите Сохранить:

[
  {
    "name": "filename",
    "type": "string",
    "required": true,
    "displayName": "имя CSV-файла"
  }
]

Должно выглядеть вот так:

7. В поле веб-формы введите имя CSV файла, загруженного в п.2, и нажмите Отправить:

Траблшутинг

Отследить процесс можно в логе контейнера celeryworker:

docker logs swarmica-celeryworker-1 -f

Или после отработки скрипта:

docker logs swarmica-celeryworker-1 2>&1 | grep "User import"