Приветствую!

Создал пакет проект (пробовал и через шаблон bpmonline и через clio create pkg)

При компиляции из студии изменения не подхватываются, clio restart делаю после build, приходится всю конфигурацию компилировать

 

Подскажите , может кто сталкивался? в какую сторону смотреть?

Нравится

1 комментарий

Добрый день,

 

Для того, чтобы приложение подтягивало сборку из Пакета-Проекта, нужно:

  1. Название dll сборки Пакета-Проекта,  должно совпадать с названием пакета.
  2. dll сборка Пакета-Проекта должна находится в соответсвующей директории: 
    • TS.Conf/PackageName/Files/Bin/ (для Framework
    • TS.Conf/PackageName/Files/Bin/netstandard (для .NetCore)
  3. Для .NetCore флаг Feature-UseSeparateDirectoryToLoadPackageAssemblies (в Terrasoft.WebHost.dll.config) должен быть включен:

    <add key="Feature-UseSeparateDirectoryToLoadPackageAssemblies" value="true" />
  4. Cборка должна быть помечена аттрибутом:

    [assembly: PackageReferenceAssembly(RefAssemblyMarker.All)]

    и добавить: using Terrasoft.Core.Attributes;

    Это делается в AssemblyInfo.cs (папка Properties - Properties\AssemblyInfo.cs )

    Если используется, новая версия проекта *.csproj, то в нем AssemblyInfo.cs генерируется автоматически на основании проекта.

    Для того, чтобы небыло конфилктов автогенерируемой AssemblyInfo.cs с созаной вручную, нужно в проекте *.csproj, отключить автогенерацию AssemblyInfo.cs.

    Для этого в проект *.csproj, надо добавить запись:

    <PropertyGroup>

               .........................................

               <GenerateAssemblyInfo>false</GenerateAssemblyInfo>

               .......................................

    </PropertyGroup>

 

Пример AssemblyInfo.cs

using System.Reflection;
using System.Runtime.InteropServices;
using Terrasoft.Core.Attributes;
 
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: PackageReferenceAssembly(RefAssemblyMarker.All)]
[assembly: AssemblyTitle("cliogate")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("cliogate")]
[assembly: AssemblyCopyright("Copyright ©  2019")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
 
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components.  If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
 
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("e24226f9-c177-458f-af34-9338e2699983")]
 
// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version
//      Build Number
//      Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.1.1.2")]
[assembly: AssemblyFileVersion("1.1.1.2")]

 

Если эти рекомендации не помогли решить проблему, обратитесь по адресу support@creatio.com, так как без прямого доступа сложно определить, в чем проблема.

 

С уважением,

Дарий

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

Коллеги всем доброго времени суток!

Подскажите есть ли возможность создавать пакет- проект под NetStandart?

Кто ни будь сталкивался с такой задачей?

Нравится

3 комментария

Алексей, добрый день!

В пакете-проекте проект, для этого пакета, создается в ручную, после компиляции этого проета ми получим библиотеки которые будут подгружены приложением Creatio. Будет ли код под framework или и  под netstandard это уже не имеет значения. Важно что dll для framework должны располагаться в  Files\Bin\ пакета, а для netstandard в Files\Bin\netstandard

Дима Вовченко,

благодарю.

Есть еще один вопрос.

Пытаюсь создать модель в проекте через команду но мне выдает ошибки:

 clio add-item model ExcelReportLog  -e ExcelReports

Your app does not contain clio API.

You should consider install it via the 'clio install-gate' command.

System.Net.WebException: The remote server returned an error: (404) Not Found.

   at System.Net.HttpWebRequest.GetResponse()

   at Creatio.Client.ATFWebRequestExtension.GetServiceResponse(HttpWebRequest request)

   at Creatio.Client.CreatioClient.ExecuteGetRequest(String url, Int32 requestTimeout)

   at Clio.Program.GetClassModels(String entitySchemaName, String fields)

   at Clio.Program.AddModels(ItemOptions opts)

Хотя cliogate я поставил на среду. В чем может быть проблема?

 

Дима Вовченко,

правильно я понял, что мы создаем через clio новый проект, пишем наш код билдим и потом полученную библиотеку подставляем в 

Files\Bin\ и Files\Bin\netstandard?

И не важно что сам проект будет framework  v4.7.2?

Или нужно заводить проект под netstandard?

 

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

Проблема в работе утилиты CLIO, но удаться собрать в один пакет несколько, хотя данная функция завялена на странице проекта:

 

Compress more than one packages to a single .gz file if the command runs from a directory that contains the package.

clio generate-pkg-zip <PACKAGE_NAME_1>,<PACKAGE_NAME_2>,<PACKAGE_NAME_3>

Нравится

4 комментария

Александр Тыра, здравствуйте.

Можете уточнить где именно была заявлена данная функциональность?

Вся информация о работе Clio находится на github разработчиков продукта. Возможно, Вам смогут помочь и там.

https://github.com/Advance-Technologies-Foundation

Sorotiuk Anna,

 Вот тут в wiki

https://github.com/Advance-Technologies-Foundation/clio/wiki/generate-p… в самом низу " Compress more than one packages to a single .gz file if the command runs from a directory that contains the package. "

Александр Тыра,

Спасибо за уточнение.

Насколько вижу, на GitHub разработчиков создана проблема соответствующая Вашему запросу.

https://github.com/Advance-Technologies-Foundation/clio/issues/190

Могу только предложить ожидать ответа там.

Sorotiuk Anna,

Это я и написал)

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

Может кто использует Clio ? Я так понимаю разработчики заняты, так как на странице GitHub версия исходников 2.0.0.10, при этом указано что последняя версия 2.0.0.9, а при установке через dotnet tool ставиться 2.0.0.12. На вопросы ответов не вижу, рекомендации по ошибкам не как не обрабатываются.

Потому может кто в курсе, при установке пакета делается ли резервная копия конфигурации, и если да то можно ли восстановить еще через Clio?

Нравится

4 комментария
Лучший ответ

Как один из вариантов, да, всё верно.

Александр, по последнему вопросу:

На данный момент для создания резервной копии необходимо самому выгружать пакет/ы с помощью Clio (той версии, которой нужно) и уже после установки новой версии (в случае непредвиденных ситуаций) откатывать на предыдущую версию.

Зверев Александр,

То есть в начале нужно сделать pull для пакетов которые буду обновлять, а потом push для пакетов которые нужно установить?

Как один из вариантов, да, всё верно.

Зверев Александр,

Спасибо

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

Всем доброго времени суток!

Столкнулся с такой проблемой.

Устанавливаю пакет через CLIO - выдает ошибки - https://prnt.sc/tqkuyw

В чем может быть проблема?

Версия системы 7.16.2.1600 

 

Или может быть создать пакет в системе, вытянуть его через clio конвертировать в пакет-проект, написать нужный функционал и затем задеплоить обратно? 

Нравится

16 комментариев

так же при выполнении команды clio install-gate -e dev выдает ошибки - https://prnt.sc/tqnh3s

Алексей, по первому скриншоту, похоже, дело в файловой системе Вашего ПК, не может получить доступ к определённой папке.

 

По второму, у Вас как-то получилось вместо названия объекта «7.16.2», что делать нельзя, названия должны быть с латинскими буквами и без точек. Возможно, при оформлении перепутали с версией.

Зверев Александр,

Странно как то получается создаю новый пакет Test и сразу  пушу его в систему и выдает такое - 

https://prnt.sc/tr3etj. Тут ну никак и нигде не задается имя 7.16.

Помимо всего даже когда устанавливаю пакет через интерфейс Creatio такая же ошибка. Из-за чего так получается есть предположение?

Если и через интерфейс такое же, то тем более, дело в самом пакете. Сравните с теми, которые ставятся нормально, может, что-то перепутано в полях? Вы создали пакет командой к clio?

Зверев Александр,

"Вы создали пакет командой к clio?" - пакет Test да. 

 

Просто создали так?

Creating new package

To create new package project, use the next command:

 clio new-pkg &lt;PACKAGE_NAME&gt;

you can set reference on local core assembly with using Creatio file design mode with command in Pkg directory

 clio new-pkg &lt;PACKAGE_NAME&gt; -r bin

Может, что-то делали с версией?

Set package version

Set a specified package version into descriptor.json by specified package path.

clio set-pkg-version &lt;PACKAGE PATH&gt; -v &lt;PACKAGE VERSION&gt;

 

Вообще, не видя создавшегося пакета, сложно  сказать, что в нём не так.

Зверев Александр,

просто clio new-pkg <PACKAGE_NAME>

Значит, смотреть внутрь пакета, где там упоминается «7.16.2». А падает только при установке на конкретный Ваш сайт? А если ставить на демку, то то же самое?

Зверев Александр,

Устанавливал созданный пакет через clio на облачный дев, через интерфейс системы, стал без ошибок.

 

Значит, всё же дело не в пакете, а в сайте, куда его ставили? Может, версии отличаются?

Зверев Александр,

версия сайта 7.16.2.1600, при создании пакета через clio задушить не получается, а вот при выгрузке из системы и конвертации, а потом пишите, то получилось...ещё те танцы с бубном))), но перед этим пришлось переустановить сайт.

Теперь бы разобраться как вызывать классы из данного пакета в других схемах конфигурации)

Здравствуйте, Алексей!

Files позволяют быстрее разрабатывать независимую функциональность, т.к. не требуют компиляции всей конфигурации. Из Files нельзя ссылаться на код в схемах. Из схем нельзя ссылаться на Files. Files могут ссылаться на sdk ядра.

Мотков Илья,

Добрый день. Я бы добавил, что есть способы достучаться из схем в функциональность Files. Через тот же ClassFactory

Здравствуйте, Алексей!

 

Ещё дополню, что все классы схем располагаются в неймспейсе Terrasoft.Configuration, если другое не задано.

 

Пакеты по сути просто папки, а конфигурация компилируется целиком, и все классы в конфигурации видны другим классам в конфигурации не зависимо от пакета.

 

Если речь о классах во внешних библиотеках – то обращаться так же как и из пакета в котором эта библиотека привязана.

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

Коллеги, разобрался в чем проблема... при создании нового пакета в этих папках - https://prnt.sc/u638lk генерируется текстовый файл placeholder, вот из-за него и вываливается ошибка при деплое пакета в среду, после удаления деплой прошел корректно и ошибка -

"Terrasoft.Common.InvalidNameException: Название объекта "7.16.2" некорректно" не выскакивала

Алексей, разработчики сообщили, что мы поищут способ решения этой проблемы, на текущий момент данную проблему можно обойти, указав в ConnectionStrings.config в секции tempDirectoryPath простой пусть С:\Temp

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

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

Коллеги, добрый день!

Для упрощения разработки под Cratio появилась необходимость автоматизировать процесс деплоя приложения. Недавно в Академии появилась статья об использования утилиты CLIO, позволяющей осуществить интеграцию Creatio с внешними средствами разработки. На основе CLIO и WorkspaceConsole можно попробовать реализовать процесс непрерывной интеграции для Creatio. Есть ли команды использующие решения по автодеплою обновлений на основе CLIO, возможно вы готовы поделиться своим опытом, какие решения вы используете/пробовали использовать для упрощения разработки/тестирования/выкладывания доработок, может быть есть типовые проблемы, с которыми вы столкнулись при внедрении своего подхода.

Спасибо.

Нравится

1 комментарий

Насколько знаю, готовых решений CI с CLIO пока ни у кого нет, но несколько разработок ведутся. Если анонсы будут, то или напишут на этом сайте, или, если стандартное — в академии, или же сторонние программы появятся прямо в маркете.

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