Coder Social home page Coder Social logo

stepa86 / 1c-deploy-and-copydb Goto Github PK

View Code? Open in Web Editor NEW
86.0 18.0 21.0 111 KB

Набор скриптов для деплоя базы 1С через хранилище и копирование через sql-бекап одной базы в другую

License: MIT License

Batchfile 0.24% 1C Enterprise 99.76%
oscript oscript-lib 1c-enterprise

1c-deploy-and-copydb's Introduction

1C-Deploy-and-CopyDB

Набор скриптов для деплоя базы 1С через хранилище и копирование через sql-бекап одной базы в другую

Что это?

Подробнее в статье http://infostart.ru/public/617478/

Есть 2 основных оскрипта deploy.os и CopyBase.os

  1. Оба читают параметры из json файлов
  2. Выполняют их тестирование - что к хранилищу коннектится, что кластер отвечает и что доступ к скулю получен.
  3. CopyBase.os копирует базу данных из другой базы. Типа когда захотелось получить свежие данные из рабочей в свою. Проверяет, что соединений с указанной базой нет, делает скульный бекап источника, разворачивает в указанную базу, отрубает старое хранилище и подрубает новое, обновляет базу. Выглядит так

CopyDB

  1. deploy.os выполняет деплой в РБ. С помощью деплойки блокирует и выгоняет пользователей, обновляется из хранилища и запускает миграцию. Выглядит так

deploy

  1. deploy.os так же можно запустить только для динамического обновления

Отличия от deployka:

  • Есть тест параметров, а то я раз 5 перезапускал скрипт в первый раз довводя правильные параметры. Особенно обидно когда крашится на последнем этапе.
  • Весь код на оскрипте, из батника только вызов. Если кому то в оскрипте удобнее, чем в bat разрабатывать/отлаживать
  • Есть выполнение бекапов, а недавняя история с гитлабом убедила меня, что лишний бекап никогда не помешает, даже когда есть 5 альтернативных планов
  • Более удобное изменение параметров через файлы. Любой параметр указывается в одном и только в одном месте

Параметры

Все параметры перечислены в примере

Любой параметр можно так же переопределить через переменную окружения

set slack_StartMessage=:ghost: *import UPP*
set slack_channel=@Stepa86
..\..\..\oscript\bin\oscript.exe ..\..\..\src\CopyBase.os import.json

Отправка в Slack

Для дублирования сообщений в Slack:

  1. Создайте входящий вебхук для нужной команды
  2. Скопируйте Webhook URL в файл параметров или установите его через переменную окружения set slack_WebhookURL=https://hooks.slack.com/services/...
  3. Переопределите другие параметры при необходимости

Используемые проекты

  • Проект основан на oscript.io

  • /src/deploy.os основана на библиотеке deployka. Для нужд проекта пришлось добавить новую функциональность, которая несколько противоречит основной идее приложения (деплойка использована как библиотека, а не как приложение), и поэтому она не была модифицирована через PR. Включена в этот проект. /src/lib/deployka_m

  • Используются библиотеки cmdline, logos, v8runner, 1commands, readparams и progbar. Они должны быть заранее скачены и установлены через opm

opm update opm
opm install cmdline
opm install logos
opm install v8runner
opm install 1commands
opm install progbar
opm update -all

Навигация

В src весь код, в bin пример

1c-deploy-and-copydb's People

Contributors

kyrales avatar stepa86 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

1c-deploy-and-copydb's Issues

Обновление из хранилища расширения

Добрый день.
Можно ли как-то при обновлении соблюдать такую последовательность

  1. получение из хранилища конфигурации
  2. получение из хранилища расширения1
  3. получение из хранилища расширения2
  4. обновление ИБ.
    запуск с ключем "/С ЗапуститьОбновлениеИнформационнойБазы"

Иерархическое считывание параметров

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

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

Добрый день!
Не могли бы обновить примеры настроек, т.к. вроде как в файле import.json должны указываться настройки подключения к базе, но в примере данные настройки отсутствуют

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.