All Projects → vanessa-opensource → Vanessa Runner

vanessa-opensource / Vanessa Runner

Licence: mpl-2.0
утилита автоматизации базовых операций разработчика 1С

Projects that are alternatives of or similar to Vanessa Runner

Pyorbital
Orbital and astronomy computations in python
Stars: ✭ 119 (-0.83%)
Mutual labels:  hacktoberfest
Gamedev4noobs
Olá, sejam bem-vindos ao repositório _gamedev4noobs_ do Estúdio Vaca Roxa. O propósito desse repositório, além de contribuir para o projeto 4noobs, é ensinar o básico do desenvolvimento de jogos para iniciantes. Apresentando boas práticas e insumos para criar games incríveis.
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Https Localhost
HTTPS server running on localhost
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Across Tabs
Easy communication between cross-origin browser tabs. Simplified "CORS"ing!
Stars: ✭ 1,575 (+1212.5%)
Mutual labels:  hacktoberfest
Tobab
tobab: the poor mans identity aware proxy, easy to use setup for beyondcorp in your homelab
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Commandblocks
Mindustry Command Mod: A highly utilitarian mod with fun and useful blocks such as Command Blocks, Dash Panels and Pistons; New features such as Skills; And an upcoming new Gamemode!
Stars: ✭ 123 (+2.5%)
Mutual labels:  hacktoberfest
Eventum
Eventum Issue Tracking System
Stars: ✭ 120 (+0%)
Mutual labels:  hacktoberfest
Pathlengthchecker
Path Length Checker is a stand-alone app that returns the paths and length of all files and directories in a given directory.
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Rustc codegen gcc
libgccjit AOT codegen for rustc
Stars: ✭ 116 (-3.33%)
Mutual labels:  hacktoberfest
Fabric Gateway Java
Hyperledger Fabric Gateway SDK for Java https://wiki.hyperledger.org/display/fabric
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Okteto
Develop your applications directly in your Kubernetes Cluster
Stars: ✭ 1,937 (+1514.17%)
Mutual labels:  hacktoberfest
Inav
INAV: Navigation-enabled flight control software
Stars: ✭ 1,830 (+1425%)
Mutual labels:  hacktoberfest
Cluster.dev
Kubernetes-based Dev Environments with GitOps
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Puppet Mcollective
MCollective Server and Client Puppet Module
Stars: ✭ 121 (+0.83%)
Mutual labels:  hacktoberfest
Water Monitoring System
Water Monitoring System is an IOT based Liquid Level Monitoring system that has mechanisms to keep the user alerted in case of liquid overflow or when tank depletes.
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Ysi Includes
Just the YSI include files, none of the extra stuff.
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Aws Faq
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Ansible Openwisp2 Imagegenerator
Automatically build several openwisp2 firmware images for different organizations while keeping track of their differences
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Patternlab Edition Node Webpack
The webpack wrapper around patternlab-node core, providing tasks to interact with the core library and move supporting frontend assets.
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest
Shell completion
Write shell completion scripts in pure Rust
Stars: ✭ 122 (+1.67%)
Mutual labels:  hacktoberfest

Автоматизация повседневных операций 1С разработчика

Статус Порога Качества Покрытие Строки кода

Описание

Автоматизация повседневных операций 1С разработчика

Описание

Консольное приложение проекта oscript.io для автоматизации различных операции для работы с cf/cfe/epf файлами, а также автоматизация запуска сценариев поведения (BDD) и тестов из фреймворка Vanessa-ADD.

Предназначено для организации разработки 1С в режиме, когда работа в git идет напрямую с исходниками или работаем через хранилище 1С.

Позволяет обеспечить единообразный запуск команд "локально" и на серверах сборки CI-CD

Установка

используйте пакетный менеджер opm из стандартной поставки дистрибутива oscript.io

opm install vanessa-runner

при установке будет создан исполняемый файл vrunner в каталоге bin интерпретатора oscript.

После чего доступно выполнение команд через командную строку vrunner <имя команды>

Использование

Ключ help покажет справку по параметрам.

vrunner help

или внутри батника (ВАЖНО) через call

call vrunner help

Основной принцип - запустили bat файл с настроенными командами и получили результат.

Сборка обработок и конфигураций

Для сборки обработок необходимо иметь установленный oscript в переменной PATH и платформу выше 8.3.8

В командной строке нужно перейти в каталог с проектом и выполнить tools\compile_epf.bat, по окончанию в каталоге build\epf должны появиться обработки. Вся разработка в конфигураторе делается в каталоге build, по окончанию доработок запускаем tools\decompile_epf.bat

Обязательно наличие установленного v8unpack версии не ниже 3.0.38 в переменной PATH.

Примеры настройки и вызова

1. Создание ИБ из последней конфигурации хранилища 1С, обновление в режиме Предприятия и первоначальное заполнение ИБ

1с-init.cmd :

@rem Полная инициализация из репозитария, обновление в режиме Предприятия и начальное заполнение ИБ ./build/ibservice

@rem Пример запуска 1с-init.cmd storage-user storage-password

@chcp 65001

@set RUNNER_IBNAME=/F./build/ibservice

@call vrunner init-dev --storage --storage-name http:/repo-1c --storage-user %1 --storage-pwd %2

@call vrunner run --command "ЗапуститьОбновлениеИнформационнойБазы;ЗавершитьРаботуСистемы;" --execute $runnerRoot\epf\ЗакрытьПредприятие.epf

@call vrunner vanessa --settings tools/vrunner.first.json

@rem Если убрать комментарий из последней строки, тогда можно выполнять полный прогон bdd-фич
@rem @call vrunner vanessa --settings tools/vrunner.json

2. Вызов проверки поведения через Vanessa-ADD

  • запуск vrunner vanessa --settings tools/vrunner.json

    • или внутри батника
      • call vrunner vanessa --settings tools/vrunner.json
  • vrunner.json:

{
    "default": {
        "--ibconnection": "/F./build/ib",
        "--db-user": "Администратор",
        "--db-pwd": "",
        "--ordinaryapp": "0"
    },
    "vanessa": {
        "--vanessasettings": "./tools/VBParams.json",
        "--workspace": ".",
        "--additional": "/DisplayAllFunctions /L ru"
    }
}
  • VBParams.json
{
    "ВыполнитьСценарии": true,
    "ЗавершитьРаботуСистемы": true,
    "ЗакрытьTestClientПослеЗапускаСценариев": true,
    "КаталогФич": "$workspaceRoot/features/01-СистемаУправления",
    "СписокТеговИсключение": [
        "IgnoreOnCIMainBuild",
        "FirstStart",
        "Draft"
    ],
    "КаталогиБиблиотек": [
        "./features/Libraries"
    ],
    "ДелатьОтчетВФорматеАллюр": true,
    "КаталогOutputAllureБазовый": "$workspaceRoot/build/out/allure",
    "ДелатьОтчетВФорматеCucumberJson": true,
    "КаталогOutputCucumberJson": "$workspaceRoot/build/out/cucumber",
    "ВыгружатьСтатусВыполненияСценариевВФайл": true,
    "ПутьКФайлуДляВыгрузкиСтатусаВыполненияСценариев": "$workspaceRoot/build/out/vbStatus.log",
    "ДелатьЛогВыполненияСценариевВТекстовыйФайл": true,
    "ИмяФайлаЛогВыполненияСценариев": "$workspaceRoot/build/out/vbOnline.log"
}

3. Переопределение аргументов запуска

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

Приоритет в порядке возрастания (от минимального до максимального приоритета)

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

Описание:

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

Например:

Переопределение переменной окружения

Установка значения
  1. Допустим, в файле vrunner.json указана настройка

    "--db-user":"Администратор"
    

    а нам для определенного случая надо переопределить имя пользователя, тогда можно установить переменную: set RUNNER_DBUSER=Иванов и в данный параметр будет передано значение Иванов

  2. Очистка значения после установки

    set RUNNER_DBUSER=Иванов
    set RUNNER_DBUSER=
    

    в данном случае установлено полностью пустое значение и имя пользователя будет взято из tools/vrunner.json, если оно там есть.

  3. Установка пустого значения:

    set RUNNER_DBUSER=""
    set RUNNER_DBUSER=''
    

    Если необходимо установить в поле пустое значение, тогда указываем кавычки и в параметр --db-user будет установлена пустая строка.

  4. Переопределение через параметры командной строки.

    Любое указание параметра в командной строке имеет наивысший приоритет.

Шаблонные переменные

При указании значений параметров внутри строки с параметром можно использовать шаблонные переменные. Список таких переменных:

  • workspaceRoot - означает каталог текущего проекта
  • runnerRoot - означает каталог установки Vanessa-Runner
  • addRoot - означает каталог установки библиотеки Vanessa-ADD

Вывод отладочной информации

Управление выводом логов выполняется с помощью типовой для oscript-library настройки логирования через пакет logos.

Основной лог vanessa-runner имеет название oscript.app.vanessa-runner.

Примеры

Включение всех отладочных логов:

rem только для logos версии >=0.6
set LOGOS_CONFIG=logger.rootLogger=DEBUG

call vrunner <параметры запуска>

Если выводится сообщение про неправильные параметры командной строки:

set LOGOS_CONFIG=logger.oscript.lib.cmdline=DEBUG
call vrunner <параметры запуска>

Включит отладочный лог только для библиотеки cmdline, которая анализирует параметры командной строки.

Дополнительные обработки для режима 1С:Предприятие

В папке epf есть несколько обработок, позволяющих упростить развертывание/тестирование для конфигураций, основанных на БСП.

  • Основной пример (см. ниже пример вызова) - это передача через параметры /C команды "ЗапуститьОбновлениеИнформационнойБазы;ЗавершитьРаботуСистемы" и одновременная передача через /Execute "ЗакрытьПредприятие.epf".

    • При запуске с такими ключами подключается обработчик ожидания, который проверяет наличие формы с заголовком обновления и при окончании обновления завершает 1С:Предприятие. Данное действие необходимо для полного обновления информационной базы 1С:Предприятия, пока действует блокировка на фоновые задачи и запуск пользователей.

    • также выполняется отключение запроса при завершении работы программы для БСП-конфигураций

    • код запуска

  @call vrunner run --command "ЗапуститьОбновлениеИнформационнойБазы;ЗавершитьРаботуСистемы;" --execute $runnerRoot\epf\ЗакрытьПредприятие.epf
  • ЗагрузитьРасширение позволяет подключать расширение в режиме предприятия и получать результат ошибки. Предназначено для подключения в конфигурациях, основанных на БСП. В параметрах /C передается путь к расширению и путь к файлу лога подключения.

  • ЗагрузитьВнешниеОбработки позволяет загрузить все внешние обработки и подключить в справочник "Дополнительные отчеты и обработки", т.к. их очень много то первым параметром идет каталог, вторым параметром путь к файлу лога. Все обработки обновляются согласно версиям.

  • СозданиеПользователей позволяет создать первого пользователя-администратора, если в ИБ еще не существует пользователей. Администратор назначается роль ПолныеПрава, если она существует в ИБ.

    • также выполняется отключение запроса при завершении работы программы для БСП-конфигураций

    • код запуска для создания пользователя с именем Администратор

      @call vrunner run --command "СоздатьАдминистратора;Имя=Администратор;ЗавершитьРаботуСистемы" --execute $runnerRoot\epf\СоздатьПользователей.epf

Дополнительная настройка различных команд

Настройка синтаксической проверки

Для управления режима синтаксической проверки рекомендуется использовать json-файл настройки. Для его использования нужно

  • установить путь к нему в параметре VRUNNER_CONF
  • внутри json-файла нужно добавить секцию syntax-check
  • список всех используемых параметров можно уточнить, выполнив команду vrunner help syntax-check
  • ссылка на подготовленный файл examples\example.env.json
  • также можно передавать параметры синтакс-проверки через командную строку
    • в этом случае режимы проверки должны быть указаны последним параметров ком.строки последовательно, через пробел
      • например, vrunner syntax-check --groupbymetadata --mode -ExtendedModulesCheck -Server -ThinClient -ExternalConnection

Пример настройки в файле

{
    "syntax-check": {
        "--groupbymetadata":true,
        "--exception-file":"",
        "--mode": [
            "-ExtendedModulesCheck",
            "-ThinClient",
             "-WebClient",
             "-Server",
             "-ExternalConnection",
             "-ThickClientOrdinaryApplication"
        ]
        // "-Extension" : "ИмяРасширения",
        // "-AllExtensions" : true
    }
}

Настройка режимов реструктуризации при обновлении конфигурации БД

Возможно использование специальных режимов реструктуризации -v1 и -v2.

  • В режиме командной строки
    • указываются ключи --v1 и --v2. Важно: указать двойной знак --, а не одиночный!
    • 3 команды поддерживают эти ключи
      • init-dev
      • update-dev
      • updatedb
    • например, vrunner updatedb --ibconnection /F./build/ibservice --uccode test --v2
  • в json-файле настройки
    • например,
{
    "updatedb": {
        "--v2": true,
        "--uccode": "test"
    },
    "init-dev": {
        "--v2": true
    }
    },
    "update-dev": {
        "--v2": true
    }
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].