
aborche
18.12.2017
15:09:33
из консоли сервера su - jenkins; ssh user@host

Даниил
18.12.2017
15:10:15
сек

aborche
18.12.2017
15:10:16
прими хост и выйди из сессии

Google

aborche
18.12.2017
15:10:28
после этого полетит

Даниил
18.12.2017
15:10:35
не-не
я могу подключиться
и по ссш, и через курл с логином и паролем

rus
18.12.2017
15:10:54

Даниил
18.12.2017
15:10:56
а вот через сраный плагин - не хочет
не смарел, кстати
ща

aborche
18.12.2017
15:13:20

Даниил
18.12.2017
15:14:01
с дженкинс машинки, под юзером дженкинс, с моим ключом, который я добавил на гитхабе и закинул его в .ssh
это с токеном. с логином и пассом - такая же байда
в логах ничо

Google

rus
18.12.2017
15:20:45
Версии плагинов последние?

Даниил
18.12.2017
15:23:44
угу
и 2.95 женькинс

Oleg
18.12.2017
15:25:43
Добрый день!
Как в Traefik выставить Strict-Transport-Security?

Игорь
18.12.2017
15:27:25
недавно видел как он вместо кредов экспортирует entry id

Даниил
18.12.2017
15:28:17
хэм, ща посмотрю

qww
18.12.2017
15:32:31
кто-то сталкивался что gitlab не коннектится по ssh по ключу как клиент? с хоста с этим же ключом без проблем

Даниил
18.12.2017
15:33:13
госпади
реально
я не подумал даже, что дело может быть в этом
просто обновил плагин и все

rus
18.12.2017
16:08:47

Даниил
18.12.2017
16:08:59
я искаробки ставил

rus
18.12.2017
16:09:06
Ну пипец =))

Даниил
18.12.2017
16:09:11
думал, что все)))))))))
та уже сам себя выговорил за это)
3 часа в трубу)))

Google

terry
18.12.2017
16:29:45
Опубликован метод скрытия частей кода при выводе изменений при помощи команды "git diff", которая часто используется для изучения присылаемых патчей. Добавив в код escape-последовательность "[8m" атакующий может сделать невидимой часть при выводе на экран с использованием терминала, поддерживающего команды VT100.
via OpenNews.opennet.ru: Общая лента новостей http://ift.tt/2BCt5fM
збс

Salavat
18.12.2017
17:50:08
А кто-нибудь настраивал IKEv2?

Alexander
18.12.2017
18:01:36

Salavat
18.12.2017
18:02:08
Не знаю) мне нужен впн на айось

Alexander
18.12.2017
18:03:00
Salavat, ну и в чём проблема? strongswan какой-нить

Sheridan
18.12.2017
18:05:35
Ох ты, вроде неплохо
http://zakupki.gov.ru/epz/contract/contractCard/common-info.html?reestrNumber=1771014610217000391
ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ
на выполнение услуг (работ) по обеспечению информационной безопасности
органов прокуратуры Российской Федерации, а также по обеспечению этих
органов информационно-телекоммуникационной инфраструктурой
налетай )

Salavat
18.12.2017
18:07:05

Evgenia
18.12.2017
18:09:43

Sheridan
18.12.2017
18:09:58
@aftertime ящитаю ссылка выше достойна блога )

Александр
18.12.2017
18:10:56
Схоронил

Salavat
18.12.2017
18:12:43

Александр
18.12.2017
18:14:02
то чуство, когда чем больше разбираешься тем больше непонятно ?
Начни с малого - загони своих двух программистов в гит. Этот произойдёт не мгновенно. Пока будут вникать и привыкать - ты определишься с потребностями и выберешь продукт для построения CI. Гитовый репозиторий потом перенесешь при необходимости на другой сервер, это несложно.

Salem
18.12.2017
20:03:42

Михаил
18.12.2017
20:23:04
@SalemGolem
> Если бы так просто все было, нельзя терять запросы клиентские
а команда релоада nginx-а жестко забита в апликуху, или ее можно самому указать?

Salem
18.12.2017
20:36:42
это бинарь, я не могу его пропатчить
там по сути можно указать, какой скрипт для релоада дергать, но вопрос в этом и состоит, как в этом кастомном скрипте определить воркеры, которые находятся в состоянии shutdown, без грепанья вывода ps,pgrep

Google

Михаил
18.12.2017
20:38:34
в общем, вижу два варианта:
1. фронтом поставить другой nginx как reverse-proxy и никогда его не пинать. в таком случае бэковый nginx можно хоть каждые 5 секунд убивать. для клиента это будет выглядеть как простые задержки
2. вместо передергивания nginx-а приложением, можно дергать скрипт вроде
#!/bin/sh
flock -n /run/reload_nginx -c 'sleep 15 ; service nginx reload' || :
@SalemGolem ^^^^^^^^^^^^^^^^^^^^^

Salem
18.12.2017
20:42:20
1. nope, менеджить 2 джикса ну его в жопу
2. примерно так и сделал, но немного хитрее, мой скрипт "копит" релоды от аппликухи, потом релоадит джиксу по настоящему, опираясь на существование воркеров в статусе shutdown
но вот скрипт работает через pgrep

Admin
ERROR: S client not available

Salem
18.12.2017
20:42:35
я хочу от этого избавиться
покопал искходники - кроме как комманд лайн title у этого процесса нифига не меняется %(

Михаил
18.12.2017
20:43:04
я тоже подумал, что первый вариант покажется вариантом для "особых ценитеелей"
а чем второй не устраивает? с первого дергания скрипта ждется какое-то время (flock наше фсиооо) и после этого дергается скрипт. все кто за это время прилетают - идут лесом
если не хочется жетско время задавать - заюзай pstree и жди смерти всех потомков главного процесса
@SalemGolem ^^^^^^^^^^^^^^^

Salem
18.12.2017
20:46:58
15 секунд может не хватить, иногда бывают реквесты по 60 сек (долгий бекенд от сторонних людей)

Михаил
18.12.2017
20:48:42
тогда или времени побольше, или man pstree и хитрый скрипт (я, как ленивый человек, советую sleep подлиннее, но сам бы писал с применением pstree)
@SalemGolem как-то так попробуй пиды получать:
PIDS=$(pstree -p $(cat /run/nging.pid) | sed -nre 's/^.+\(([0-9]+)\)$/\1/p')
...
кстати, можно вообще так сделать:
mkdir /sys/fs/cgroup/reload_nginx
PIDS=....
echo "${PIDS}" > /sys/fs/cgroup/reload_nginx/tasks
echo "/some/script" > /sys/fs/cgroup/reload_nginx/release_agent
и уже /some/script-ом выполняешь действия, которые запланировал на окончание перегрузки nginx-а
только не забудь так же этот каталог удалить
@SalemGolem ^^^^^^^^^^^^^^^
<s>погугли про cgroup release_agent или подсмотри оное в systemd или OpenRC</s> почитай документацию к ядру, там все доступно


Salem
18.12.2017
21:10:19
ты выцепляешь пиды всех процессов
а нужно только те, которые в shutdown state
короче всю задачу можно свести к тому, что надо найти разницу между обычным воркером и воркером в shutdown state не опираясь на command line процесса

Google

Salem
18.12.2017
21:19:59
https://github.com/nginx/nginx/blob/afad21917584e9b452ba33ce3485edde5615b859/src/os/unix/ngx_process_cycle.c#L761 вот по сути этот кусок

Anton
18.12.2017
21:22:07
лезбиан ?
http://forum.ixbt.com/topic.cgi?id=15:24706
Был такой дистр, но помер давно, как я понимаю.

Михаил
18.12.2017
21:23:53
@SalemGolem
так релоад дергаешь ПОСЛЕ того, как собрал ПИД-ы
соответсвенно, после релоада все потомки (воркеры) должны пасть смертью храбрых
и когда это случится, можно заходить на новую итерацию

Salem
18.12.2017
21:25:52
здравствуйте приехали, мастер процесс не будет ждать пока убьются все воркеры, он их рестартит не дожидаясь падения ВСЕХ старых воркеров
ладно, спасибо, помудрю еще что-нибудь

Anton
18.12.2017
21:33:42

Михаил
18.12.2017
21:33:50
@SalemGolem так вам кататься или ша ^U возможно, я чего-то непонял из задачи
что требуется? пока воркеры предыдущей итерации не ушли, второй подряд reload дергать нельзя. так?
в таком случае имеем следующую картину
1. до reload-а пиды:
pidM0 (pidW0_1, pidW0_2 ... pidW0_n)
2. релоадим
3. имеем
pidM0 (pidW1_1, pidW0_2 ... pidW1_n)
т.е. воркер 2 с устаревшим конфигом еще работает
ждем когда он (и все его "поколения") последует примеру ЕБН-а (устанет и уйдет)
4. когда все старые ушли, и есть только новые воркеры, если надо, снова nginx-у говорим перечитать конфиг и передернуть воркеров
так?

Salem
18.12.2017
21:35:15
нет, у воркеров нет поколений, поколения и потомки есть у мастер процесса, который един для обоих случаев

Михаил
18.12.2017
21:35:38
ага. потому я и сказал - ждать смерти воркеров

Anton
18.12.2017
21:35:45

Михаил
18.12.2017
21:35:54
ладно. возможно, я не так понял задачу и даю не то решение

Salem
18.12.2017
21:36:10

Anton
18.12.2017
21:36:47
Делал, и не раз. Твоё утверждение ложно.