Skip to content

Latest commit

 

History

History
359 lines (225 loc) · 35.1 KB

readme.md

File metadata and controls

359 lines (225 loc) · 35.1 KB

Примеры и шаблоны вспомогательных скриптов

Все примеры и шаблоны являются рабочими, но могут немного не соответствовать специфике конкретного проекта.

Рекомендуется перед использованием скопировать нужные скрипты в каталог tools\scripts проекта и при необходимости внести необходимые доработки.

Файл настроек .env рекомендуется располагать в корне проекта.

ib2src.cmd

Выполняет экспорт (выгрузку) основной конфигурации и расширений в XML-файлы (формат выгрузки конфигуратора 1С:Предприятие 8) или в проект EDT.

Экспорт основной конфигурации выполняется:

  • в файлы XML в каталог ../../src/cf относительно каталога расположения скрипта.
  • в проект EDT в каталог ../../src/main относительно каталога расположения скрипта.

Экспорт расширений выполняется:

  • в файлы XML в каталоги ../../src/cfe/<имя расширения> относительно каталога расположения скрипта.
  • в проект EDT в каталоги ../../src/<имя расширения> относительно каталога расположения скрипта.

Параметры экспорта задаются в файле .env, содержащим значения переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды:

  • V8_VERSION - версия 1С:Предприятия
  • V8_CONVERT_TOOL - инструмент, используемый для экспорта (возможные значения: ibcmd - утилита управления автономным сервером, designer - конфигуратор 1С:Предприятие 8)
  • V8_SRC_TYPE - тип исходников, для экспорта (возможные значения: edt - в проект EDT, xml (или любое другое) - в файлы XML)
  • V8_DB_SRV_DBMS - тип используемой СУБД, где расположена информационная база из которой выполняется экспорт (MSSQLServer, PostgreSQL, IBMDB2, OracleDatabase) (опционально, по умолчанию: MSSQLServer)
  • V8_DB_SRV_ADDR - адрес сервера СУБД
  • V8_DB_SRV_USR - имя пользователя сервера СУБД
  • V8_DB_SRV_PWD - пароль пользователя сервера СУБД
  • V8_SRV_ADDR - адрес сервера 1С:Предприятие 8
  • V8_IB_NAME - имя информационной базы из которой выполняется экспорт
  • V8_IB_USER - имя пользователя информационной базы
  • V8_IB_PWD - пароль пользователя информационной базы
  • V8_EXTENSIONS - список расширений конфигурации для выгрузки, расделенный пробелами (если не указан, то будет выполнен поиск в информационной базе или в каталоге исходников расширений)
  • V8_EXT_LOOKUP - способ поиска расширений в случае, когда список не задан явно в переменной V8_EXTENSIONS (возможные значения: folder - в каталоге исходников расширений, ib (или любое другое) - в информационной базе)
  • V8_DROP_CONFIG_DUMP - флаг удаления файла ConfigDumpInfo.xml после выгрузки в файлы XML (1 - удалять, 0 - не удалять)
  • V8_CONF_CLEAN_DST - флаг очистки каталога исходников основной конфигурации перед экспортом (1 - очищать, 0 - не очищать)
  • V8_EXT_CLEAN_DST - флаг очистки каталога исходников расширений конфигурации перед экспортом (1 - очищать, 0 - не очищать)
  • V8_FILES_TO_KEEP - список относительных путей к файлам, которые не должны быть удалены при выполнении скрипта (например: AUTHORS VERSION SYNC_COMMIT)

src2ib.cmd

Выполняет импорт (загрузку) основной конфигурации и расширений из XML-файлов (формат выгрузки конфигуратора 1С:Предприятие 8) или из проекта EDT.

Импорт основной конфигурации выполняется:

  • из файлов XML из каталога ../../src/cf относительно каталога расположения скрипта.
  • из проекта EDT из каталога ../../src/main относительно каталога расположения скрипта.

Импорт расширений выполняется:

  • из файлов XML из каталогов ../../src/cfe/<имя расширения> относительно каталога расположения скрипта.
  • из проекта EDT из каталогов ../../src/<имя расширения> относительно каталога расположения скрипта.

Параметры импорта задаются в файле .env, содержащим значения переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды:

  • V8_VERSION - версия 1С:Предприятия
  • V8_CONVERT_TOOL - инструмент, используемый для импорта (возможные значения: ibcmd - утилита управления автономным сервером, designer - конфигуратор 1С:Предприятие 8)
  • V8_SRC_TYPE - тип исходников, для импорта (возможные значения: edt - из проекта EDT, xml (или любое другое) - из файлов XML)
  • V8_DB_SRV_DBMS - тип используемой СУБД, где расположена информационная база в которую выполняется импорт (MSSQLServer, PostgreSQL, IBMDB2, OracleDatabase) (опционально, по умолчанию: MSSQLServer)
  • V8_DB_SRV_ADDR - адрес сервера СУБД
  • V8_DB_SRV_USR - имя пользователя сервера СУБД
  • V8_DB_SRV_PWD - пароль пользователя сервера СУБД
  • V8_SRV_ADDR - адрес сервера 1С:Предприятие 8
  • V8_IB_NAME - имя информационной базы в которую выполняется импорт
  • V8_IB_USER - имя пользователя информационной базы
  • V8_IB_PWD - пароль пользователя информационной базы
  • V8_EXTENSIONS - список расширений конфигурации для выгрузки, расделенный пробелами (если не указан, то будет выполнен поиск в информационной базе или в каталоге исходников расширений)
  • V8_EXT_LOOKUP - способ поиска расширений в случае, когда список не задан явно в переменной V8_EXTENSIONS (возможные значения: folder - в каталоге исходников расширений, ib (или любое другое) - в информационной базе)

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

После выполнения импорта конфигурации/расширения в соответствующем каталоге будет создан/изменен файл SYNC_COMMIT, в который будет записана информация о последнем импортированном коммите в формате:

<имя информационной базы>:<хэш коммита>

Если после импорта необходимо выполнить обновление конфигурации базы данных, то при вызове скрипта нужно добавить параметр apply.

conf_ib2src.cmd

Облегченный вариант скрипта ib2src.cmd, выполняет экспорт (выгрузку) основной конфигурации в XML-файлы (формат выгрузки конфигуратора 1С:Предприятие 8) или в проект EDT.

Экспорт основной конфигурации выполняется:

  • в файлы XML в каталог ../../src/cf относительно каталога расположения скрипта.
  • в проект EDT в каталог ../../src/main относительно каталога расположения скрипта.

Параметры экспорта задаются в файле .env, содержащим значения переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды указаны в описании скрипта ib2xml.cmd.

conf_src2ib.cmd

Облегченный вариант скрипта src2ib.cmd, выполняет импорт (загрузку) основной конфигурации из XML-файлов (формат выгрузки конфигуратора 1С:Предприятие 8) или из проекта EDT.

Импорт основной конфигурации выполняется:

  • из файлов XML из каталога ../../src/cf относительно каталога расположения скрипта.
  • из проекта EDT из каталога ../../src/main относительно каталога расположения скрипта.

Параметры импорта задаются в файле .env, содержащим значения переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды указаны в описании скрипта xml2ib.cmd.

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

После выполнения импорта конфигурации в соответствующем каталоге будет создан/изменен файл SYNC_COMMIT, в который будет записана информация о последнем импортированном коммите в формате:

<имя информационной базы>:<хэш коммита>

Если после импорта необходимо выполнить обновление конфигурации базы данных, то при вызове скрипта нужно добавить параметр apply.

ext_ib2src.cmd

Шаблон скрипта для экспорта (выгрузки) расширений в XML-файлы (формат выгрузки конфигуратора 1С:Предприятие 8) или в проект EDT.

Для использования нужно скопировать файл шаблона и переименовать в формате ext_ib2src_<имя расширения>.cmd. В результате получится скрипт для экспорта расширения с указанным именем.

Экспорт расширений выполняется:

  • в файлы XML в каталоги ../../src/cfe/<имя расширения> относительно каталога расположения скрипта.
  • в проект EDT в каталоги ../../src/<имя расширения> относительно каталога расположения скрипта.

Параметры экспорта задаются в файле .env, содержащим значения переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды указаны в описании скрипта ib2src.cmd.

ext_src2ib.cmd

Шаблон скрипта для импорта (загрузки) расширений из XML-файлов (формат выгрузки конфигуратора 1С:Предприятие 8) или из проекта EDT.

Для использования нужно скопировать файл шаблона и переименовать в формате ext_src2ib_<имя расширения>.cmd. В результате получится скрипт для экспорта расширения с указанным именем.

Импорт расширений выполняется:

  • из файлов XML из каталогов ../../src/cfe/<имя расширения> относительно каталога расположения скрипта.
  • из проекта EDT из каталогов ../../src/<имя расширения> относительно каталога расположения скрипта.

Параметры экспорта задаются в файле .env, содержащим значения переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды указаны в описании скрипта src2ib.cmd.

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

После выполнения импорта расширения в соответствующем каталоге будет создан/изменен файл SYNC_COMMIT, в который будет записана информация о последнем импортированном коммите в формате:

<имя информационной базы>:<хэш коммита>

Если после импорта расширения необходимо выполнить обновление конфигурации базы данных, то при вызове скрипта нужно добавить параметр apply.

upd_ib.cmd

Шаблон скрипта обновления конфигурации и расширений информационной базы до актуальной версии из основной ветки разработки в GIT.

Для использования рекомендуется скопировать файл шаблона и переименовать в формате upd_ib_<имя>.cmd. В результате получится скрипт обновления информационной базы с параметрами, указанными в файле настроек <имя>.env.

Импорт основной конфигурации выполняется:

  • из файлов XML из каталога ../../src/cf относительно каталога расположения скрипта.
  • из проекта EDT из каталога ../../src/main относительно каталога расположения скрипта.

Импорт расширений выполняется:

  • из файлов XML из каталогов ../../src/cfe/<имя расширения> относительно каталога расположения скрипта.
  • из проекта EDT из каталогов ../../src/<имя расширения> относительно каталога расположения скрипта.

Параметры импорта задаются в файле .env, содержащим значения переменных среды. Часть или все параметры могут быть переопределены для конкретного скрипта в файле <имя информационной базы>.env Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды:

  • V8_BRANCH - ветка GIT для получения актуальных исходников конфигурации и расширений. Возможные значения:

    • <имя ветки GIT> - указанная ветка будет получена из удаленного репозитария и обновление информационной базы будет выполнено из этой ветки
    • current - текущая ветка будет получена из удаленного репозитария и из нее будет выполнено обновление информационной базы
    • local - обновление информационной базы будет выполнено из текущей ветки
  • V8_VERSION - версия 1С:Предприятия

  • V8_CONVERT_TOOL - инструмент, используемый для импорта (возможные значения: ibcmd - утилита управления автономным сервером, designer - конфигуратор 1С:Предприятие 8)

  • V8_SRC_TYPE - тип исходников, для импорта (возможные значения: edt - из проекта EDT, xml (или любое другое) - из файлов XML)

  • V8_DB_SRV_DBMS - тип используемой СУБД, где расположена информационная база в которую выполняется импорт (MSSQLServer, PostgreSQL, IBMDB2, OracleDatabase) (опционально, по умолчанию: MSSQLServer)

  • V8_DB_SRV_ADDR - адрес сервера СУБД

  • V8_DB_SRV_USR - имя пользователя сервера СУБД

  • V8_DB_SRV_PWD - пароль пользователя сервера СУБД

  • V8_SRV_ADDR - адрес сервера 1С:Предприятие 8

  • V8_IB_NAME - имя информационной базы в которую выполняется импорт

  • V8_IB_USER - имя пользователя информационной базы

  • V8_IB_PWD - пароль пользователя информационной базы

  • V8_EXTENSIONS - список расширений конфигурации для выгрузки, расделенный пробелами (если не указан, то будет выполнен поиск в информационной базе или в каталоге исходников расширений)

  • V8_EXT_LOOKUP - способ поиска расширений в случае, когда список не задан явно в переменной V8_EXTENSIONS (возможные значения: folder - в каталоге исходников расширений, ib (или любое другое) - в информационной базе)

Если требуется выполнить обновление информационной базы из конкретной ветки, то при вызове скрипта нужно добавить параметр, имеющий одно из следующих значений:

  • <имя ветки GIT> - указанная ветка будет получена из удаленного репозитария и обновление информационной базы будет выполнено из этой ветки
  • current - текущая ветка будет получена из удаленного репозитария и из нее будет выполнено обновление информационной базы
  • local - обновление информационной базы будет выполнено из текущей ветки

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

После выполнения импорта конфигурации/расширения в соответствующем каталоге будет создан/изменен файл SYNC_COMMIT, в который будет записана информация о последнем импортированном коммите в формате:

<имя информационной базы>:<хэш коммита>

apply_ib.cmd

Шаблон скрипта применения изменений основной конфигурации и всех расширений базы данных.

Для использования рекомендуется скопировать файл шаблона и переименовать в формате apply_ib_<имя>.cmd. В результате получится скрипт обновления информационной базы с параметрами, указанными в файле настроек <имя>.env.

Параметры выполнения задаются в файле .env, содержащим значения переменных среды. Часть или все параметры могут быть переопределены для конкретного скрипта в файле <имя>.env Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды:

  • V8_VERSION - версия 1С:Предприятия
  • V8_SRC_TYPE - тип исходников, для экспорта (возможные значения: edt - в проект EDT, xml (или любое другое) - в файлы XML)
  • V8_CONVERT_TOOL - инструмент, используемый для обновления (возможные значения: ibcmd - утилита управления автономным сервером, designer - конфигуратор 1С:Предприятие 8)
  • V8_DB_SRV_DBMS - тип используемой СУБД, где расположена информационная база в которую выполняется импорт (MSSQLServer, PostgreSQL, IBMDB2, OracleDatabase) (опционально, по умолчанию: MSSQLServer)
  • V8_DB_SRV_ADDR - адрес сервера СУБД
  • V8_DB_SRV_USR - имя пользователя сервера СУБД
  • V8_DB_SRV_PWD - пароль пользователя сервера СУБД
  • V8_SRV_ADDR - адрес сервера 1С:Предприятие 8
  • V8_IB_NAME - имя информационной базы в которой требуется выполнить обновление
  • V8_IB_USER - имя пользователя информационной базы
  • V8_IB_PWD - пароль пользователя информационной базы
  • V8_EXTENSIONS - список расширений конфигурации для выгрузки, расделенный пробелами (если не указан, то будет выполнен поиск в информационной базе или в каталоге исходников расширений)
  • V8_EXT_LOOKUP - способ поиска расширений в случае, когда список не задан явно в переменной V8_EXTENSIONS (возможные значения: folder - в каталоге исходников расширений, ib (или любое другое) - в информационной базе)

apply_conf.cmd

Скрипт применения изменений основной конфигурации базы данных.

Параметры обновления задаются в файле .env, содержащим значения переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды указаны в описании скрипта apply_ib.cmd.

apply_ext.cmd

Шаблон скрипта для применения изменений расширений базы данных.

Для использования нужно скопировать файл шаблона и переименовать в формате apply_ext_<имя расширения>.cmd. В результате получится скрипт для экспорта расширения с указанным именем.

Импорт расширения выполняется из каталога ../../src/cfe/<имя расширения> относительно каталога расположения скрипта.

Параметры экспорта задаются в файле .env, содержащим значения переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды указаны в описании скрипта apply_ib.cmd.

prepare_update.cmd

Скрипт подготовки обновления конфигурации конфигурацией от поставщика.

Параметры обновления задаются в файле .env, содержащим значения переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды:

  • V8_VERSION - версия 1С:Предприятия
  • V8_CONVERT_TOOL - инструмент, используемый для экспорта конфигураций в файлы (возможные значения: ibcmd - утилита управления автономным сервером, designer - конфигуратор 1С:Предприятие 8)
  • V8_SRC_TYPE - тип исходников, для экспорта (возможные значения: edt - в проект EDT, xml (или любое другое) - в файлы XML)
  • V8_VENDOR_BRANCH - имя ветки в которой размещается конфигурация поставщика
  • V8_UPDATE_BRANCH - имя ветки в которой выполняется подготовка обновленнной конфигурации

Если требуется выполнить обновление информационной базы из конкретной ветки, то при вызове скрипта нужно добавить параметр, имеющий одно из следующих значений:

  • <имя ветки GIT> - указанная ветка будет получена из удаленного репозитария и обновление информационной базы будет выполнено из этой ветки
  • current - текущая ветка будет получена из удаленного репозитария и из нее будет выполнено обновление информационной базы
  • local - обновление информационной базы будет выполнено из текущей ветки

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

После выполнения импорта конфигурации/расширения в соответствующем каталоге будет создан/изменен файл SYNC_COMMIT, в который будет записана информация о последнем импортированном коммите в формате:

<имя информационной базы>:<хэш коммита>

reset_sync_commit.cmd

Скрипт выполняет сброс информации о последних загруженных в базы коммитах (удаляет файлы SYNC_COMMIT) для основной конфигурации и расширений.

Для основной конфигурации удаляются файлы SYNC_COMMIT из каталога ../../src/cf относительно каталога расположения скрипта.

Для расширений удаляются файлы SYNC_COMMIT из каталогов ../../src/cfe/<имя расширения> относительно каталога расположения скрипта.

Если требуется сбросить информацию о последнем коммите только для конфигурации или расширений, то необходимо указать параметр запуска скрипта:

  • **main - сброс для основной конфигурации;
  • **ext - сброс для всех расширений;
  • **<имя расширения> - сброс для расширения с указанным именем.

create_ib.cmd

Скрипт для создания серверной информационной базы.

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

Параметры экспорта задаются в файле .env, содержащим значения переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды:

  • V8_VERSION - версия 1С:Предприятия
  • V8_DB_SRV_ADDR - адрес сервера MS SQL Server
  • V8_DB_SRV_USR - имя пользователя сервера MS SQL Server
  • V8_DB_SRV_PWD - пароль пользователя сервера MS SQL Server
  • V8_SRV_ADDR - адрес сервера 1С:Предприятие 8
  • V8_IB_TEMPLATE - имя файла резервной копии для загрузки в содаваемую базу
  • V8_IB_NAME - имя информационной базы из которой выполняется экспорт

commit.cmd

Скрипт для выполнения коммита от имени указанного пользователя на указанную дату.

Пример:

commit.cmd "Username" "[email protected]" "2023-11-23 12:00:00" "Сообщение коммита"

sonar-check.cmd

Скрипт для запуска проверки в SonarQube.

Запуск скрипта рекомендуется выполнять из корня репозитария. В корне репозитария необходимо наличие файла sonar-project.properties с настройками параметров проверки.

Для настроек дополнительных параметров проверки в корне репозитария должен присутствовать файл .env с указанием значений переменных среды. Переменные среды также могут быть заданы вручную до запуска скрипта.

Переменные среды:

  • SONAR_SCANNER - путь к утилите sonar-scanner (по умолчанию ищется в переменной среды PATH и по пути %PROGRAMW6432%\sonar-scanner\bin\sonar-scanner.bat)
  • SONAR_SCANNER_DATE - дата выполнения проверки
  • SONAR_HOST_URL - адрес сервера SonarQube
  • SONAR_TOKEN - токен доступа к серверу SonarQube