From beba92d291bea0752f23c8dd71cb772aff3b403d Mon Sep 17 00:00:00 2001 From: Dima Date: Fri, 6 Jun 2025 16:51:03 +0300 Subject: [PATCH 1/8] fix workflows --- .github/workflows/qa.yml | 79 ++++++++++++++++++++++++++++++++--- .github/workflows/testing.yml | 4 +- 2 files changed, 76 insertions(+), 7 deletions(-) diff --git a/.github/workflows/qa.yml b/.github/workflows/qa.yml index f4677b0..72fb9c5 100644 --- a/.github/workflows/qa.yml +++ b/.github/workflows/qa.yml @@ -4,9 +4,13 @@ name: Контроль качества -on: [push, pull_request] +on: + push: + pull_request_target: + workflow_dispatch: + jobs: - build: + sonar: if: github.repository == 'oscript-library/gitsync-plugins' runs-on: ${{ matrix.os }} strategy: @@ -14,6 +18,9 @@ jobs: matrix: os: [ubuntu-latest] oscript_version: ['1.9.2'] + v8_version: ['8.3.24.1691'] + edt_version: ['2024.2.5'] + locale: ['ru_RU'] steps: - name: Актуализация @@ -36,11 +43,73 @@ jobs: opm install --dev opm install gitsync # TODO: должно быть необязательно + - name: Подготовка окружения (Linux) + if: startsWith(matrix.os, 'ubuntu') + run: | + sudo apt-get update + sudo DEBIAN_FRONTEND=noninteractive apt-get install -y locales libwebkit2gtk-4.0-37 + sudo localedef -i ${{ matrix.locale }} -c -f UTF-8 -A /usr/share/locale/locale.alias ${{ matrix.locale }}.UTF-8 + + - name: Установка wine для Tool1CD (Linux) + if: startsWith(matrix.os, 'ubuntu') + run: | + sudo dpkg --add-architecture i386 + sudo apt update + sudo apt install wine -y + + - name: Установка платформы 1С + uses: 1CDevFlow/onec-setup-action@main + with: + type: onec # Тип устанавливаемого приложения + onec_version: ${{ matrix.v8_version }} + cache: true + cache_distr: true + env: + ONEC_USERNAME: ${{ secrets.ONEC_USERNAME }} + ONEC_PASSWORD: ${{ secrets.ONEC_PASSWORD }} + + - name: Установка Java 17 + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '17' + + - name: Установка EDT + uses: 1CDevFlow/onec-setup-action@main + with: + type: edt + edt_version: ${{ matrix.edt_version }} + cache: true + cache_distr: true + env: + ONEC_USERNAME: ${{ secrets.ONEC_USERNAME }} + ONEC_PASSWORD: ${{ secrets.ONEC_PASSWORD }} + + - name: Установка лицензии (Linux) + if: startsWith(matrix.os, 'ubuntu') + run: | + # Создание каталога + sudo mkdir -p /var/1C/licenses + + # Запись лицензии в файл + echo "${{ secrets.ONEC_LICENSE }}" | sudo tee /var/1C/licenses/licence.lic > /dev/null + + # Назначение прав + sudo chmod 777 -R /var/1C/licenses + shell: bash + env: + ONEC_LICENSE: ${{ secrets.ONEC_LICENSE }} + - name: Установка gitsync локально run: opm run install-gitsync - name: Покрытие кода - run: oscript ./tasks/coverage.os true + uses: coactions/setup-xvfb@v1 + env: + EDT_VERSION: ${{ matrix.edt_version }} + GITSYNC_V8VERSION: ${{ matrix.v8_version }} + with: + run: opm run coverage - name: Извлечение версии пакета shell: bash @@ -48,10 +117,10 @@ jobs: id: extract_version - name: Установка Sonar-scanner - uses: warchant/setup-sonar-scanner@v7 + uses: warchant/setup-sonar-scanner@v8 - name: Анализ в SonarQube (branch) - if: github.event_name == 'push' + if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' run: sonar-scanner -Dsonar.login=${{ secrets.SONARQUBE_TOKEN }} -Dsonar.host.url=${{ secrets.SONARQUBE_HOST }} diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 289f6bc..4384e25 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -71,7 +71,7 @@ jobs: sudo apt install wine -y - name: Установка платформы 1С - uses: ovcharenko-di/onec-setup-action@fix/cache-ring-commands-cfg + uses: 1CDevFlow/onec-setup-action@main with: type: onec # Тип устанавливаемого приложения onec_version: ${{ matrix.v8_version }} @@ -96,7 +96,7 @@ jobs: java-version: '17' - name: Установка EDT - uses: ovcharenko-di/onec-setup-action@fix/cache-ring-commands-cfg + uses: 1CDevFlow/onec-setup-action@main with: type: edt edt_version: ${{ matrix.edt_version }} From b994d634bd68b7c5d9b01c8992ced22af8afbcf1 Mon Sep 17 00:00:00 2001 From: Dima Date: Fri, 6 Jun 2025 17:02:25 +0300 Subject: [PATCH 2/8] run qa in fork (temp change) --- .github/workflows/qa.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/qa.yml b/.github/workflows/qa.yml index 72fb9c5..41d5554 100644 --- a/.github/workflows/qa.yml +++ b/.github/workflows/qa.yml @@ -11,7 +11,6 @@ on: jobs: sonar: - if: github.repository == 'oscript-library/gitsync-plugins' runs-on: ${{ matrix.os }} strategy: fail-fast: false From d7f72bc201c6961ae819b30483a524b27a82fc49 Mon Sep 17 00:00:00 2001 From: Dima Date: Fri, 6 Jun 2025 17:06:41 +0300 Subject: [PATCH 3/8] switch to ubuntu 22.04 --- .github/workflows/qa.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/qa.yml b/.github/workflows/qa.yml index 41d5554..e08d42f 100644 --- a/.github/workflows/qa.yml +++ b/.github/workflows/qa.yml @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest] + os: [ubuntu-22.04] oscript_version: ['1.9.2'] v8_version: ['8.3.24.1691'] edt_version: ['2024.2.5'] From 144b4ecdc7a991bafa1a16ba9957f4d800bfecab Mon Sep 17 00:00:00 2001 From: Dima Date: Sat, 7 Jun 2025 14:44:34 +0300 Subject: [PATCH 4/8] speed up features, add helper files --- CONTRIBUTING.md | 2 ++ features/check-authors.feature | 8 +++----- features/check-comments.feature | 7 ++++--- features/edtExport.feature | 5 ++++- features/increment.feature | 5 +++-- features/limit.feature | 7 +++++-- features/smart-tags.feature | 9 +++++---- features/sync-remote.feature | 6 +++++- features/tool1CD.feature | 4 ++-- features/unpackForm.feature | 6 +++--- ...320\270\320\273\320\270\321\211\320\260.mxl" | Bin 0 -> 12897 bytes ...321\200\320\265\320\275\320\270\321\217.mxl" | Bin 0 -> 6292 bytes 12 files changed, 36 insertions(+), 23 deletions(-) create mode 100644 "tests/fixtures/\320\236\321\202\321\207\320\265\321\202\320\237\320\276\320\222\320\265\321\200\321\201\320\270\321\217\320\274\320\245\321\200\320\260\320\275\320\270\320\273\320\270\321\211\320\260.mxl" create mode 100644 "tests/fixtures/\320\236\321\202\321\207\320\265\321\202\320\237\320\276\320\222\320\265\321\200\321\201\320\270\321\217\320\274\320\245\321\200\320\260\320\275\320\270\320\273\320\270\321\211\320\260\320\240\320\260\321\201\321\210\320\270\321\200\320\265\320\275\320\270\321\217.mxl" diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b2ae27a..63a6350 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,6 +2,8 @@ Доработка проводится по git-flow. Жду ваших PR. +Для удобства доработки в каталог ./tests/fixtures сохранены отчеты по версиям хранилища в формате mxl. Обратите внимание, что комментарий к версии хранилища может неточно описывать изменения в этой версии. + ## Требования к окружению - Установленная Платформа 1С diff --git a/features/check-authors.feature b/features/check-authors.feature index 1e9e4e2..85462b7 100644 --- a/features/check-authors.feature +++ b/features/check-authors.feature @@ -15,8 +15,7 @@ И я скопировал каталог тестового хранилища конфигурации в каталог из переменной "КаталогХранилища1С" И Я создаю временный каталог и сохраняю его в переменной "ПутьКаталогаИсходников" И Я инициализирую репозиторий в каталоге из переменной "ПутьКаталогаИсходников" - И Я создаю тестовый файл AUTHORS - И Я записываю "0" в файл VERSION + И Я создаю тестовый файл AUTHORS И я включаю отладку лога с именем "oscript.app.gitsync" И Я создаю временный каталог и сохраняю его в переменной "ВременнаяДиректория" И Я добавляю параметр "--tempdir" для команды "gitsync" из переменной "ВременнаяДиректория" @@ -27,11 +26,10 @@ Сценарий: Cинхронизация с простым использованием Допустим Я создаю неполный тестовый файл AUTHORS + И Я записываю "8" в файл VERSION И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" Когда Я выполняю команду "gitsync" - Тогда Вывод команды "gitsync" содержит "В таблице истории версий найдены авторы (количество 10), которые не сопоставлены в AUTHORS" + Тогда Вывод команды "gitsync" содержит "В таблице истории версий найдены авторы (количество 3), которые не сопоставлены в AUTHORS" И Вывод команды "gitsync" не содержит "Внешнее исключение" И Код возврата команды "gitsync" равен 1 - - diff --git a/features/check-comments.feature b/features/check-comments.feature index 86dfda9..4202121 100644 --- a/features/check-comments.feature +++ b/features/check-comments.feature @@ -16,7 +16,6 @@ И Я создаю временный каталог и сохраняю его в переменной "ПутьКаталогаИсходников" И Я инициализирую репозиторий в каталоге из переменной "ПутьКаталогаИсходников" И Я создаю тестовый файл AUTHORS - И Я записываю "0" в файл VERSION И я включаю отладку лога с именем "oscript.app.gitsync" И Я создаю временный каталог и сохраняю его в переменной "ВременнаяДиректория" И Я добавляю параметр "--tempdir" для команды "gitsync" из переменной "ВременнаяДиректория" @@ -28,17 +27,19 @@ Сценарий: Cинхронизация с использованием просто check-comments Допустим Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "7" в файл VERSION Когда Я выполняю команду "gitsync" - Тогда Вывод команды "gitsync" содержит "КРИТИЧНАЯОШИБКА - Версия <4> от автора <Администратор>: комментарий не задан" + Тогда Вывод команды "gitsync" содержит "КРИТИЧНАЯОШИБКА - Версия <8> от автора <Администратор>: комментарий не задан" И Вывод команды "gitsync" не содержит "Внешнее исключение" И Код возврата команды "gitsync" равен 0 Сценарий: Cинхронизация c использованием --error-comment Допустим Я добавляю параметр "--error-comment" для команды "gitsync" + И Я записываю "2" в файл VERSION И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "КРИТИЧНАЯОШИБКА - Версия <4> от автора <Администратор>: комментарий не задан" И Вывод команды "gitsync" не содержит "Внешнее исключение" И Код возврата команды "gitsync" равен 1 - И Количество коммитов должно быть "3" + И Количество коммитов должно быть "1" diff --git a/features/edtExport.feature b/features/edtExport.feature index 3c64914..123c84e 100644 --- a/features/edtExport.feature +++ b/features/edtExport.feature @@ -17,7 +17,6 @@ И Я создаю временный каталог и сохраняю его в переменной "ПутьКаталогаИсходников" И Я инициализирую репозиторий в каталоге из переменной "ПутьКаталогаИсходников" И Я создаю тестовый файл AUTHORS - И Я записываю "0" в файл VERSION И Я создаю временный каталог и сохраняю его в переменной "ВременнаяДиректория" И Я добавляю параметр "--tempdir" для команды "gitsync" из переменной "ВременнаяДиректория" # И Я добавляю параметр "-v" для команды "gitsync" @@ -29,6 +28,7 @@ Сценарий: Cинхронизация с использованием edtExport без явного указания версии EDT Допустим Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "8" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" @@ -40,6 +40,7 @@ Дано Я добавляю параметр "--edt-version" для команды "gitsync" из переменной "ВерсияEDT" Допустим Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "8" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" @@ -52,6 +53,7 @@ И Я добавляю параметр "-e test" для команды "gitsync" И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "2" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" @@ -65,6 +67,7 @@ И Я добавляю параметр "--BP edtExport" для команды "gitsync" И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "2" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" diff --git a/features/increment.feature b/features/increment.feature index 76cbb2f..4f73b6d 100644 --- a/features/increment.feature +++ b/features/increment.feature @@ -15,8 +15,7 @@ И я скопировал каталог тестового хранилища конфигурации в каталог из переменной "КаталогХранилища1С" И Я создаю временный каталог и сохраняю его в переменной "ПутьКаталогаИсходников" И Я инициализирую репозиторий в каталоге из переменной "ПутьКаталогаИсходников" - И Я создаю тестовый файл AUTHORS - И Я записываю "0" в файл VERSION + И Я создаю тестовый файл AUTHORS И Я создаю временный каталог и сохраняю его в переменной "ВременнаяДиректория" И Я добавляю параметр "--tempdir" для команды "gitsync" из переменной "ВременнаяДиректория" # И Я добавляю параметр "-v" для команды "gitsync" @@ -27,6 +26,7 @@ Сценарий: Cинхронизация с использованием increment Допустим Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" содержит "ИНФОРМАЦИЯ - Тип выгрузки конфигурации в файлы:" @@ -38,6 +38,7 @@ И Я добавляю параметр "-e test" для команды "gitsync" И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "3" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" содержит "ИНФОРМАЦИЯ - Тип выгрузки конфигурации в файлы:" diff --git a/features/limit.feature b/features/limit.feature index 8ae2709..f1c146e 100644 --- a/features/limit.feature +++ b/features/limit.feature @@ -15,8 +15,7 @@ И я скопировал каталог тестового хранилища конфигурации в каталог из переменной "КаталогХранилища1С" И Я создаю временный каталог и сохраняю его в переменной "ПутьКаталогаИсходников" И Я инициализирую репозиторий в каталоге из переменной "ПутьКаталогаИсходников" - И Я создаю тестовый файл AUTHORS - И Я записываю "0" в файл VERSION + И Я создаю тестовый файл AUTHORS И я включаю отладку лога с именем "oscript.app.gitsync" И Я создаю временный каталог и сохраняю его в переменной "ВременнаяДиректория" И Я добавляю параметр "--tempdir" для команды "gitsync" из переменной "ВременнаяДиректория" @@ -29,6 +28,7 @@ Допустим Я добавляю параметр "-l 1" для команды "gitsync" И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" @@ -39,6 +39,7 @@ Допустим Я добавляю параметр "--maxversion 2" для команды "gitsync" И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "0" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" @@ -49,6 +50,7 @@ Допустим Я добавляю параметр "--minversion 5" для команды "gitsync" И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "0" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" @@ -61,6 +63,7 @@ И Я добавляю параметр "--maxversion 4" для команды "gitsync" И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "0" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" diff --git a/features/smart-tags.feature b/features/smart-tags.feature index cbc6756..fd01813 100644 --- a/features/smart-tags.feature +++ b/features/smart-tags.feature @@ -5,7 +5,7 @@ Я хочу выполнять автоматическую синхронизацию конфигурации из хранилища Чтобы автоматизировать свою работы с хранилищем с git -Контекст: Тестовый контекст check-authors +Контекст: Тестовый контекст smart-tags Когда Я очищаю параметры команды "gitsync" в контексте И Я устанавливаю рабочий каталог во временный каталог И Я создаю новый объект ГитРепозиторий @@ -16,7 +16,6 @@ И Я создаю временный каталог и сохраняю его в переменной "ПутьКаталогаИсходников" И Я инициализирую репозиторий в каталоге из переменной "ПутьКаталогаИсходников" И Я создаю тестовый файл AUTHORS - И Я записываю "0" в файл VERSION И я включаю отладку лога с именем "oscript.app.gitsync" И Я создаю временный каталог и сохраняю его в переменной "ВременнаяДиректория" И Я добавляю параметр "--tempdir" для команды "gitsync" из переменной "ВременнаяДиректория" @@ -28,18 +27,20 @@ Сценарий: Cинхронизация c установкой тэгов Допустим Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" И Код возврата команды "gitsync" равен 0 - И Тег "1.0" должен присутствовать в репозитории + И Тег "1.1.0.1" должен присутствовать в репозитории Сценарий: Пропуск ошибки уже существующих тэгов Допустим Я добавляю параметр "--skip-exists-tags" для команды "gitsync" И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "8" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" И Код возврата команды "gitsync" равен 0 - И Тег "1.0" должен присутствовать в репозитории \ No newline at end of file + И Тег "1.1.0.1" должен присутствовать в репозитории \ No newline at end of file diff --git a/features/sync-remote.feature b/features/sync-remote.feature index 71ff2e0..3ff1717 100644 --- a/features/sync-remote.feature +++ b/features/sync-remote.feature @@ -16,7 +16,6 @@ И Я создаю временный каталог и сохраняю его в переменной "ПутьКаталогаИсходников" И Я инициализирую репозиторий в каталоге из переменной "ПутьКаталогаИсходников" И Я создаю тестовый файл AUTHORS - И Я записываю "0" в файл VERSION И я включаю отладку лога с именем "oscript.app.gitsync" И Я создаю временный каталог и сохраняю его в переменной "ВременнаяДиректория" И Я создаю временный каталог и сохраняю его в контекст @@ -34,6 +33,7 @@ И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" И Я добавляю позиционный параметр для команды "gitsync" из переменной "URLРепозитория" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" @@ -45,6 +45,7 @@ И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" И Я добавляю позиционный параметр для команды "gitsync" из переменной "URLРепозитория" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" @@ -56,6 +57,7 @@ И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" И Я добавляю позиционный параметр для команды "gitsync" из переменной "URLРепозитория" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" @@ -67,6 +69,7 @@ И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" И Я добавляю позиционный параметр для команды "gitsync" из переменной "URLРепозитория" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" @@ -78,6 +81,7 @@ И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" И Я добавляю позиционный параметр для команды "gitsync" из переменной "URLРепозитория" + И Я записываю "6" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" не содержит "Внешнее исключение" diff --git a/features/tool1CD.feature b/features/tool1CD.feature index 467f01d..d83dd08 100644 --- a/features/tool1CD.feature +++ b/features/tool1CD.feature @@ -16,7 +16,6 @@ И Я создаю временный каталог и сохраняю его в переменной "ПутьКаталогаИсходников" И Я инициализирую репозиторий в каталоге из переменной "ПутьКаталогаИсходников" И Я создаю тестовый файл AUTHORS - И Я записываю "0" в файл VERSION И я включаю отладку лога с именем "oscript.app.gitsync" И Я создаю временный каталог и сохраняю его в переменной "ВременнаяДиректория" И Я добавляю параметр "--tempdir" для команды "gitsync" из переменной "ВременнаяДиректория" @@ -28,9 +27,10 @@ Сценарий: Успешная синхронизация с tool1CD Допустим Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" И Вывод команды "gitsync" содержит "ИНФОРМАЦИЯ - Использую tool1CD для работы с хранилищем" И Вывод команды "gitsync" не содержит "Внешнее исключение" И Код возврата команды "gitsync" равен 0 - И Количество коммитов должно быть "10" + И Количество коммитов должно быть "1" diff --git a/features/unpackForm.feature b/features/unpackForm.feature index a5251d2..68383fe 100644 --- a/features/unpackForm.feature +++ b/features/unpackForm.feature @@ -28,9 +28,9 @@ Сценарий: Распаковка форм без переименования Допустим Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" - # И Вывод команды "gitsync" не содержит "Внешнее исключение" И Код возврата команды "gitsync" равен 0 И Каталог из переменной "ПутьКаталогаИсходников" содержит файл "Catalogs/Справочник1/Forms/ФормаСписка/Ext/Form/module" @@ -38,9 +38,9 @@ Допустим Я добавляю параметр "-R" для команды "gitsync" И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" - # И Вывод команды "gitsync" не содержит "Внешнее исключение" И Код возврата команды "gitsync" равен 0 И Каталог из переменной "ПутьКаталогаИсходников" содержит файл "Catalogs/Справочник1/Forms/ФормаСписка/Ext/Form/Module.bsl" @@ -48,8 +48,8 @@ Допустим Я добавляю параметр "-F" для команды "gitsync" И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С" И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников" + И Я записываю "9" в файл VERSION Когда Я выполняю команду "gitsync" Тогда Вывод команды "gitsync" содержит "Завершена синхронизации с git" - # И Вывод команды "gitsync" не содержит "Внешнее исключение" И Код возврата команды "gitsync" равен 0 И Каталог из переменной "ПутьКаталогаИсходников" содержит файл "Catalogs/Справочник1/Forms/ФормаСписка/Ext/Form/form.txt" diff --git "a/tests/fixtures/\320\236\321\202\321\207\320\265\321\202\320\237\320\276\320\222\320\265\321\200\321\201\320\270\321\217\320\274\320\245\321\200\320\260\320\275\320\270\320\273\320\270\321\211\320\260.mxl" "b/tests/fixtures/\320\236\321\202\321\207\320\265\321\202\320\237\320\276\320\222\320\265\321\200\321\201\320\270\321\217\320\274\320\245\321\200\320\260\320\275\320\270\320\273\320\270\321\211\320\260.mxl" new file mode 100644 index 0000000000000000000000000000000000000000..9f1abad43e67957d14aa5e102486ed90686a1fba GIT binary patch literal 12897 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 SItXGRe@RFUqFi3XaN|FZ@18>d literal 0 HcmV?d00001 From 0558e706bf525297f263a0615ea35a7b8b7f1b56 Mon Sep 17 00:00:00 2001 From: Dima Date: Sat, 7 Jun 2025 14:57:30 +0300 Subject: [PATCH 5/8] revert onec-setup-action --- .github/workflows/qa.yml | 4 ++-- .github/workflows/testing.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/qa.yml b/.github/workflows/qa.yml index e08d42f..9c10feb 100644 --- a/.github/workflows/qa.yml +++ b/.github/workflows/qa.yml @@ -57,7 +57,7 @@ jobs: sudo apt install wine -y - name: Установка платформы 1С - uses: 1CDevFlow/onec-setup-action@main + uses: ovcharenko-di/onec-setup-action@fix/cache-ring-commands-cfg with: type: onec # Тип устанавливаемого приложения onec_version: ${{ matrix.v8_version }} @@ -74,7 +74,7 @@ jobs: java-version: '17' - name: Установка EDT - uses: 1CDevFlow/onec-setup-action@main + uses: ovcharenko-di/onec-setup-action@fix/cache-ring-commands-cfg with: type: edt edt_version: ${{ matrix.edt_version }} diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 4384e25..289f6bc 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -71,7 +71,7 @@ jobs: sudo apt install wine -y - name: Установка платформы 1С - uses: 1CDevFlow/onec-setup-action@main + uses: ovcharenko-di/onec-setup-action@fix/cache-ring-commands-cfg with: type: onec # Тип устанавливаемого приложения onec_version: ${{ matrix.v8_version }} @@ -96,7 +96,7 @@ jobs: java-version: '17' - name: Установка EDT - uses: 1CDevFlow/onec-setup-action@main + uses: ovcharenko-di/onec-setup-action@fix/cache-ring-commands-cfg with: type: edt edt_version: ${{ matrix.edt_version }} From 010fa540ed80c61a1d1a9df7088747616dd510cb Mon Sep 17 00:00:00 2001 From: Dima Date: Sun, 8 Jun 2025 11:30:15 +0300 Subject: [PATCH 6/8] ignore coverage --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index fff908e..fe7105d 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,8 @@ build/* +coverage/* + bin_gitsync/* bin/gitsync.exe bin/gitsync From 78ed476a448d02af4089541d73e3720157c2470b Mon Sep 17 00:00:00 2001 From: Dima Date: Sun, 8 Jun 2025 11:30:34 +0300 Subject: [PATCH 7/8] fix coverage --- tasks/coverage.os | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tasks/coverage.os b/tasks/coverage.os index b03ba30..2dd8ed7 100644 --- a/tasks/coverage.os +++ b/tasks/coverage.os @@ -3,7 +3,7 @@ #Использовать 1commands ФС.ОбеспечитьПустойКаталог("coverage"); -ПутьКСтат = "coverage/stat.json"; +ПутьКСтат = ОбъединитьПути("coverage", "stat.json"); Команда = Новый Команда; Команда.УстановитьКоманду("oscript"); @@ -20,10 +20,10 @@ ПроцессорГенерации = Новый ГенераторОтчетаПокрытия(); ПроцессорГенерации.ОтносительныеПути() - .ФайлСтатистики(Файл_Стат.ПолноеИмя) + .ИмяФайлаСтатистики("stat.json") .GenericCoverage() .Cobertura() .Clover(ИмяПакета) .Сформировать(); -ЗавершитьРаботу(КодВозврата); \ No newline at end of file +ЗавершитьРаботу(КодВозврата); From d4cf47dc0dd83c72b7f879e37465bd71c2a70780 Mon Sep 17 00:00:00 2001 From: Dima Date: Sun, 8 Jun 2025 11:56:16 +0300 Subject: [PATCH 8/8] add if --- .github/workflows/qa.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/qa.yml b/.github/workflows/qa.yml index 9c10feb..521a2ac 100644 --- a/.github/workflows/qa.yml +++ b/.github/workflows/qa.yml @@ -11,6 +11,7 @@ on: jobs: sonar: + if: github.repository == 'oscript-library/gitsync-plugins' runs-on: ${{ matrix.os }} strategy: fail-fast: false