Skip to content

Commit

Permalink
Merge branch 'release/v1.7.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
artbear committed May 15, 2019
2 parents f3af301 + 8e8e421 commit 9525e82
Show file tree
Hide file tree
Showing 42 changed files with 1,340 additions and 1,031 deletions.
43 changes: 25 additions & 18 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -44,19 +44,21 @@ node("slave") {
}
}

stage('BDD тестирование'){
stage('BDD тестирование'){

def command = """opm run test""";
if(env.BRANCH_NAME == 'master' || env.BRANCH_NAME == 'develop') {
command = """opm run coverage"""
}
}

def errors = []
timestamps {
try{
cmd(command, isUnix)
} catch (e) {
errors << "BDD status : ${e}"
timeout(15){
try{
cmd(command, isUnix)
} catch (e) {
errors << "BDD status : ${e}"
}
}
}

Expand All @@ -65,7 +67,7 @@ node("slave") {
for (int i = 0; i < errors.size(); i++) {
echo errors[i]
}
}
}

step([$class: 'ArtifactArchiver', artifacts: '**/bdd-exec.xml', fingerprint: true])
step([$class: 'JUnitResultArchiver', testResults: '**/bdd*.xml'])
Expand All @@ -79,16 +81,19 @@ node("slave") {
}
}

stage('Контроль технического долга'){
stage('Контроль технического долга'){

if (env.QASONAR) {
timestamps {
println env.QASONAR;
def sonarcommand = "@\"./../../tools/hudson.plugins.sonar.SonarRunnerInstallation/Main_Classic/bin/sonar-scanner\""
withCredentials([[$class: 'StringBinding', credentialsId: env.SonarOAuthCredentianalID, variable: 'SonarOAuth']]) {
sonarcommand = sonarcommand + " -Dsonar.host.url=https://sonar.silverbulleters.org -Dsonar.login=${env.SonarOAuth}"
// withCredentials([[$class: 'StringBinding', credentialsId: env.SonarOAuthCredentianalID, variable: 'SonarOAuth']]) {
// sonarcommand = sonarcommand + " -Dsonar.host.url=https://sonar.silverbulleters.org -Dsonar.login=${env.SonarOAuth}"
// }
withCredentials([string(credentialsId: env.OpenSonarOAuthCredentianalID, variable: 'SonarOAuth')]) {
sonarcommand = sonarcommand + " -Dsonar.host.url=https://opensonar.silverbulleters.org -Dsonar.login=${SonarOAuth}"
}

// Get version - в модуле 'src/Модули/ПараметрыСистемы.os' должна быть строка формата Версия = "0.8.1";
def configurationText = readFile encoding: 'UTF-8', file: 'src/Модули/ПараметрыСистемы.os'
def configurationVersion = (configurationText =~ /Версия\s*=\s*\"([^"]*)\"/)[0][1]
Expand All @@ -97,20 +102,22 @@ node("slave") {
def makeAnalyzis = true
if (env.BRANCH_NAME == "develop") {
echo 'Analysing develop branch'
} else if (env.BRANCH_NAME.startsWith("feature/")) {
echo "Analysing branch ${BRANCH_NAME}"
} else if (env.BRANCH_NAME.startsWith("release/")) {
sonarcommand = sonarcommand + " -Dsonar.branch=${BRANCH_NAME}"
} else if (env.BRANCH_NAME.startsWith("PR-")) {
// Report PR issues
// Report PR issues
def PRNumber = env.BRANCH_NAME.tokenize("PR-")[0]
def gitURLcommand = 'git config --local remote.origin.url'
def gitURL = ""

if (isUnix()) {
gitURL = sh(returnStdout: true, script: gitURLcommand).trim()
gitURL = sh(returnStdout: true, script: gitURLcommand).trim()
} else {
gitURL = bat(returnStdout: true, script: gitURLcommand).trim()
gitURL = bat(returnStdout: true, script: gitURLcommand).trim()
}

def repository = gitURL.tokenize("/")[2] + "/" + gitURL.tokenize("/")[3]
repository = repository.tokenize(".")[0]
withCredentials([[$class: 'StringBinding', credentialsId: env.GithubOAuthCredentianalID, variable: 'githubOAuth']]) {
Expand All @@ -132,7 +139,7 @@ node("slave") {
echo "QA runner not installed"
}
}

}

def cmd(command, isUnix) {
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ call runner help
@call runner init-dev --storage --storage-name http:/repo-1c --storage-user %1 --storage-pwd %2
@call runner run --command "ЗапуститьОбновлениеИнформационнойБазы;ЗавершитьРаботуСистемы;" --execute $runnerRoot\build\out\ЗакрытьПредприятие.epf
@call runner run --command "ЗапуститьОбновлениеИнформационнойБазы;ЗавершитьРаботуСистемы;" --execute $runnerRoot\epf\ЗакрытьПредприятие.epf
@call runner vanessa --settings tools/vrunner.first.json
Expand Down Expand Up @@ -136,14 +136,14 @@ call runner help
В случае необходимости переопределения параметров запуска используется схема приоритетов.

Приоритет в порядке возрастания (от минимального до максимального приоритета)
+ `env.json(в корне проекта)`
+ `--settings ../env.json(указание файла настроек вручную)`
+ `env.json (в корне проекта)`
+ `--settings ../env.json (указание файла настроек вручную)`
+ `RUNNER_* (из переменных окружения)`
+ `--* (ключи командной строки)`

Описание:
+ На первоначальном этапе читаются настройки из файла настроек, указанного в ключе команды ```--settings tools/vrunner.json```
+ Потом, если настройка есть в переменной окружения, тогда берем из еe.
+ Потом, если настройка есть в переменной окружения, тогда берем из неe.
+ Если же настройка есть, как в файле json, так и в переменной окружения и непосредственно в командной строке, то берем настройку из командной строки.

Например:
Expand All @@ -163,7 +163,7 @@ call runner help
set RUNNER_DBUSER=Иванов
set RUNNER_DBUSER=
```
в данном случаи установлено полностью пустое значение и имя пользователя будет взято из tools/vrunner.json, если оно там есть.
в данном случае установлено полностью пустое значение и имя пользователя будет взято из tools/vrunner.json, если оно там есть.

3. Установка пустого значения:
```cmd
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@
ПодключитьОбработчикОжидания("ПроверитьНеобходимостьЗавершенияПрограммы", 10, Истина);
ПодключитьОбработчикОжидания("ПроверитьЛегальностьОбновления", 2);

ПроверитьНеобходимостьЗавершенияПрограммы();
ПроверитьЛегальностьОбновления();
КонецПроцедуры

&НаКлиенте
Expand Down
14 changes: 7 additions & 7 deletions features/ПроверкаСинтаксиса.feature
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
# И Я сообщаю вывод команды "oscript"
И Файл "junit.xml" содержит
"""
<testsuite name="CheckConfig.junit">
<testsuite name="CheckConfig.base">
"""
И Файл "junit.xml" содержит 'status="passed"'
И Код возврата команды "oscript" равен 0
Expand All @@ -56,7 +56,7 @@
# И Я сообщаю вывод команды "oscript"
И Файл "junit.xml" содержит
"""
<testsuite name="CheckConfig.junit">
<testsuite name="CheckConfig.base">
"""
И Файл "junit.xml" содержит 'status="passed"'
И Код возврата команды "oscript" равен 0
Expand All @@ -79,9 +79,9 @@
И файл "junit.xml" существует
И Файл "junit.xml" содержит
"""
<testsuite name="CheckConfig.junit">
<testsuite name="CheckConfig.base">
"""
И Файл "junit.xml" содержит 'status="failure"'
И Файл "junit.xml" содержит '<failure type="ERROR"'

Сценарий: Синтаксическая проверка базы с ошибками с результатами в формате JUnit БЕЗ группировки
# Допустим я включаю отладку лога с именем "oscript.app.vanessa-runner"
Expand All @@ -99,9 +99,9 @@
И файл "junit.xml" существует
И Файл "junit.xml" содержит
"""
<testsuite name="CheckConfig.junit">
<testsuite name="CheckConfig.base">
"""
И Файл "junit.xml" содержит 'status="failure"'
И Файл "junit.xml" содержит '<failure type="ERROR"'

Сценарий: Синтаксическая проверка базы с ошибками пустых обработчиков с группировкой
# Допустим я включаю отладку лога с именем "oscript.app.vanessa-runner"
Expand All @@ -117,6 +117,6 @@
И файл "junit.xml" существует
И Файл "junit.xml" содержит
"""
<testsuite name="CheckConfig.junit">
<testsuite name="CheckConfig.base">
"""
И Файл "junit.xml" содержит 'status="passed"'
2 changes: 1 addition & 1 deletion features/ПростыеКоманды.feature
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
Когда Я выполняю команду "oscript" с параметрами "src/main.os help"
И Вывод команды "oscript" содержит "vanessa-runner v"
И Вывод команды "oscript" содержит "Вывод справки по параметрам"
И Вывод команды "oscript" содержит "Выводить версию приложения"
И Вывод команды "oscript" содержит "Вывод версии приложения"
И Код возврата команды "oscript" равен 0

Сценарий: Вызов исполняемого файла без параметров
Expand Down
4 changes: 2 additions & 2 deletions packagedef
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,9 @@
.ЗависитОт("json", "1.1.0")
.ЗависитОт("1commands", "1.3.5")
.ЗависитОт("1bdd", "1.7.0")
.ЗависитОт("fs", "0.5.0")
.ЗависитОт("fs", "1.0.0")
.ЗависитОт("ParserFileV8i", "0.0.5")
// .ЗависитОт("add")
.ЗависитОт("add", "6.0.0")
.ЗависитОт("v8storage", "0.6.5")
.ЗависитОт("v8unpack", "1.0.1")
.ЗависитОт("opm", "0.14.4")
Expand Down
2 changes: 1 addition & 1 deletion src/Классы/КомандаVersion.os
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

Процедура ЗарегистрироватьКоманду(Знач ИмяКоманды, Знач Парсер) Экспорт

ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды, "Выводить версию приложения");
ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды, " Вывод версии приложения.");
Парсер.ДобавитьКоманду(ОписаниеКоманды);

КонецПроцедуры // ЗарегистрироватьКоманду
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
Процедура ЗарегистрироватьКоманду(Знач ИмяКоманды, Знач Парсер) Экспорт

ТекстОписания =
" Выгружает информационную базу в файл
" Выгрузка информационной базы в файл.
| ";

ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
Процедура ЗарегистрироватьКоманду(Знач ИмяКоманды, Знач Парсер) Экспорт

ТекстОписания =
" Выгружает файл конфигурации из ИБ
" Выгрузка файла конфигурации из ИБ.
| ";

ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
Процедура ЗарегистрироватьКоманду(Знач ИмяКоманды, Знач Парсер) Экспорт

ТекстОписания =
" Выгружает файл расширения из ИБ
" Выгрузка файла расширения из ИБ.
| ";

ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
Процедура ЗарегистрироватьКоманду(Знач ИмяКоманды, Знач Парсер) Экспорт

ТекстОписания =
" Загрузить cf файл в базу
" Загрузка cf файла в базу.
| ";

ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
// Выполнение команды/действия в 1С:Предприятие в режиме тонкого/толстого клиента с передачей запускаемых обработок и параметров
//
// TODO добавить фичи для проверки команды
//
//
// Служебный модуль с набором методов работы с командами приложения
//
// Структура модуля реализована в соответствии с рекомендациями
// Структура модуля реализована в соответствии с рекомендациями
// oscript-app-template (C) EvilBeaver
//
///////////////////////////////////////////////////////////////////////////////////////////////////
Expand All @@ -27,29 +27,29 @@
//
Процедура ЗарегистрироватьКоманду(Знач ИмяКоманды, Знач Парсер) Экспорт

ТекстОписания =
" Выполнение команды/действия в 1С:Предприятие в режиме тонкого/толстого клиента с передачей запускаемых обработок и параметров
ТекстОписания =
" Выполнение команды/действия в 1С:Предприятие в режиме тонкого/толстого клиента с передачей запускаемых обработок и параметров.
| ";

ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды,
ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды,
ТекстОписания);

Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--command", "Строка, передаваемая в ПараметрыЗапуска /C''");
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--execute",
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--execute",
"Путь внешней обработки 1С для запуска в предприятии");
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--additional",
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--additional",
"Дополнительные параметры для запуска предприятия.");
Парсер.ДобавитьПараметрФлагКоманды(ОписаниеКоманды, "--no-wait",
Парсер.ДобавитьПараметрФлагКоманды(ОписаниеКоманды, "--no-wait",
"Не ожидать завершения запущенной команды/действия");
Парсер.ДобавитьПараметрФлагКоманды(ОписаниеКоманды, "--online-file",
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--online-file",
"Путь к файлу с online-записью выполнения");

Парсер.ДобавитьКоманду(ОписаниеКоманды);

КонецПроцедуры // ЗарегистрироватьКоманду

// Выполняет логику команды
//
//
// Параметры:
// ПараметрыКоманды - Соответствие - Соответствие ключей командной строки и их значений
// ДополнительныеПараметры - Соответствие - дополнительные параметры (необязательно)
Expand All @@ -61,13 +61,13 @@
// TODO отрефакторить получение ЗапускатьТолстыйКлиент
ЗапускатьТолстыйКлиент = ОбщиеМетоды.УказанПараметрТолстыйКлиент(ПараметрыКоманды["--ordinaryapp"], Лог);
ДанныеПодключения = ПараметрыКоманды["ДанныеПодключения"];

МенеджерКонфигуратора = Новый МенеджерКонфигуратора;

ПутьОбработки1С = ПараметрыКоманды["--execute"];
ПутьОбработки1С = Заменить_runnerRoot_на_КаталогVanessaRunner(ПутьОбработки1С);
ПутьОбработки1С = ОбщиеМетоды.ПолныйПуть(ПутьОбработки1С);

ОжидатьЗавершения = Не ПараметрыКоманды["--no-wait"];

МенеджерКонфигуратора.Инициализация(
Expand All @@ -87,10 +87,10 @@
ПутьЛогаВыполнения = ПараметрыКоманды["--online-file"];
Попытка
МенеджерКонфигуратора.ЗапуститьВРежимеПредприятияСПроверкойВыполнения(
"ЗапускВРежимеПредприятия",
"ЗапускВРежимеПредприятия",
КомандаЗапуска, ПутьОбработки1С,
ЗапускатьТолстыйКлиент, ПараметрыКоманды["--additional"],
ОжидатьЗавершения,
ЗапускатьТолстыйКлиент, ПараметрыКоманды["--additional"],
ОжидатьЗавершения,
ПутьЛогаВыполнения
)
Исключение
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@

ОписаниеКоманды = Парсер.ОписаниеКоманды(ИмяКоманды, ТекстОписания);

Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--storage-name", "Строка подключения к хранилище");
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--storage-name", "Строка подключения к хранилищу");
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--storage-user", "Пользователь хранилища");
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--storage-pwd", "Пароль");
Парсер.ДобавитьИменованныйПараметрКоманды(ОписаниеКоманды, "--objects", "Имя файла со списком объектов.
Expand Down
Loading

0 comments on commit 9525e82

Please sign in to comment.