@rubylang

Страница 1499 из 1684
Evegeniy
16.05.2018
11:57:29
Я не с целью обидеть. Просто докер инструмент — решающий определенную задачу

ojab
16.05.2018
11:58:03
нет, docker machine не для этого. Из близкого докерного — docker swarm.

но, опять же, с ним надо разбираться и решать как это конкретно будет реализовано

Evegeniy
16.05.2018
11:58:21
Я где-то читал, что через docker machine
Тебе наверное лучше в канал по докеру, потому что ты, наверное, никогда им не пользовался. Перед тем как начать использовать инструмент, думаю, хорошо ознакомиться с тем, какие проблемы он решает

Google
Tr
16.05.2018
11:58:36
На локале используется докер, в ci для тестов докер, почему в проде не использовать?

Evegeniy
16.05.2018
11:58:36
Это просто совет

Tr потому что его надо администрировать и так ты тянешь еще кучу зависимостей

и вопрос «Что это тебе даст» ?

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

ну или любую другую Infrastructure as a code тулзу

какая тебе нравится больше

Tr
16.05.2018
12:00:09
Тоесть ваш совет использовать докер в цикле и в дев, а на сервере все ставить отдельно и деплоить капистраной? Ну про ансибл я пока не слышал

ojab
16.05.2018
12:01:39
ну, ансибл или что-то подобное в любом случае понадобится для поднятия докера на новой машинке

но таки да, capistrano для деплоя проще всего

Evegeniy
16.05.2018
12:02:57
в dev ты просто упростишь жизнь коллегам

чтобы они не тянули зависимости каждый отдельно под своб машину, если у тебя их много

Google
Evegeniy
16.05.2018
12:03:37
Если у тебя кроме имеджмейджика особо ничего нет, то наверное даже тут уже докер излишек, имхо

Хотя остается пляска с версиями руби

Tr
16.05.2018
12:08:37
Версии сервисов тоже, пг и т.д

Смерть
16.05.2018
12:54:10
Привет всем. Есть такой код = requirejs_include_tag 'init' Он возвращает html_safe строку с двумя тегами <script>. Могу я как-то на лету обработать эту строку, чтобы добавить к ней аттрибуты?

к тегам*

ojab
16.05.2018
13:11:20
Версии сервисов тоже, пг и т.д
А ты сервисы тоже планировал в докере запускать?

Смерть
16.05.2018
13:26:01
он тогда применяет аттрибуты как 'data-key1=val1'

Иван
16.05.2018
13:26:34
похоже на то - https://github.com/jwhitley/requirejs-rails/blob/749a12e25e1d9a53f613a5e0efdcce618bd45ae8/app/helpers/requirejs_helper.rb#L35

Смерть
16.05.2018
13:26:48
да

Там самая главная проблема дальше

https://github.com/jwhitley/requirejs-rails/blob/749a12e25e1d9a53f613a5e0efdcce618bd45ae8/app/helpers/requirejs_helper.rb#L86

вот это вообще исполняется без опций

Иван
16.05.2018
14:19:24
вот это вообще исполняется без опций
может тогда регулярка + gsub?)

Смерть
16.05.2018
14:19:41
вот этим я сейчас и занимаюсь

brute11k
16.05.2018
16:07:37
Может быть, немного не по теме, но возник такой вопрос: как тестировать интеграцию между Rails и ElasticSearch? Используется ли в таких целях реальный ES или пишется Mock под каждый запрос - ответ?

И нужно ли вообще это тестировать, если я использую, к примеру, elasticsearch-rails

Пока что нашёл только такое, но ответы слегка староваты, возможно уже придумали что-то получше: https://stackoverflow.com/questions/9676089/how-to-test-elasticsearch-in-a-rails-application-rspec

Di
16.05.2018
16:14:18
Ребят, не совсем по руби, но около. Кто юзал Postgis помогите с затруднением разобраться. Мне нужно использовать функцию ST_geogFromText, она принимает координаты и делает геоточку. ST_GeogFromText('SRID=4326;POINT(22 23.25)'); С захардкоженными значениями координат всё норм. Но мне нужно рассчитывать эту формулу беря координаты из текущей строки, допустим есть столбцы longitude и latitude у записи. И вот как подставлять переменные тут я с синтаксисом подзавис и гугл не спасает. Хелп плиз.

Google
brute11k
16.05.2018
16:34:01
Почему бы не использовать реальный эластик + vcr?
А смогу ли я его использовать по аналогии как с sqlite, в памяти? После каждого тест сьюта очищать базу и т.д. Мне кажется, это будут медленноватые тесты. Продакшн базу использовать для этого как-то не хочется.

s
16.05.2018
16:35:35
Нет, почитай про vcr

brute11k
16.05.2018
16:36:07
Нет, почитай про vcr
Хорошо, благодарю!

s
16.05.2018
16:38:43
На дев машине у тебя будет настроен эластик, первый раз выполняется запрос, записывается на кассету и потом она используется при каждом прогоне. Что-то изменилось в параметрах - будет эксепшн

s
16.05.2018
16:49:30
Да)

VCR это мастхэв для работы с апи

Darth
16.05.2018
16:50:49
20 строчек на js за 3 часа :c

Alex
16.05.2018
16:53:12
ребят, такой вопрос. я создал миграции, где добавляю столбцы. все это дело закомитил и отправил. сейчас я хочу удалить эти столбцы(они не нужны). теперь надо создать миграции на удаление столбцов и их закомитить? или только удалить файлы ненужных миграций? и соответственно сделать коммит. Как правильно?



rekero
16.05.2018
16:54:17
Создавай миграции

Valter
16.05.2018
16:54:24
А ролбэк не катит?

Иван
16.05.2018
16:54:40
либо создать миграции на удаление, лмбо откатить миграции и удалить файлы

Alex
16.05.2018
16:54:42
ну просто это в ветке все же

s
16.05.2018
16:55:11
В своей ветке, если с ней никто ничего не делал можно и файлы удалить

Alex
16.05.2018
16:55:47
не, это паблик ветка :(

s
16.05.2018
16:55:51
Если никто ещё не успел начать ревью и не накатил твои миграции

Тогда не стоит)

В смысле, если там точно никто не мог запустить миграции, то можно удалить и из ремут ветки

Ilya
16.05.2018
16:57:20
не, это паблик ветка :(
пиши новые миграции

Google
brute11k
16.05.2018
17:17:23
На продакшене всегда только миграции для любого изменения столбцов/таблиц/данных в базе.

Dmitry
16.05.2018
17:19:55
это если базу проебывать время от времени)

brute11k
16.05.2018
17:20:38
Если используется CI/CD, то может возникнуть такая ситуация, что в старом коде используется поле, которого больше нет. И такой запрос может оборваться для пользователя, если он возник из старого кода, а обратно пришёл уже на новый

В таком случае лучше делать maintenance mode или изменения делать поэтапно. Т.е. сначала убрать код, который обращается к старому полю, а потом уже из базы убрать само поле.

Admin
ERROR: S client not available

brute11k
16.05.2018
17:24:49
Вообще, мне кажется с каждым запросом лучше передавать ещё его версию (unixtime какой-нибудь), и отклонять, если текущая версия больше.

s
16.05.2018
17:39:35
это все сильно зависит от того, сколько стоит ошибка в приложении. уверен, что в 99% рельсовых проектов на это просто забивают)

да и не только рельсовых)

Богдан
16.05.2018
20:10:06
господа, а не подскажите, вот ковыряю бота, и для сессий нужно подключить Redis # In rails app store can be configured in env files: config.telegram_updates_controller.session_store = :redis_store, {expires_in: 1.month} насколько я понимаю это надо в config\production.rb Но вопрос а где задать настройки для Redis, пароль и какую базу использовать?

Igor
16.05.2018
20:21:15
https://github.com/rails/rails/search?utf8=✓&q=REDIS_URL&type= @b360124 просто в ENV REDIS_URL положить

Богдан
16.05.2018
20:22:20
Shilin
17.05.2018
05:22:07
RSpec ругается. SystemsController PUT #update returns accepted status Failure/Error: put :update, id: system NoMethodError: protected method `config' called for #<SystemsController:0x0055734cc03ab8> Did you mean? config_url

кто сталкивался?

Pavel
17.05.2018
05:41:27
метод в контроллере тянешь, котороый protected

Богдан
17.05.2018
07:00:37
Ребята, а может кто подскажет как например в геме telegram-bot отправлять callback, чето никак не могу в документации понять?



Fedor
17.05.2018
07:14:28
https://github.com/fedorkk/test_wo_bot/blob/master/bin/main.rb

может я не совсем понял, что ты имеешь в виду под callbackом, но ты просто получаешь сообщение и шлешь в ответ свое

по полученному chat_id

Aleksey
17.05.2018
07:17:06
если речь про вебхуки, то ты ничего не шлешь ) телеграм в твой вебхук шлет новые меседжи просто

Google
Богдан
17.05.2018
07:17:51
Спасибо, ну я как бы хочу сделать кнопку, я ж так понимаю она на калбеках делается

но чето вообще непонятно с документации как ее сделать

https://github.com/telegram-bot-rb/telegram-bot

может кто делал?

https://github.com/fedorkk/test_wo_bot/blob/master/bin/main.rb
спасибо, но у меня немножко не тот гем используется

Fedor
17.05.2018
07:19:33
А какая разница?

гем - это не более чем обертка для API

что бы не собирать ручками кучу всего и не слать http запросы

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

Смерть
17.05.2018
07:24:14
Так же, но при клике на кнопку в телеграме тебе придет айди в вебхук. Первый параметр должен быть этот айди, а второй как раз объект для телеграм апи

Богдан
17.05.2018
07:24:41
так вот вопрос, как эту кнопку сделать?

уже документацию под микроспоком посмотрел, но что-то непонятно вообще

Смерть
17.05.2018
07:26:18
https://core.telegram.org/bots/2-0-intro#new-inline-keyboards

Ты к мессаджу прикребляешь объект клавиатуры

Страница 1499 из 1684