nsd_app_uploader
v1.1.0
Published
CLI утилита, отправляет ваш собранный проект на инсталляцию NSD, позволяя не заниматься этим руками.
Maintainers
Readme
Что ты такое?
Эта штука призвана решить важнейшую проблему постоянной загрузки встроенного приложения на инсталляцию Naumen Service Desk руками бедного разработчика. Ты просто устанавливаешь это, указываешь конфигурацию, прописываешь задачи в скрипт и тыкаешь на этот скрипт каждый раз, когда тебе нужно собрать и отправить на инсталляцию твое замечательное приложение.
Тестировалось на приложениях, написанных на Vue и сборщиком Vite. С другими сборщиками тоже должно работать, но с
Установка
Установить командой в папке проекта:
npm i nsd_app_uploader --save-devКонфигурационный файл
Конфигурационный файл должен быть расположен в корневой директории проекта. Имя файла - nsd_app_uploader.json.
Параметры файла:
| Код параметра | Обязательность | По умолчанию | Описание | |------------------|----------------|----------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------| | sourceDirPath | | 'dist' | путь до папки, куда сложены собранные файлы проекта | | host | Да | | хост вашей инсталляции | | scheme | | "https" | схема, используемая при отправке запроса | | accessKey | Да | | ключ доступа к инсталляции | | title | | По умолчанию будет присваиваться значение из параметры code | имя встроенного приложения | | code | Да | | код встроенного приложения | | minHeight | | 1000 | минимальная высота встроенного приложения | | turnOff | | false | признак включения встроенного приложения | | disableSll | | false | признак выключения ssl | | excludedFiles | | ['node_modules', '.idea', '.git', 'package.json', 'package-lock.json', 'nsd_app_uploader.json', '.gitignore'] | исключаемые из zip файлы | | addExcludedFiles | | | исключаемые из zip файлы, дополняющие предыдущий параметр. нужен если вам лень переопределять указанные ранее, а хочется лишь дополнить | | debug | | false | включает отладку, спамит логами |
Пример файла:
{
"sourceDirPath": "\\dist",
"host": "my-awesome-sd.ru",
"scheme": "http",
"accessKey": "123-qwerty-321-ytrewq",
"code": "unrealApp",
"title": "Замечательное приложение",
"minHeight": 600,
"turnOff": false,
"disableSll": true
}Задачи и скрипты
Библиотека содержит три CLI команды:
- create_zip - создает zip архив из файлов в указанной в конфигурации директории
- send_zip - отправляет ранее созданный zip архив на инсталляцию с указанными в конфигурации параметрами
- nsd_app_uploader_version - просто печатает версию либы в терминал
Вам нужно добавить в ваш package.json новый скрипт, который будет собирать проект, потом собирать zip архив, потом отправлять архив. Для этого рекомендую скопировать ваш build скрипт и модифицировать его. Допустим в моем package.json вот такие скрипты:
{
"scripts": {
"dev": "vite --mode development",
"build": "vue-tsc -b && vite build",
"preview": "vite preview"
}
}Если я хочу иметь скрипт, который собирает проект и архивирует собранные файлы в архив, то я добавляю задачу buildAndZip (название на твое усмотрение):
{
"scripts": {
"dev": "vite --mode development",
"build": "vue-tsc -b && vite build",
"preview": "vite preview",
"buildAndZip": "vue-tsc -b && vite build && create_zip "
}
}Как видишь, я просто добавить в скрипт build дополнительный шаг выполнения. Есть мне нужно еще и отправить архив на инсталляцию, то далаем задачу buildAndZipAndSend:
{
"scripts": {
"dev": "vite --mode development",
"build": "vue-tsc -b && vite build",
"preview": "vite preview",
"buildAndZipAndSend": "vue-tsc -b && vite build && create_zip && send_zip"
}
}