Size: a a a

Node.js — русскоговорящее сообщество

2019 November 27

SS

Sergey Slipchenko in Node.js — русскоговорящее сообщество
SM
Карабасы барабасы, есть вопрос.

Как запустить npm i; npm run build, npm run start в баш скрипте, но таким образом, что бы в случае ошибок, скрипт валился с exit code каким-нибудь.

Нужно для gitlab ci, т.к. процесс запускается в ansible task'е и его в принципе не видно в console (джобы).
одной строкой всё или скриптик лучше?
источник

r🧬

rmshell 🧬 in Node.js — русскоговорящее сообщество
Sergey Slipchenko
скорее всё что не равно нулю, разве нет?
Там вроде нету отрицательных, поэтому мой вариант все что больше 0 считаю уместным
источник

S

SM in Node.js — русскоговорящее сообщество
Sergey Slipchenko
одной строкой всё или скриптик лучше?
У меня как построен процесс, там для zero time deploy...

Копируются файлы в виртуалку, туда-же копируется bash скрипт где всё одной строкой (сборка приложения и запуск вроде в pm2) и энсиблом это всё запускается... Соответственно не видно что там на самом деле происходит в процессе сборки. Даже если всё валится с ошибками - ansible пишет что job done и ci завершается успешно.

Хорошо что пока что есть быстрый rollback на случай таких проблем.
источник

SS

Sergey Slipchenko in Node.js — русскоговорящее сообщество
rmshell 🧬
Там вроде нету отрицательных, поэтому мой вариант все что больше 0 считаю уместным
там байт, да, но оно как бы циклится))
источник

SS

Sergey Slipchenko in Node.js — русскоговорящее сообщество
SM
У меня как построен процесс, там для zero time deploy...

Копируются файлы в виртуалку, туда-же копируется bash скрипт где всё одной строкой (сборка приложения и запуск вроде в pm2) и энсиблом это всё запускается... Соответственно не видно что там на самом деле происходит в процессе сборки. Даже если всё валится с ошибками - ansible пишет что job done и ci завершается успешно.

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

set -e
источник

ВА

Владислав Анистратов in Node.js — русскоговорящее сообщество
Приветствую!

Есть люди с опытом работы node-rdkafka? Перехожу с no-Kafka, не могу разобраться, как сделать аналог group consumer. Как только запускаю второй consumer первый глохнет. Пытался найти в документации node-rdkafka и librdkafka изменение политики ребалансинга, то ли лыжи не едут, то ли я.

Кто то может помочь?
источник

S

SM in Node.js — русскоговорящее сообщество
Sergey Slipchenko
если скрипт на баше, добавь в начало строку

set -e
Благодарю, сейчас попробую
источник

N

Nick in Node.js — русскоговорящее сообщество
У кого-то есть mws ключи от sellercentral amazon?
источник

Г

Герман in Node.js — русскоговорящее сообщество
Привет, познаю бек на ноде (express), подскажите плиз.

С клиента я делаю POST запрос на бек с JSON например
{
 "user":  "Test",
 "password":  "123",
 "dummyField": "litter"
}
Могу ли я как-то провалидировать JSON схему и принято ли вообще так делать? Чтобы бек ругался если в JSON-е есть лишние поля кроме user и password?

Как вариант я могу делать деструктуризацию на беке в контроллере
const { user, password } = req.body
Но когда полей будет много я боюсь, что деструктуризация будет захламлять код.

Я использую express-validator и там есть такой раздел
https://express-validator.github.io/docs/schema-validation.html

Но я попробовал и он молчит на поля, которые не описаны в схеме
источник

S

Sergey in Node.js — русскоговорящее сообщество
Герман
Привет, познаю бек на ноде (express), подскажите плиз.

С клиента я делаю POST запрос на бек с JSON например
{
 "user":  "Test",
 "password":  "123",
 "dummyField": "litter"
}
Могу ли я как-то провалидировать JSON схему и принято ли вообще так делать? Чтобы бек ругался если в JSON-е есть лишние поля кроме user и password?

Как вариант я могу делать деструктуризацию на беке в контроллере
const { user, password } = req.body
Но когда полей будет много я боюсь, что деструктуризация будет захламлять код.

Я использую express-validator и там есть такой раздел
https://express-validator.github.io/docs/schema-validation.html

Но я попробовал и он молчит на поля, которые не описаны в схеме
Да это норм практика
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
у тебя два варианта:
- использовать TS - там даже валидировать ничего не нужно, опишешь тип и в случае неподхождения ему будет ругаться
- накати свой валидатор, делов-то на 10 минут... и вызывай его с передачей объекта и списка полей с их типами... что-то типа

if (!valudate(data, dataType)) {
 error...
}
источник

Г

Герман in Node.js — русскоговорящее сообщество
Artem Zuev
у тебя два варианта:
- использовать TS - там даже валидировать ничего не нужно, опишешь тип и в случае неподхождения ему будет ругаться
- накати свой валидатор, делов-то на 10 минут... и вызывай его с передачей объекта и списка полей с их типами... что-то типа

if (!valudate(data, dataType)) {
 error...
}
спасибо ✊
источник

SS

Sergey Slipchenko in Node.js — русскоговорящее сообщество
Artem Zuev
у тебя два варианта:
- использовать TS - там даже валидировать ничего не нужно, опишешь тип и в случае неподхождения ему будет ругаться
- накати свой валидатор, делов-то на 10 минут... и вызывай его с передачей объекта и списка полей с их типами... что-то типа

if (!valudate(data, dataType)) {
 error...
}
TS не поможет особо
источник

SS

Sergey Slipchenko in Node.js — русскоговорящее сообщество
а так, есть по крайней мере express-validate
источник

SS

Sergey Slipchenko in Node.js — русскоговорящее сообщество
ну и там joi, yup (по сути одно и то же по большей части)
источник

PS

Pavel Shakhov (pongo) in Node.js — русскоговорящее сообщество
Sergey Slipchenko
TS не поможет особо
вообще да. но для тс есть io-ts, который решают эту задачу
источник

SS

Sergey Slipchenko in Node.js — русскоговорящее сообщество
Pavel Shakhov (pongo)
вообще да. но для тс есть io-ts, который решают эту задачу
это что-то под рантайм уже?
источник

PS

Pavel Shakhov (pongo) in Node.js — русскоговорящее сообщество
Sergey Slipchenko
это что-то под рантайм уже?
да
источник

SS

Sergey Slipchenko in Node.js — русскоговорящее сообщество
пробовал? Годное?
источник

SS

Sergey Slipchenko in Node.js — русскоговорящее сообщество
о, ништяк, Either, Maybe)
источник