Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Странный хардкод для параметров /P и /ConfigurationRepositoryP #20

Open
demidych opened this issue Jan 31, 2017 · 12 comments
Milestone

Comments

@demidych
Copy link

В библиотечном модуле выглядит странным хардкод для параметров

Функция ЗапуститьИПодождать()
...
Если Лев(Параметр, 2) <> "/P" и Лев(Параметр, 25) <> "/ConfigurationRepositoryP" Тогда
@artbear
Copy link
Owner

artbear commented Jan 31, 2017

@demidych Да, знаю про этот хардкод, портированный из v8runner.
Он был направлен на решение задачи сокрытия паролей при запуске Конфигуратора/Предприятия 1С в режиме СI/CD

Давно думаю отказаться от него.

Но ИМХО можно/нужно добавить фичу сокрытия паролей.
Например, добавив метод ОтключитьПоказПараметраВЛоге(ИмяПараметра)

/cc @EvilBeaver @nixel2007

@nixel2007
Copy link
Collaborator

Поддерживаю.

@EvilBeaver
Copy link
Collaborator

Сервера CI сами умеют прятать пароли, так что да - можем отказаться, я не против. Даже "режим прятания" не нужен, если разобраться.

@artbear
Copy link
Owner

artbear commented Jan 31, 2017

@EvilBeaver Какие сервера CI поддерживают прятание? даже в логах и сторонних файлах, если туда пишет сторонний инструмент?

@nixel2007 Что поддерживаешь? отказ или отказ + добавление фичи скрывания??

@nixel2007
Copy link
Collaborator

Сторонний инструмент сервера вроде не смогут спрятать.
Метод мне нравится. Думаю, можно в имеющийся метод добавления параметра команды добавить ещё один параметр (Прятать=Ложь)

@EvilBeaver
Copy link
Collaborator

Тимсити и бамбуха делают стрзаменить в своем выводе, если какой-то параметр сборки содержит слово пассворд. В Женькинсе что-то такое тоже вроде как было.

@EvilBeaver
Copy link
Collaborator

И еще, мне кажыца, что нужно делать так же. Не прятать параметры совсем, а заменять на звездочки, чтобы наглядно было видно, что ключи переданы, но маскированы

@EvilBeaver
Copy link
Collaborator

И последнее. Хардкод ключей в скрипте, работающем с платформой на низком уровне это нормально. Скрипт имеет право знать семантику ключей платформы. Так что я против спецметода с булевым флажком ПрятатьПараметр

@nixel2007
Copy link
Collaborator

Но дело же не только в платформе. 1коммандс - библиотека :) я не хочу, чтобы где-нибудь внезапно вылетел мой гитхаб-токен например

@Stepa86
Copy link

Stepa86 commented Feb 2, 2017

Может добавить реквизит модуля мСкрываемыеПараметры, который по умолчанию будет заполняться параметрами /P и "/ConfigurationRepositoryP", который можно будет дополнить методом ДобавитьСкрываемыеПараметры() ? И значения всех этих параметров подменять на звездочки. Или на ¯ \ _ (ツ) _ / ¯

@nixel2007
Copy link
Collaborator

nixel2007 commented Feb 2, 2017

Та не.
/P и /ConfigurationRepositoryP должен явно устанавливать v8runner, потому что он знает, какие ключи надо передавать платформе. А дефолтное значение этого секретного списка - пустое.

Если пользователь сам руками запускает через 1commands конфигуратор, то он ССЗБ.

@Stepa86
Copy link

Stepa86 commented Feb 2, 2017

Ну еще как вариант какой нить конфигурационный файл рядышком положить, в котором будут перечислены скрываемые параметры

@artbear artbear modified the milestones: 1.0, 1.1 Feb 12, 2017
@artbear artbear modified the milestones: 1.2, 1.3 Mar 19, 2017
@artbear artbear modified the milestones: 1.4, next Apr 4, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants