Skip to content

DirectumCompany/rx-manage-applied-projects

Repository files navigation

Плагин Manage Applied Projects для управлСния инстансами ΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ DirectumRX

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

  • Π˜Π½ΡΡ‚Π°Π½Ρ RX - ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ сСрвисов RX ΠΈ ΠΏΡƒΠ»Π° ΠΈ сайта Π² IIS.
  • **ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ** - Π½Π°Π±ΠΎΡ€, состоящий ΠΈΠ· ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° исходного ΠΊΠΎΠ΄Π° (Π΄Π²Π° ΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²), Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Π’ практичСской Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΌΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ приходится Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… условиях:

  • Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΌ доступС Π½ΡƒΠΆΠ½Ρ‹ нСсколько Ρ€Π°Π·Π½Ρ‹Ρ… вСрсий Directum RX, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ Π±ΠΈΠ»Π΄ DirectumRX;
  • Ссли Π² Ρ‚ΠΈΡ€Π°ΠΆΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ… приходится Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ SQL-запросы, Ρ‚ΠΎ Π½ΡƒΠΆΠ½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ быстро ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Microsoft SQL Server ΠΈ PostgreeSQL;
  • Π΄Π°ΠΆΠ΅ работая с ΠΎΠ΄Π½ΠΎΠΉ вСрсиСй Directum RX, Π½ΡƒΠΆΠ½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ/ΠΏΡ€ΠΎΡ€Π΅Ρ†Π΅Π½Π·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния ΠΈΠ· сосСднСй Π²Π΅Ρ‚ΠΊΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π΅ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ Π² Π‘Π” Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°;
  • ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π±Ρ‹ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π±Π΅Π· пСрСустановки Directum RX;
  • ΠΈ Ρ‚.Π΄.

Π’ΠΈΠΏΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ситуаций - ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Directum RX ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ сущСствСнных сСрвСрных рСсурсов ΠΏΠΎΠ΄ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π½ΠΎ ΠΈ довольно Π½Π΅ΡƒΠ΄ΠΎΠ±Π΅Π½ Π² практичСской Ρ€Π°Π±ΠΎΡ‚Π΅. НапримСр, Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС приходится ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π² Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ состоянии Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ инструмСнтарий.

Π¨Ρ‚Π°Ρ‚Π½Ρ‹ΠΉ инсталлятор Directum RX Π·Π°Ρ‚ΠΎΡ‡Π΅Π½ Π½Π° установку ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈ СдинствСнного инстанса Directum RX. Начиная с вСрсии 4.2 DirectumLauncher позволяСт:

  • ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ нСсколько ΠΊΠΎΠΏΠΈΠΉ Directum RX Π½Π° ΠΎΠ΄Π½Ρƒ ΠΌΠ°ΡˆΠΈΠ½Ρƒ;
  • ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ простыми дСйствиями ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ.

Однако:

  • для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°Ρ‚ΡŒ Π΅Ρ‰Π΅ большС особСнностСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ DirectumLauncher (ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΡ… дСйствий ΠΈ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ошибки достаточно Π²Π΅Π»ΠΈΠΊΠΈ;
  • установка Directum RX Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ заполнСния довольно Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ количСства ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ;
  • ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ рСпозитория с исходниками стандартной ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π° это 700-800 Mb.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Manage Applied Tools ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ установку Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… инстансов RX Π½Π° ΠΎΠ΄Π½Ρƒ ΠΌΠ°ΡˆΠΈΠ½Ρƒ, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ установлСнных инстансов ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ряд Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ. ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ это Π·Π° счСт:

  • использования Π² config.yml ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ выносятся значСния, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ для инстансов ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²;
  • сохранСния Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ установкС инстанса;
  • ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… скриптов, ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰ΠΈΡ… установку Π½ΠΎΠ²ΠΎΠ³ΠΎ инстанса Directum RX;
  • сохранСния Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… описания ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°;
  • Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π½Π° основании описаний ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²;

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° НЕ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для управлСния ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ сСрвСрами.

ВСкущая вСрсия совмСстима с Directum RX 4.2-4.8.

ДСмонстрация установки Directum RX с использованиСм Manage Applied Projects - см. Rutube, Youtube.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ установкС инстансов Directum RX

ИспользованиС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ:

  1. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ инстанс Directum RX Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ своё имя
  2. ВсС инстансы Directum RX Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° всСх инстансов
  3. Для всСх инстансов Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ сСртификат, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ Π² ΠΊΠ°ΠΊΠΎΠΌ-Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π‘Π°ΠΌΠΎΠ΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ мСсто - ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ инстансов.
  4. ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Π»ΠΎΠ³ΠΎΠ² инстансов Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°
  5. Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² инстанса Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ сСрвСрС Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…
  6. Π”ΠΎΠΌΠ°ΡˆΠ½ΠΈΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² инстанса Π»Π΅ΠΆΠ°Ρ‚ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π΄ΠΎΠΌΠ°ΡˆΠ½ΠΈΡ… ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² инстанса (для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ инстанса - свой ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³)
  7. Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ с исходниками ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² инстанса Π»Π΅ΠΆΠ°Ρ‚ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° исходников (для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ инстанса - свой ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ )
  8. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ создан ΠΊΠΎΠ½Ρ„ΠΈΠ³ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (ΠΎΡ‡Π΅Π½ΡŒ упрощСнная вСрсия config.yml) ΠΈ всС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΎΠ² всСх ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ установкС инстансов выполняСтся ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ мСста:

  1. Π’ Powershell, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠΌ ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ администратора Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Install-Module powershell-yaml (установка Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ), послС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ установки ΠΎΠΊΠ½ΠΎ Powershell ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ.
  2. УстановитС Directum RX ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΌ инсталлятором. ПослС установки скопируйтС config.yml ΠΈ ΠΏΠ°ΠΏΠΊΡƒ с сСртификатом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ сСрвисы для общСния Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ. ПослС этого Directum RX ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ - см. Ρ€Π°Π·Π΄Π΅Π» "Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ инстанса".
  3. ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΡŒΡ‚Π΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ:
    • ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ инстансов. НапримСр, c:\rx_ver. Π’Π½ΡƒΡ‚Ρ€ΠΈ этого ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒΡΡ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ для устанавливаСмых инстансов;
    • ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π»ΠΎΠ³ΠΎΠ². НапримСр, c:\rx_logs. Π’Π½ΡƒΡ‚Ρ€ΠΈ этого ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒΡΡ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ с Π»ΠΎΠ³Π°ΠΌΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ инстанса.
    • создайтС ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². НапримСр, c:\rx. Π’ этом ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π±ΡƒΠ΄Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ с описаниями ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ для хранСния исходников ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².
  4. Π’ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ инстансов создайтС ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ для хранСния сСртификата сСрвисов. НапримСр, c:\rx_ver\data_protection. Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ pfx- ΠΈ cer-Ρ„Π°ΠΉΠ»Ρ‹ сСртификата, сохранСнныС Π½Π° шагС β„–1.
  5. ΠšΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Manage Applied Tools
  6. Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ»Ρ‹ update_config_before_install.yml ΠΈ update_config_after_install.yml ΠΈΠ· ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΈΡ…. Π­Ρ‚ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² дальнСйшСм для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ config.yml устанавливаСмых инстансов. Π§Ρ‚ΠΎ слСдуСт ΡƒΡ‡Π΅ΡΡ‚ΡŒ:
    • Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ значСния, ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ Ρ‚Ρ€ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅ΠΌ ...
    • значСния Π±Ρ€Π°Ρ‚ΡŒ ΠΈΠ· config.yml, сохранСнного Π½Π° шагС β„–1.Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ:
      • Π² свойствС DATA_PROTECTION_CERTIFICATE_FILE Π² update_config_before_install.yml ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΏΡƒΡ‚ΡŒ ΠΊ pfx-Ρ„Π°ΠΉΠ», скопированному Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ хранСния сСртификата сСрвисов
      • Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ CONNECTION_STRING Π² update_config_before_install.yml ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… (initial catalog для mssql ΠΈ database для postgres) ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ Π‘Π”, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Ρ…ΠΎΠ΄Π΅ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ установки инстанса. НапримСр, rx_install. Π­Ρ‚Π° Π‘Π” Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒΡΡ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π·Π°Π½ΠΎΠ²ΠΎ ΠΏΡ€ΠΈ установкС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ инстанса
      • Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ home_path Π² update_config_before_install.yml ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² качСствС домашнСго ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π²ΠΎ врСмя установки инстанса. НапримСр, c:\rx\rx_install.

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡΡ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ. Π€Π°ΠΉΠ» update_config_before_install.yml:

variables:
    host_fqdn: 'localhost'
    protocol: 'http'
    home_path: 'c:\rx\rx_install'
devstand_config: &devstand_config
    SAVE_NOCODE_SETTINGS_TO_SOURCES: 'true'
    DEV_STUDIO_CONFIG_PATH: '{{ instance_root_path }}\{{ instance_name }}\etc\_builds\DevelopmentStudio\bin\_ConfigSettings.xml'
common_config: 
    DATABASE_ENGINE: 'mssql'
    CONNECTION_STRING: 'data source=SQLSERVER;initial catalog=rx_install;user id=sa;Password=sa_password'
    QUEUE_CONNECTION_STRING: 'virtualhost=rx;hostname=localhost;port=5672;username=admin;password=admin_password;Exchange=exchange_install'
    DATA_PROTECTION_CERTIFICATE_FILE: 'C:\rx_ver\data_protection\cert.pfx'
    DATA_PROTECTION_CERTIFICATE_FILE_PASSWORD: 'f4bc3790-11e4-45f2-b3de-1acca662b8f4'
    MONGODB_CONNECTION_STRING: 'mongodb://admin:[email protected]:27017'
    AUTHENTICATION_USERNAME: 'Service User'
    AUTHENTICATION_PASSWORD: '11111'
services_config:
    DevelopmentStudio:
        COMPANY_CODE: 'OurCompany'
        UNIQUE_NAMES_IN_OVERRIDES: true
manage_applied_projects:
    postgresql_bin: 'C:\Program Files\PostgreSQL\14\bin'
    run_dds_after_set_project: 'True'

Π€Π°ΠΉΠ» update_config_after_install.yml:

variables:
    purpose: 'Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°'
    database: 'Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…'
    home_path_src: 'ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ исходников'
logs_path:
    LOGS_PATH: 'c:\rx_logs\{{ instance_name }}'
common_config: 
    DATABASE_ENGINE: 'mssql'
    CONNECTION_STRING: 'data source=SQLSERVER;initial catalog={{ database }};user id=sa;Password=sa_password'
    QUEUE_CONNECTION_STRING: 'virtualhost=rx;hostname=localhost;port=5672;username=admin;password=admin_password;Exchange=Exchange_{{ instance_name }}'
    WIDGETS_ORLEANS_SILO_MONGO_GRAIN_STORAGE_DATABASE_NAME: 'GRAIN_{{ database }}'
    WIDGETS_ORLEANS_SILO_MONGO_CLUSTERING_DATABASE_NAME: 'CLUSTERING_{{ database }}'
services_config:
    DevelopmentStudio:
        SERVICE_RUNNER_CONFIG_PATH: '{{ instance_root_path }}\{{ instance_name }}\etc\_{{ instance_name }}\_services_config\ServiceRunner\_ConfigSettings.xml'
        GIT_ROOT_DIRECTORY: '{{ home_path_src }}'

Если Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ инстансы Directum RX Π½Π° Ρ€Π°Π·Π½Ρ‹Π΅ диски (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π±ΠΎΠ»Π΅Π΅ эффСктивного использования дисков ) ΠΈΠ»ΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ сСрвСрами Π‘Π”, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Ρ‹ Ρ„Π°ΠΉΠ»ΠΎΠ² update_config_before_install.yml ΠΈ update_config_after_install.yml.

Установка инстанса Directum RX

Установка ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… инстансов Directum RX выполняСтся ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ. ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ шагов:

  1. ΠŸΠ΅Ρ€Π΅Π΄ установкой инстанса:

    • Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ имя устанавливаСмого инстанса. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π² ΠΈΠΌΠ΅Π½ΠΈ инстанса ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΎΡ‚Ρ€Π°Π·ΠΈΡ‚ΡŒ Π²Π΅Ρ€ΡΠΈΡŽ Directum RX. НапримСр, для установки Directum RX 4.5.30 имя инстанса ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ 4530.
    • ΠΏΠΎΠ΄Π±Π΅Ρ€ΠΈΡ‚Π΅ свободный ΠΏΠΎΡ€Ρ‚(Ρ‹) для Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ инстанса. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ свободСн Ρ‚ΠΎΡ‚ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΏΠΎΡ€Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ
    netstat -an | findstr /i :Π½ΠΎΠΌΠ΅Ρ€_ΠΏΠΎΡ€Ρ‚Π°
    

    Если ΠΏΠΎΡ€Ρ‚ свободСн, Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π² консоль. Если Π·Π°Π½ΡΡ‚ΡŒ, Ρ‚ΠΎ Π² консоли Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

      TCP    0.0.0.0:2086           0.0.0.0:0              LISTENING
      TCP    [::]:2086              [::]:0                 LISTENING
    
    • ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ инстансов отсутствуСт ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с ΠΈΠΌΠ΅Π½Π΅ΠΌ, Ρ€Π°Π²Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½ΠΈ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ инстанса. НапримСр, c:\rx_ver\4530.
  2. ЗапуститС установку инстанса скриптом install_instance.ps1 ΠΏΠ΅Ρ€Π΅Π΄Π°Π² Π΅ΠΌΡƒ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. НапримСр:

    powershell D:\rx-manage-applied-projects\src\ManageAppProjects\map_plugin\install_instance.ps1 ^
                      -rx_instaler_dir_path c:\distr\rx4530 ^
                      -instance_name 4530 ^
                      -port 1085 ^
                      -instance_root_dir_path c:\rx_ver ^
                      -map_plugin_path "D:\rx-manage-applied-projects\src\ManageAppProjects\map_plugin" ^
                      -cfg_before_install_path c:\rx_ver\update_config_before_install.yml ^
                      -cfg_after_install_path c:\rx_ver\update_config_after_install.yml
    
    

    ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ установки:

    • ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ инстансов отсутствуСт ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с ΠΈΠΌΠ΅Π½Π΅ΠΌ, Ρ€Π°Π²Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½ΠΈ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ инстанса. НапримСр, c:\rx_ver\4530
    • ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Redis Π½Π΅ устанавливаСтся. Но Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ наличия Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… вСрсий SDK ΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎ нСобходимости установки этой ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹.
    • для нСпосрСдствСнной установки Directum RX запускаСтся DirectumLauncher с ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹ΠΌ config.yml. Для установки Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² Ρ€Π΅ΠΆΠΈΠΌ "Установка"
    • для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ установки Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΠΊΠ½ΠΎ с консолью, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ открываСтся ΠΏΡ€ΠΈ запуска DirectumLauncher
    • устанавливаСтся минимально Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ для запуска DevelopmentStudio Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚. Π’ΠΎΡ‡Π½Ρ‹ΠΉ состав зависит ΠΎΡ‚ устанавливаСмой вСрсии Directum RX.
    • zip-Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π½Π΅ ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² ΠΏΠ°ΠΏΠΊΡƒ инстанса
    • ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° WebHelp.zip Π½Π΅ устанавливаСтся- ΠΎΠ½Π° Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ мСста Π½Π° дискС, Π° справка доступна Π½Π° club.directum.ru.
    • сразу устанавливаСтся ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Manage Applied Project Π² Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ plugin (ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см. Ρ€Π°Π·Π΄Π΅Π» "Установка ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Manage Applied Projects)
  3. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π² качСствС прСфикса Π² ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ имя инстанса - это ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π»Π΅Π³ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΈ для ΠΊΠ°ΠΊΠΎΠ³ΠΎ инстанса созданы. НапримСр, 4530_BoxOnly.yml.
  • ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ рСкомСндуСтся ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ стандартная вСрсия Directum RX. ПослС Π΅Ρ‘ настройки - создания оргструктуры, создания ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ‚.ΠΏ., этот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ основу для созданию Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

do map generate_empty_project_config  c:\rx\4530_BoxOnly.yml

ПослС Ρ‡Π΅Π³ΠΎ Π΅Π³ΠΎ слСдуСт Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  • Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² создайтС ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с ΠΈΠΌΠ΅Π½Π΅ΠΌ, Ρ€Π°Π²Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ инстанса. НапримСр, c:\rx\4530.
  • Π²Π½ΡƒΡ‚Ρ€ΠΈ созданного ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° создайтС Π΄Π²Π° ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°:
    • d - ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ для Π΄ΠΎΠΌΠ°ΡˆΠ½ΠΈΡ… ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² всСх ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² инстанса
    • s - ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ для Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² всСх ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² инстанса
  • Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ для Π΄ΠΎΠΌΠ°ΡˆΠ½ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² инстанса создайтС ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. НапримСр, c:\rx\4530\BoxOnly.
  • имя Π‘Π” Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ имя инстанса, Ρ‚Π°ΠΊ ΠΈ имя ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. НапримСр, rx4530_BoxOnly.

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡΡ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ (имя ΠΊΠΎΠ½Ρ„ΠΈΠ³Π° 4530_BoxOnly.yml):

# ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
variables:
    # НазначСниС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
    purpose: 'Directum RX 4.5.30 (чистая ΠΊΠΎΡ€ΠΎΠ±ΠΊΠ°)'
    # Π‘Π” ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
    database: 'rx4530_BoxOnly'
    # Π”ΠΎΠΌΠ°ΡˆΠ½ΡΡ дирСктория, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ хранятся всС Π΄Π°Π½Π½Ρ‹Π΅ сСрвисов.
    # Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅.
    home_path: 'c:\rx\4530\d\BoxOnly'
    # ΠšΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ c рСпозиториями ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
    home_path_src: 'c:\rx\4530\s\'
# Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ
services_config:
    DevelopmentStudio:
        REPOSITORIES:
            repository: 
            -   '@folderName': 'BoxWork'
                '@solutionType': 'Work'
                '@url': ''
            -   '@folderName': 'Box'
                '@solutionType': 'Base'
                '@url': ''
  1. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚:
do map create_project c:\rx\4530_BoxOnly.yml --package_path=C:\rx_ver\4530\etc\_builds\DirectumRX\DirectumRXbase.dat --need_import_src=True

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π±ΡƒΠ΄Π΅Ρ‚ создан Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π² Π½Π΅Π³ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ принята стандартная прикладная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ приняты стандартныС ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² инстансС

Π’Ρ‚ΠΎΡ€ΠΎΠΉ (Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ, Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚Ρ‹ΠΉ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅) ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ do map create_project. Но ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Π½Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ BoxOnly минимально Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ - ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ оргструктуру, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ записи, Π° ΠΏΠΎΡ‚ΠΎΠΌ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ do map clone_project - см. ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π·Π΄Π΅Π».

ΠŸΡ€ΠΈ этом слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ:

  • рСкомСндуСтся Π² Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ с исходниками. Π’ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ это касаСтся ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Box с исходниками стандартной вСрсии Directum RX. Π­Ρ‚ΠΎ позволяСт сущСствСнно ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ мСсто Π½Π° дискС
  • Π΅ΡΡ‚ΡŒ Π΄Π²Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ исходников ΠΊ DevelopmentStudio - Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΈΠΌΠΏΠΎΡ€Ρ‚ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. По возмоТности стоит ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π². Если ΠΆΠ΅ трСбуСтся ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‚ΠΎ, Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв, цСлСсообразно ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ исходников, ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π΅Π³ΠΎ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠŸΡ€ΠΈ этом слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ DevelopmentStudio ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ Π² ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠΎ списку Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ подходящСго Ρ‚ΠΈΠΏΠ°.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ½Ρ„ΠΈΠ³Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° для измСнСния Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ "ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ поручСния", ΠΏΡ€ΠΈ этом Π½Π° Π±Π°Π·ΠΎΠ²ΠΎΠΌ слоС установлСно Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ стандартная прикладная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, Π½ΠΎ ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ "ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Π΅ константы". Имя ΠΊΠΎΠ½Ρ„ΠΈΠ³Π° 4530_RecurringActionItems.yml:

# ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
variables:
    # НазначСниС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
    purpose: 'Π¨Π°Π±Π»ΠΎΠ½ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ поручСния'
    # Π‘Π” ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
    database: 'rx4530_RecurringActionItems'
    # Π”ΠΎΠΌΠ°ΡˆΠ½ΡΡ дирСктория, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ хранятся всС Π΄Π°Π½Π½Ρ‹Π΅ сСрвисов.
    # Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅.
    home_path: 'c:\rx\4530\d\RecurringActionItems'
    # ΠšΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ c рСпозиториями ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
    home_path_src: 'c:\rx\4530\s\'
# Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ
services_config:
    DevelopmentStudio:
        REPOSITORIES:
            repository: 
            -   '@folderName': 'rx-template-recurringactionitems'
                '@solutionType': 'Work'
                '@url': 'https://github.com/DirectumCompany/rx-template-recurringactionitems'
            -   '@folderName': 'rx-template-settings'
                '@solutionType': 'Base'
                '@url': 'https://github.com/DirectumCompany/rx-template-settings'
            -   '@folderName': 'Box'
                '@solutionType': 'Base'
                '@url': ''

ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ создания Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π° Π½Π΅Π³ΠΎ:

  1. ΠšΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ (ΠΈΠ»ΠΈ создайтС) ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ с рСпозиториями ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

  2. На основС Ρ€Π°Π½Π΅Π΅ созданного ΠΊΠΎΠ½Ρ„ΠΈΠ³Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° создайтС Π½ΠΎΠ²Ρ‹ΠΉ ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ.

  3. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ копию ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

    do map clone_project c:\rx\4530_BoxOnly.yml c:\rx\4530_RecurringActionItems.yml
    

    Π‘ΡƒΠ΄Π΅Ρ‚ создана копия ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Π½Π΅Π³ΠΎ.

Π’Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ BoxOnly ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

do map set c:\rx\4530_BoxOnly.yml

Командой dds_wo_deploy ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ DevelopmentStudio Π±Π΅Π· фактичСского ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚

`do map dds_wo_deploy  c:\rx\4530_BoxOnly.yml`

Π­Ρ‚ΠΎ позволяСт ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ исходники Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ с Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ. ΠŸΡ€ΠΈ этом Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Установка ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Manage Applied Projects

Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ двумя способами:

  1. Как ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρƒ Directum Launcher
  2. Как plugin Directum Launcher

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ с plugin ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅, ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… инстансов RX - ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ сразу Π²ΠΎ всСх инстансах RX.

Установка ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Directum Launcher

  1. Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ ManageAppProjects.zip ΠΈΠ· https://github.com/DirectumCompany/rx-manage-applied-projects/releases.

  2. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΠΏΠ°ΠΏΠΊΡƒ Directum Launcher ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

    do.bat components add_package <ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ>\ManageAppProjects.zip
    

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρƒ, ΡƒΡΡ‚Π°Π½ΠΎΠ²Π»Π΅Π½Π½ΡƒΡŽ Ρ‚Π°ΠΊΠΈΠΌ способом, Π΅Ρ‘ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ сначала ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ:

do.bat components delete map

Установка ΠΊΠ°ΠΊ plugin Directum Launcher

  1. ΠšΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹:

    git clone https://github.com/DirectumCompany/rx-manage-applied-projects

  2. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΠΏΠ°ΠΏΠΊΡƒ Directum Launcher ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

do.bat install_plugin <ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ>\src\ManageAppProjects\map_plugin\

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρƒ, ΡƒΡΡ‚Π°Π½ΠΎΠ²Π»Π΅Π½Π½ΡƒΡŽ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ достаточно Π²Ρ‹Ρ‚ΡΠ½ΡƒΡ‚ΡŒ ΠΈΠ· рСпозитория обновлСния.

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ инстанса

Для удалСния инстанса Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ скриптом remove_instance_rx.ps1. НапримСр

powershell D:\rx-manage-applied-projects\src\ManageAppProjects\map_plugin\remove_instance_rx.ps1 c:\rx_ver 4530

ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

  • Π±ΡƒΠ΄ΡƒΡ‚ остановлСны сСрвисы инстанса
  • ΡƒΠ΄Π°Π»Π΅Π½Ρ‹ ΠΏΡƒΠ» ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π²Π΅Π±-сСрвСр инстанса
  • ΡƒΠ΄Π°Π»Π΅Π½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ инстанса

Π”Π°Π½Π½Ρ‹Π΅ инстанса ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π΅ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ.

Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ дистрибутивов Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ

Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° дистрибутивов Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ выглядит нСсколько слоТнСС, Ρ‡Π΅ΠΌ просто Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ:

  • ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² дистрибутивС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько
  • Ρƒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² дистрибутивов для Ρ€Π°Π·Π½Ρ‹Ρ… Ρ†Π΅Π»Π΅ΠΉ ΠΈ с Ρ€Π°Π·Π½Ρ‹ΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
  • ΠΊΡ€ΠΎΠΌΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² дистрибутив Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ этот процСсс ΠΏΡ€ΠΎΡ‰Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ с описаниСм дистрибутивов ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС дистрибутивы.

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ с описаниСм дистрибутивов

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ с описаниСм дистрибутив ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

do map generate_empty_distributions_config ΠΏΡƒΡ‚ΡŒ_ΠΊ_создаваСмому_ΠΊΠΎΠ½Ρ„ΠΈΠ³Ρƒ

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π±ΡƒΠ΄Π΅Ρ‚ создан шаблон ΠΊΠΎΠ½Ρ„ΠΈΠ³Π°

# НазваниС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
project: ''

# mtd-Ρ„Π°ΠΉΠ», ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ бСрСтся Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ вСрсии
mtd_for_version: '....Solution.Shared\Module.mtd'

# XML-ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для формирования ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² процСссС увСличСния вСрсии Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
devpacks_for_increment_version:
-   config: ''

# Π€Π°ΠΉΠ»Ρ‹ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ дистрибутив
to_every_set:
-   'src': ''
    'dst': ''

# ОписаниС дистрибутивов
distributions:
    # ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ дистритутива
-   'id': ''
    # описаниС сути дистрибутива
    'comment': ''
    # ΠΏΠ°ΠΏΠΊΠ° дистрибутива, создаСтся Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΠ°ΠΏΠΊΠΈ вСрсии Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
    'folder_name': ''
    # Значимая Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠΌΠ΅Π½ΠΈ zip-Π°Ρ€Ρ…ΠΈΠ²Π° с дистрибутивом. Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡΡ‚ΡƒΡŽ строку - Π°Ρ€Ρ…ΠΈΠ² Π½Π΅ создаСтся
    'zip_name': 'ΠžΠ±Ρ€Π°Π·Π΅Ρ† '
    # ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² дистрибутив
    'devpacks':
    -   'config': '.xml'
        'result': '.dat'
    # Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ дистрибутив
    'files':
    -   'src': ''
        'dst': ''

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ заполнСния ΠΊΠΎΠ½Ρ„ΠΈΠ³Π° описания дистрибутивов:

  • mtd_for_version - ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ (ΠΎΡ‚ корня рСпозитория) ΠΏΡƒΡ‚ΡŒ ΠΊ mtd-Ρ„Π°ΠΉΠ»Ρƒ основного solution-Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Из этого mtd-Ρ„Π°ΠΉΠ»Π° Π±ΡƒΠ΄Π΅Ρ‚ Π±Ρ€Π°Ρ‚ΡŒΡΡ Π½ΠΎΠΌΠ΅Ρ€ вСрсии Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
  • devpacks_for_increment_version - xml-Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ (см. Π² справкС ΠΏΡ€ΠΎ Π½Π΅Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ экспорта Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ вСрсии Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Π’ этом ΠΊΠΎΠ½Ρ„ΠΈΠ³Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ всС solution Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ IncludeAssemblies Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true.
  • to_every_set - список Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ скопированы Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ дистрибутив.
    • src - ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ»ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ/ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΡ€ΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.
    • dst - ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ (ΠΎΡ‚ ΠΏΠ°ΠΏΠΊΠΈ дистрибутива) ΠΏΡƒΡ‚ΡŒ назначСния
  • distributions - список описаний дистрибутивов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ
    • folder_name - имя ΠΏΠ°ΠΏΠΊΠΈ с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ дистрибутивом
    • zip_name - имя Π°Ρ€Ρ…ΠΈΠ²Π° с дистрибутивом. К этому ΠΈΠΌΠ΅Π½ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠΌΠ΅Ρ€ вСрсии.
    • devpacks - список ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² дистрибутив.
      • config - ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ (ΠΎΡ‚ корня рСпозитория) ΠΈΠ»ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ xml-Ρ„Π°ΠΉΠ»Ρƒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
      • result - ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ (ΠΎΡ‚ ΠΏΠ°ΠΏΠΊΠΈ дистрибутива) ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ
    • files - список Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ скопированы Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ дистрибутив.
      • src - ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ»ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ/ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΡ€ΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.
      • dst - ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ (ΠΎΡ‚ ΠΏΠ°ΠΏΠΊΠΈ дистрибутива) ΠΏΡƒΡ‚ΡŒ назначСния

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ заполнСния Ρ„Π°ΠΉΠ»Π°

# НазваниС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
project: 'ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ'

# mtd-Ρ„Π°ΠΉΠ», ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ бСрСтся Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ вСрсии
mtd_for_version: 'DirRX.SampleSolution\DirRX.SampleSolution.Shared\Module.mtd'

# XML-ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для формирования ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² процСссС увСличСния вСрсии Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
devpacks_for_increment_version:
-   config: 'build\devpack_SampleSolution.xml'

# Π€Π°ΠΉΠ»Ρ‹ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ дистрибутив
to_every_set:
-   'src': 'doc'
    'dst': 'doc'
-   'src': 'data\Templates'
    'dst': 'Templates'

# ОписаниС дистрибутивов
distributions:
    # ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ дистритутива
-   'id': 'implementation'
    # описаниС сути дистрибутива
    'comment': 'Для использования Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… внСдрСния'
    # ΠΏΠ°ΠΏΠΊΠ° дистрибутива, создаСтся Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΠ°ΠΏΠΊΠΈ вСрсии Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
    'folder_name': 'SampleSolution_implementation'
    # Значимая Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠΌΠ΅Π½ΠΈ zip-Π°Ρ€Ρ…ΠΈΠ²Π° с дистрибутивом. Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡΡ‚ΡƒΡŽ строку - Π°Ρ€Ρ…ΠΈΠ² Π½Π΅ создаСтся
    'zip_name': 'ΠžΠ±Ρ€Π°Π·Π΅Ρ† Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ (для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² внСдрСния)'
    # ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² дистрибутив
    'devpacks':
    -   'config': 'build\devpack_SampleSolution.xml'
        'result': 'SampleSolution.dat'
    -   'config': 'build\devpack_SampleSolution_debug.xml'
        'result': 'SampleSolution_debug.dat'
    # Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ дистрибутив
    'files':
    -   'src': 'build\distributions\SampleSolution_implementation\readme.md'
        'dst': 'readme.md'
    -   'src': 'build\distributions\SampleSolution_implementation\doc.md'
        'dst': 'doc.md'

    # ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ дистритутива
-   'id': 'evaluation'
    # описаниС сути дистрибутива
    'comment': 'Для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π² ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… цСлях - Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊΠΈ, Π±Π΅Π· исходников.
ВСкст коммСнтария ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ нСсколько строк'
    # ΠΏΠ°ΠΏΠΊΠ° дистрибутива, создаСтся Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΠ°ΠΏΠΊΠΈ вСрсии Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
    'folder_name': 'SampleSolution_evaluation'
    # Значимая Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠΌΠ΅Π½ΠΈ zip-Π°Ρ€Ρ…ΠΈΠ²Π° с дистрибутивом. Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡΡ‚ΡƒΡŽ строку - Π°Ρ€Ρ…ΠΈΠ² Π½Π΅ создаСтся
    'zip_name': 'ΠžΠ±Ρ€Π°Π·Π΅Ρ† Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ (ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ вСрсия)'
    # ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² дистрибутив
    'devpacks':
    -   'config': 'build\devpack_SampleSolution_binonly.xml'
        'result': 'SampleSolution_evaluation.dat'
    # Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ дистрибутив
    'files':
    -   'src': 'build\distributions\SampleSolution_evaluation\readme.md'
        'dst': 'readme.md'

Π‘ΠΎΠ±Ρ€Π°Ρ‚ΡŒ дистрибутивы Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

Π‘Π±ΠΎΡ€ΠΊΠ° дистрибутивов выполняСтся ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ

do map build_distributions ΠΏΡƒΡ‚ΡŒ_ΠΊ_Ρ„Π°ΠΉΠ»Ρƒ_описания_дистрибутивов ΠΏΡƒΡ‚ΡŒ_ΠΊ_ΠΏΠ°ΠΏΠΊΠ΅_назначСния ΠΏΡƒΡ‚ΡŒ_ΠΊ_Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ_Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ --increment_version

Π³Π΄Π΅:

  • ΠΏΡƒΡ‚ΡŒ_ΠΊ_Ρ„Π°ΠΉΠ»Ρƒ_описания_дистрибутивов - ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΌΡƒ Ρ„Π°ΠΉΠ»Ρƒ с описаниСм дистрибутивов
  • ΠΏΡƒΡ‚ΡŒ_ΠΊ_ΠΏΠ°ΠΏΠΊΠ΅_назначСния - ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ создана ΠΏΠ°ΠΏΠΊΠ΅ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ вСрсии, Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄ΡƒΡ‚ созданы ΠΏΠ°ΠΏΠΊΠΈ с дистрибутивами
  • ΠΏΡƒΡ‚ΡŒ_ΠΊ_Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ_Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ - ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
  • --increment_version - Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π½Π° Ρ‚ΠΎ, Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ»ΠΈ Π½Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ вСрсии Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

Π­ΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

Команда export_devpack ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. НапримСр, для установки Π½Π° тСстовый стСнд

do map export_devpack имя_Ρ„Π°ΠΉΠ»Π°_ΠΊΠΎΠ½Ρ„ΠΈΠ³Π°_ΠΏΠ°ΠΊΠ΅Ρ‚Π°_Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ имя_ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ повСдСния ΠΊΠΎΠΌΠ°Π½Π΄

ΠŸΠΎΠ»Π½Ρ‹ΠΉ список ΠΊΠΎΠΌΠ°Π½Π΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ do map help

Π£ ΠΊΠΎΠΌΠ°Π½Π΄ set, clone_project ΠΈ create_project Π΅ΡΡ‚ΡŒ ΠΎΠ±Ρ‰Π΅Π΅ Π² ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ:

  • ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ --confirm, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ»ΠΈ Π½Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ запросы Π½Π° ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ дСйствий ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ΠŸΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ --confirm=False запросы Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - true.
  • ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ --rundds, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ»ΠΈ Π½Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ DevelopmentStudio послС выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ опрСдСляСтся ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ run_dds_after_set_project Π² config.yml. Если ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π² config.yml Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ false.

set - ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π±ΡƒΠ΄Π΅Ρ‚ скоррСктирован config.yml, ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΈ сСрвисов ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡ‰Π΅Π½Ρ‹ сСрвисы RX.

do map set <имя Ρ„Π°ΠΉΠ»Π° с описаниСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°>

create_project - созданиС Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ:

  1. ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» описания ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
  2. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ do map create_project <Ρ„Π°ΠΉΠ»-описания-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°>

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния:

  • Π±ΡƒΠ΄Π΅Ρ‚ создана новая Π‘Π”
  • Π±ΡƒΠ΄Π΅Ρ‚ создан Π½ΠΎΠ²Ρ‹ΠΉ домашний ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
  • Ссли Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ --package_path ΡƒΠΊΠ°Π·Π°Π½ ΠΏΠ°ΠΊΠ΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
    • Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ принята Π² Π‘Π” ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° инициализация
    • Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ стандартныС ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹
    • Ссли ΡƒΠΊΠ°Π·Π°Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ --need_import_src, Ρ‚ΠΎ сразу Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ исходныС ΠΊΠΎΠ΄Ρ‹ ΠΈΠ· Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

clone_project - созданиС ΠΊΠΎΠΏΠΈΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ бСзопасно ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ измСнСния Π² Π²Π΅Ρ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ копию ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ:

  1. ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» описания ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
  2. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ do map clone_project <Ρ„Π°ΠΉΠ»-описания-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°-источника> <Ρ„Π°ΠΉΠ»-описания-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°-назначСния>

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния:

  • Π±ΡƒΠ΄Π΅Ρ‚ создана копия Π‘Π”
  • Π±ΡƒΠ΄Π΅Ρ‚ создана копия домашнСго ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹:

  • ΠΏΡ€ΠΈ использовании Microsoft SQL Server:
    • создаСтся полная копия исходной Π‘Π” с Ρ€Π΅ΠΆΠΈΠΌΠΎΠΌ COPY_ONLY, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠ°Ρ‚ΡŒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ³ΠΎ копирования
    • копия Π‘Π” создаСтся Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅, Π³Π΄Π΅ располоТСна сама Π‘Π” ΠΈ удаляСтся послС восстановлСния ΠΈΠ· Π½Π΅Ρ‘ ΠΊΠΎΠΏΠΈΠΈ Π‘Π”
  • ΠΏΡ€ΠΈ использовании PostgreSQL:
    • копия Π‘Π” ΠΏΠ°Ρ€ΠΎΠΉ выполняСтся ΠΏΠ°Ρ€ΠΎΠΉ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ pg_dump | psql ΠΈ для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ настройки Ρ„Π°ΠΉΠ»Π° ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ pgpass.conf

dds_wo_deploy - Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ DevelopmentStudio для просмотра/рСдактирования исходников ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π±Π΅Π· возмоТности ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ

ЗапускаСт DevelopmentStudio для просмотра/рСдактирования исходников ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ --project_config_path) Π±Π΅Π· возмоТности. ПолСзна для ситуаций, ΠΊΠΎΠ³Π΄Π° трСбуСтся ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ исходники сразу Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹:

  • создаСт Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ config.yml с пустыми ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ LOCAL_WEB_RELATIVE_PATH, LOCAL_SERVER_HTTP_PORT ΠΈ SERVICE_RUNNER_CONFIG_PATH Π² сСкции DevelopmentStudio (это Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ);
  • Π½Π° основС Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ config.yml создаСт Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ _ConfigSettings.xml для DevelopmentStudio;
  • запускаСт DevelopmentStudio пСрСдавая Π΅ΠΌΡƒ созданных Π°Π½Π°Π»ΠΎΠ³ _ConfigSettings.xml;
  • ΠΈΠΌΠ΅Π½Π° Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² выводятся Π² Π»ΠΎΠ³;
  • послС закрытия DevelopmentStudio Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ» ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ.

generate_empty_project_config - ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ для Ρ„Π°ΠΉΠ»Π° описания ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

Боздаст пустой шаблон Ρ„Π°ΠΉΠ»Π° описания ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

clear_log - ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ старых Ρ„Π°ΠΉΠ»ΠΎΠ² Π»ΠΎΠ³ΠΎΠ²

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ RX настроСн Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ дСнь ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ сСрвисы RX ΡΠΎΠ·Π΄Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π»ΠΎΠ³ΠΎΠ². На Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ мСстС ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π²Π°ΠΆΠ½Ρ‹ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ Π»ΠΎΠ³ΠΈ, Π° старыС Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ особого значСния. Для удалСния Π»ΠΎΠ³ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

do map clear_log

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ Π»ΠΎΠ³ΠΈ старСС 3-Ρ… Π΄Π½Π΅ΠΉ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ --limit_day ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ удаляСмых Π»ΠΎΠ³ΠΎΠ². Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ всСх Π»ΠΎΠ³ΠΎΠ², ΠΊΡ€ΠΎΠΌΠ΅ ΡΠ΅Π³ΠΎΠ΄Π½ΡΡˆΠ½ΠΈΡ…:

do map clear_log  --limit_day=1

current - информация ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ:

do map current

url - ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ url ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π²Π΅Π±-доступу Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

do map url

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ do map url | clip ссылку ΠΌΠΎΠΆΠ½ΠΎ сразу ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°.

check_config - ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ содСрТимоС Ρ„Π°ΠΉΠ»Π° описания ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

do map check_config

check_sdk - ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… вСрсий .Net

do map check_sdk

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΈ соотвСтствиС вСрсий для git ΠΈ dotnet.

run_script - Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ python-скрипт Π² контСкстС DirectumLauncher

do map run_script --script_filename=script_example.py 

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ внСшний python-скрипт Π² контСкстС DirectumLauncher.

Π’ скриптС Π±ΡƒΠ΄Π΅Ρ‚ доступны:

  • всС ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² map_installer.py Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΌΠΎΠ΄ΡƒΠ»ΠΈ
  • прСдопрСдСлСнная пСрСмСнная self_map - ссылка Π½Π° экзСмпляр класса ManageAppliedProject, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ вызываСтся ΠΊΠΎΠΌΠ°Π½Π΄Π° run_script.
  • Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ доступны Π² ΠΊΠΎΠ΄Π΅ скрипта Π² качСствС Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π·ΠΎΠ²Π° скрипта с Π΄ΠΎΠΏ.ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ скрипта - см. script_example.py.

do map run_script --script_filename=script_example.py arg1=value1 arg2=value2

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ скриптов

  1. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ ΠΈΠ»ΠΈ Π½Π΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ для скрипта:
# ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ Π»ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° arg1
if "arg1" not in locals():
    log.error("ΠŸΡ€ΠΎΠΏΡƒΡ‰Π΅Π½ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ arg1")
    sys.exit(-1)
  1. ИспользованиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² экзСмпляра класса ManageAppliedProject, Π² контСкстС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ выполняСтся скрипт
# ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚ΡŒ ΠΊ config.yml Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ экзСмпляра RX
log.info(f'ΠŸΡƒΡ‚ΡŒ ΠΊ config.yml: {self_map.config_path}')
# Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ класса ManageAppliedProject
self_map.check_sdk(need_pause=False)
  1. ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π² map_installer.py
# Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Π² map_installer.py
log.info(f'ВСрсия RX: {_get_rx_version()}')
  1. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, доступныС Π² основном Ρ‚Π΅Π»Π΅ скрипта, нСдоступны Π² функциях, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π² скриптС. НапримСр, ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ скрипта
var1 = "value"
def f1():
    log.info(f'  f1() run')
    print(var1)
f1()

Π±ΡƒΠ΄Π΅Ρ‚ ошибка NameError: name 'var1' is not defined.

Для исправлСниС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ:

var1 = "value"
def f1(var1):
    log.info(f'  f1() run')
    print(var1)
f1(var1)
  1. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈΠΈ ΠΈ классы, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² основном Ρ‚Π΅Π»Π΅ скрипта, доступны Π² самом скриптС, Π½ΠΎ Π½Π΅ доступны для Π²Ρ‹Π·ΠΎΠ²Π° Π΄Ρ€ΡƒΠ³ Π² Π΄Ρ€ΡƒΠ³Π΅. НапримСр, ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ скрипта
def f1():
    log.info(f'  f1() run')
def f2():
    log.info(f'  f2() run')
    f1()
f1()
f2()

Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ f1() ΠΈΠ· основного Ρ‚Π΅Π»Π° скрипта ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, Π° ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ f1() Π²Π½ΡƒΡ‚Ρ€ΠΈ f() Π±ΡƒΠ΄Π΅Ρ‚ ошибка NameError: name 'f1' is not defined. Для исправлСниС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ классы ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-ΠΎΠ±Π²Π΅Ρ€Ρ‚ΠΊΠΈ, Π° Π² Ρ‚Π΅Π»Π΅ скрипта Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±Π²Π΅Ρ€Ρ‚ΠΊΡƒ:

def main_func():
    def f1():
        log.info(f'  f1() run')
    def f2():
        log.info(f'  f2() run')
        f1()
    f1()
    f2()
main_func()