Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.03.2017, 18:39
Новичок на форуме
Отправить личное сообщение для Vlad2017 Посмотреть профиль Найти все сообщения от Vlad2017
 
Регистрация: 10.03.2017
Сообщений: 5

Как сделать, чтобы node-gyp не скачивал node-headers.tar.gz и node.lib из интернета?
node-gyp скачивает из интернета такие файлы во время инсталяции нативных npm модулей типа iconv, ref, etc:
https://nodejs.org/download/release/...headers.tar.gz
https://nodejs.org/download/release/...n-x86/node.lib
https://nodejs.org/download/release/...n-x64/node.lib
https://nodejs.org/download/release/...SHASUMS256.txt

Как сделать так, чтобы node-gyp брал эти файлы из локальной папки?

Пока я решил эту проблему вот так так:
1. Скачал https://nodejs.org/download/release/...headers.tar.gz
2. Распаковал этот архив в локальную папку.
3. В этой новой папке создал папку Release.
4. Скачал в папку Release файл https://nodejs.org/dist/v6.10.0/win-x64/node.lib
5. В .npmrc добавил свойство nodedir, которое указывает на папку node-v6.10.0-headers:
nodedir=D:\tools\node_src\node-v6.10.0-headers

Теперь npm инсталит пакеты и node-gyp билдит нативные пакеты без вытаскивания дополнительных нодовских файлов из интернета.
Это правильный подход?
Или надо делать как-то по другому?

Меня беспокоит, что нигде в документации не написано, что надо скачивать node.lib и класть его в папку Release.
Я сделал это на основании анализа трейсов и кода.
Может более правильно конфигурить путь к файлу node.lib через какие-то свойства npm_config_xxx?
Ответить с цитированием
  #2 (permalink)  
Старый 10.03.2017, 18:59
Аспирант
Отправить личное сообщение для TestUser013 Посмотреть профиль Найти все сообщения от TestUser013
 
Регистрация: 13.07.2013
Сообщений: 94

Я бы просто в кеш добавил модули и все будет тянуться из кеша https://docs.npmjs.com/cli/cache
Ответить с цитированием
  #3 (permalink)  
Старый 10.03.2017, 19:02
Новичок на форуме
Отправить личное сообщение для Vlad2017 Посмотреть профиль Найти все сообщения от Vlad2017
 
Регистрация: 10.03.2017
Сообщений: 5

Проблема не в модулях.
Для того чтобы node-gyp сделал ребилд нативным модулям, ему нужны нодовские хедера и node.lib.
Эти файлы в кеш не положишь.
Ответить с цитированием
  #4 (permalink)  
Старый 10.03.2017, 19:03
Новичок на форуме
Отправить личное сообщение для Vlad2017 Посмотреть профиль Найти все сообщения от Vlad2017
 
Регистрация: 10.03.2017
Сообщений: 5

Или я не понял вашего ответа.
Ответить с цитированием
  #5 (permalink)  
Старый 10.03.2017, 19:10
Новичок на форуме
Отправить личное сообщение для Vlad2017 Посмотреть профиль Найти все сообщения от Vlad2017
 
Регистрация: 10.03.2017
Сообщений: 5

Модули у меня качаются из нексуса указанного в свойстве registry в .npmrc:
registry=http://nexus..../content/groups/npm-all/

Теперь мне надо сделать так, чтобы я мог на билдмашинах распаковать хедера и node.lib и запретить npm/node-gyp ходить за этими файлами в интернет.
Проблема в том, что на билдмашинах доступ в инет порезан.
И сайт https://nodejs.org/download/release недоступен.
Все нужные файлы, за исключением npm пакетов нужно иметь локально.
Ответить с цитированием
  #6 (permalink)  
Старый 11.03.2017, 00:48
Аспирант
Отправить личное сообщение для TestUser013 Посмотреть профиль Найти все сообщения от TestUser013
 
Регистрация: 13.07.2013
Сообщений: 94

Оу, это да. Мой пост не корректен. Прошу прощения.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать, чтобы при вводе числа в поле добавлялись разделители групп разрядов? Hurray Элементы интерфейса 13 18.02.2015 14:07
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
как сделать чтобы в popup окне показывалось картинка? sarik Общие вопросы Javascript 31 15.03.2013 13:12
как сделать так чтобы в popup окне принимался css стили,? sarik Общие вопросы Javascript 2 12.03.2013 10:24
Как сделать, чтобы 2 ссылки отображались как hover при наведении мышкой на любую? Ava Элементы интерфейса 5 19.05.2009 23:24