This commit is contained in:
277
platform/low-code-ci-cd.html
Normal file
277
platform/low-code-ci-cd.html
Normal file
@ -0,0 +1,277 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<title>Low-code CI/CD</title>
|
||||
<meta name="generator" content="Help+Manual" />
|
||||
<meta name="keywords" content="" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="Continuous integration (CI) and Continuous delivery and deploy (CD) is an approach to developing complex custom solutions using the Develop > Test > Production cycle." />
|
||||
<meta name="picture" content="" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:title" content="Full documentation for BRIX365 platform. Low-code developer guide. User guide. Admin guide. Developer guide." />
|
||||
<meta property="og:url" content="https://brix365.com/en/help" />
|
||||
<meta property="og:image" content="" />
|
||||
<link rel="icon" href="favicon.png" type="image/png" />
|
||||
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="./jquery-ui.min.css" />
|
||||
<link rel="stylesheet" href="default.css" />
|
||||
<link rel="stylesheet" href="./search-yandex.css" />
|
||||
<link rel="stylesheet" href="./article.css" />
|
||||
<link rel="stylesheet" href="./glossary.css" />
|
||||
<link rel="stylesheet" href="./theme.css" />
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="helpman_settings.js"></script>
|
||||
<script type="text/javascript" src="helpman_topicinit.js"></script>
|
||||
|
||||
<script type="text/javascript" src="highlight.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){highlight();});
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<script>!function(e,t,c,n,r,a,m){e.ym=e.ym||function(){(e.ym.a=e.ym.a||[]).push(arguments)},e.ym.l=1*new Date;for(var s=0;s<document.scripts.length;s++)if(document.scripts[s].src===n)return;a=t.createElement(c),m=t.getElementsByTagName(c)[0],a.async=1,a.src=n,m.parentNode.insertBefore(a,m)}(window,document,"script","https://mc.yandex.ru/metrika/tag.js"),ym(83179930,"init",{clickmap:!0,trackLinks:!0,accurateTrackBounce:!0,webvisor:!0})</script><noscript><div><img alt=""src=https://mc.yandex.ru/watch/83179930 style=position:absolute;left:-9999px></div></noscript>
|
||||
|
||||
<header class="header elma-365">
|
||||
<div class="container">
|
||||
<a class="header__logo" href="https://brix365.com/en/help">
|
||||
<img src="./logo-en.svg" alt="header logo">
|
||||
</a>
|
||||
<!-- <div class="hero__search-form" id="search-panel">
|
||||
<form class="search-form" onsubmit="ym(83180416,'reachGoal','poisk')">
|
||||
<label class="search-form__label">
|
||||
<span id="reset-search" class="search__icon"></span>
|
||||
<input class="search-form__input" type="text">
|
||||
</label>
|
||||
<input class="search-form__submit" type="submit" value="Submit">
|
||||
</form>
|
||||
</div> -->
|
||||
|
||||
<div class="hero__search-form" id="search-panel"> <form class="search-form"> <label class="search-form__label"> <span id="reset-search" class="search__icon"></span> <input class="search-form__input" type="text"> </label> <input class="search-form__submit" type="submit" value="Submit"> </form> </div>
|
||||
<div class="hero__search">
|
||||
<a href="#" id="search-icon" class="hero__search-icon">
|
||||
<img src="search-icon-white.svg" alt="search string">
|
||||
</a>
|
||||
<a href="#" id="side-menu-icon" class="hero__side-icon">
|
||||
<img src="side_menu.svg" alt="side menu">
|
||||
</a>
|
||||
</div>
|
||||
<div class="header__navi">
|
||||
|
||||
<ul class="header__list"><li><span class="solution-select"><span class="solution-select__selected"></span><svg width="7" height="4" viewBox="0 0 7 4" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L3.5 3.5L6 1" stroke="white" stroke-linecap="round" stroke-linejoin="round"/></svg><ul class="solution-select__list"><li><a class="project-link" href="https://brix365.com/en/help/platform/get-trial.html">Platform</a></li><li><a class="project-link" href="https://brix365.com/en/help/ecm/ecm-functions.html">ECM</a></li><li><a class="project-link" href="https://brix365.com/en/help/crm/crm_overview.html">CRM</a></li><li><a class="project-link" href="https://brix365.com/en/help/service/service-functions.html">Service</a></li><li><a class="project-link" href="https://brix365.com/en/help/projects/projects-functions.html">Projects</a></li><li><a class="project-link" href="https://brix365.com/en/help/business_solutions/-elma365-store.html">Business Solutions</a></li></ul></span></li><li><a href="https://api.brix365.com/en/" target="_blank">API</a></li><li><a href="https://tssdk.brix365.com/" target="_blank">SDK</a></li></ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</header>
|
||||
|
||||
|
||||
|
||||
|
||||
<main class="main container">
|
||||
|
||||
<aside class="sidebar" id="sidebar">
|
||||
<div class="sidebar__header">
|
||||
<a class="header__logo" href="https://brix365.com/en/help">
|
||||
<img src="./logo-light-en.svg">
|
||||
</a>
|
||||
<span class="sidebar__close elma-365-close" id="close"></span>
|
||||
</div>
|
||||
<div class="sidebar__wrapper" id="side-menu">
|
||||
|
||||
</div>
|
||||
</aside>
|
||||
|
||||
<article class="article" id="article">
|
||||
<div class="article-inner">
|
||||
<div class="content">
|
||||
<header class="article__header">
|
||||
<div class="article__bread" style="display:flex; gap:10px;">
|
||||
<span id="subcategory" class="search-res__item-category search-res__item-category_subcategory subcategory article__badge"></span>
|
||||
|
||||
<div class="topic__breadcrumbs">
|
||||
<p>System settings > <a href="devtools.html">Developer tools</a> / Low-code CI/CD</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="topic__title"><h1 class="p_Heading1"><span class="f_Heading1">Low-code CI/CD</span></h1>
|
||||
</div>
|
||||
|
||||
</header>
|
||||
<section class="article__content">
|
||||
<div class="scroll-top-inner">
|
||||
<a href="#h1-article" class="scroll-top"></a>
|
||||
</div>
|
||||
<!-- Placeholder for topic body. -->
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;"><span style="font-weight: bold;">Continuous integration</span> (CI) and <span style="font-weight: bold;">Continuous delivery and deploy</span> (CD) is an approach to developing complex custom solutions using the <span style="font-weight: bold;">Develop > Test > Production</span> cycle.</p>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">With this method of development, a solution goes through three stages: it is created, tested, and deployed for the end users. A separate company is assigned for each stage. It is registered in its environment:</p>
|
||||
<ul style="list-style-type:disc">
|
||||
<li style="text-align: justify; line-height: 1.20; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Dev company. For the development stage.</li><li style="text-align: justify; line-height: 1.20; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Test company. For testing the developed solution.</li><li style="text-align: justify; line-height: 1.20; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Prod company. For end-user operation.</li></ul>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">The solution moves to the next stage when it is exported to a company that serves as a different environment.</p>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">Low-code CI/CD allows you to develop custom solutions in short iterations, maintain their versioning and integrity, and work with them simultaneously across three environments.</p>
|
||||
<p style="line-height: 1.0; white-space: nowrap; page-break-inside: avoid;">BRIX provides several tools that can be used independently to implement the CI/CD approach:</p>
|
||||
<ul style="list-style-type:disc">
|
||||
<li class="p_Normal">The<span style="font-weight: bold;"> elma365pm </span>utility is an auxiliary independent command line utility used in conjunction with external version control and pipelines configuration services, for example, GitLab. The tool allows you to export a company configuration component (workspace, module, or solution) to a file. The work is then performed in an external service, thus enabling the use of operations from High-code development. The component is updated to the new version, packed into a file, and imported into another company. Read more in the <a href="lowcode-devops-pm.html" class="topiclink">CI/CD utility for low-code solutions</a> article.</li><li class="p_Normal">The<span style="font-weight: bold;"> Low-code CI/CD </span>tool is a universal tool for exchanging components between companies from different environments. The work is performed in the BRIX interface based on standard export and import processes. Companies are linked to each other. Then the exchange operation is set up: configuration components are selected, the type of operation is specified, etc. The exchange profile is saved, which allows the operation to be carried out several times. It is possible to compare the configurations of two companies and analyze the result of the operation. The exchange process is performed in the background.</li></ul>
|
||||
<p class="p_Normal">In this article, we will take a closer look at setting up and working with the <span style="font-weight: bold;">Low-code CI/CD </span>tool.</p>
|
||||
<h2 class="p_Heading2"><a id="glossary" class="hmanchor"></a><span class="f_Heading2" style="font-size: 16px;">Terminology</span></h2>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;">The following terms are used in the article: </p>
|
||||
<ul style="list-style-type:disc">
|
||||
<li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Company</span>. Registered and licensed BRIX platform in one of the <a href="platform-distribution.html" class="topiclink">editions</a>: SaaS or On-Premises.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Environment</span>. A company that is registered separately for a certain stage of work with the solution: development, testing, or production (dev, test, prod). To register and license companies in dev and test environments, please contact your BRIX sales rep.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Configuration</span>. A structure that includes: installed and custom solutions, workspaces, modules and their contents, business processes, groups, widgets, document templates, and other entities created at the company level, organizational chart, and document categorization.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Current configuration</span>. A company where the communication and exchange operation is configured.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">External configuration</span>. A company with which components are exchanged.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Binding</span>. A link created between two companies to exchange components of the current and external configurations. Linked companies can be registered in the same or different environments. </li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Exchange Profile</span>. An operation that defines the export or import process between bound companies. The profile specifies the components to be exchanged, which can include <a href="360007990371.html" class="topiclink">workspaces</a>, <a href="extentions.html" class="topiclink">modules</a>, <a href="solution.html" class="topiclink">solutions</a>, or the entire configuration. It allows you to compare the current and external configurations and view the results of the exchange. The profile can be used multiple times to perform exchange operations. </li></ul>
|
||||
<h2 class="p_Heading2"><span class="f_Heading2">Configure Low-code CI/CD</span></h2>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;">The <span style="font-weight: bold;">Low-code CI/CD</span> page is available to <a href="360006871932.html#administrators" class="topiclink">system administrators</a> in <span style="font-weight: bold;">Administration > Developer Tools</span>. <span style="color: #394149;"> </span></p>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;">The page includes three tabs: <span style="font-weight: bold;">Binding</span>, <span style="font-weight: bold;">Profiles</span>, and <span style="font-weight: bold;">Notifications</span>. On these, the configuration and operation of the <span style="font-weight: bold;">Low-code CI/CD</span> is as follows: </p>
|
||||
<ol style="list-style-type:decimal">
|
||||
<li value="1" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><a href="low-code-ci-cd.html#bind-companies" class="topiclink">A binding is established between the two companies</a> to perform the exchange of current or external configuration.</li><li value="2" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><a href="low-code-ci-cd.html#create-profile" class="topiclink">An exchange profile is created</a>, in which the operation to be performed (export or import) is specified, exchange objects are selected and conditions for resolving possible conflicts are set. </li><li value="3" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><a href="low-code-ci-cd.html#compare-configurations" class="topiclink">The components of two configurations selected in the exchange profile are compared</a>, the differences are identified, and the result of the exchange operation is analyzed.</li><li value="4" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><a href="low-code-ci-cd.html#check-profile" class="topiclink">The created profile is checked</a> to detect possible errors in the exchange process.</li><li value="5" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><a href="low-code-ci-cd.html#run-profile" class="topiclink">The exchange operation is performed</a> according to the specified profile.</li><li value="6" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Optionally, a <a href="low-code-ci-cd.html#use-channel" class="topiclink">channel for notification</a> of unsuccessful exchange operations is configured. </li></ol>
|
||||
<h3 class="p_Heading3"><a id="bind-companies" class="hmanchor"></a><span class="f_Heading3">Establish binding between two companies </span></h3>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">To implement continuous integration (CI) and continuous delivery and deploy (CD) in BRIX, the exchange of components between two companies in different environments is configured. For this purpose, the <span style="font-style: italic; font-weight: bold;">current company</span> is linked to the <span style="font-style: italic; font-weight: bold;">external company</span> by creating a <span style="font-style: italic; font-weight: bold;">binding</span>.</p>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">It is recommended to link companies in different environments in the following pairs: development/test (dev/test) and test/production (test/prod).</p>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">In each pair, the first company (e.g. dev) is the current configuration in which the binding is created. The second company (e.g., test) acts as the external configuration with which the binding is exchanged. This will allow solution versions to be moved sequentially between companies, from dev environment to test, and then from test company to prod.</p>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">An unlimited number of bindings can be created in the current company with different companies registered in any environment.</p>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">Registration and licensing of companies in dev and test environments are managed through the BRIX sales rep.</p>
|
||||
<p class="p_CodeExample" style="page-break-inside: avoid;"><span class="f_CodeExample">начало внимание</span></p>
|
||||
<p class="p_Normal">In BRIX SaaS, you can only link one external company and configure one exchange operation between them.</p>
|
||||
<p class="p_Normal">In the On-Premises edition, there are no restrictions on the number of added bindings and profiles.</p>
|
||||
<p class="p_CodeExample" style="page-break-inside: avoid;"><span class="f_CodeExample">конец внимание</span></p>
|
||||
<p class="p_Normal">To bind one company to another, follow the steps below: </p>
|
||||
<ol style="list-style-type:upper-roman">
|
||||
<li value="1" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Go to the BRIX company that you want to bind, for example, a test company. Open the <span style="font-weight: bold;">Administration > Tokens</span> workspace and <span style="color: #0000ff;"><a href="360016488452.html" class="topiclink">create a token</a></span> for the binding.</li><li value="2" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Open BRIX where you want to create a binding, for example, a dev company for development. Go to the <span style="font-weight: bold;">Administration > Developer Tools</span> workspace and select the <span style="font-weight: bold;">Low-code CI/CD </span>page.</li><li value="3" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">In the <span style="font-weight: bold;">Binding</span> tab, click <span style="font-weight: bold;">+ New</span> and in the opened window, fill in the fields:</li></ol>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 37px;"><img alt="cicd01" width="832" height="538" style="margin:0;width:832px;height:538px;border:none" src="cicd01.png"/></p>
|
||||
<ul style="list-style-type:disc">
|
||||
<li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Name</span><span style="font-weight: bold; color: #ff0000;">*</span>. Specify the name of the binding to be displayed in the list, for example, <span style="font-weight: bold;">Test Environment</span>.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">URL</span><span style="font-weight: bold; color: #ff0000;">*</span>. Specify the URL of the external company’s home page.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Token</span><span style="font-weight: bold; color: #ff0000;">*</span>. Copy the token created in the external company in step 1 and paste it into the field. </li></ul>
|
||||
<ol style="list-style-type:upper-roman">
|
||||
<li value="4" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Save the settings.</li></ol>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;">All bound external companies are displayed on the <span style="font-weight: bold;">Binding</span> tab. Configurations or their components can be exchanged with each of them. To change the binding data, click on an entry in the list.</p>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;">If no exchange profiles have been added for a binding, you can edit its data or delete the binding with an external company. To do this, click on the name of the binding in the list and perform the action on its page. If you see a warning about existing exchange operations, delete them on the <span style="font-weight: bold;">Profiles</span> tab and repeat the action.</p>
|
||||
<h3 class="p_Heading3"><a id="create-profile" class="hmanchor"></a><span class="f_Heading3">Create an exchange profile</span></h3>
|
||||
<p style="line-height: 1.20; margin: 0 0 11px 0;">After binding the external configuration to the company, you can exchange components. For this purpose, an exchange profile is created.</p>
|
||||
<p style="line-height: 1.20; margin: 0 0 11px 0;">In the profile, you can specify with which external configuration the exchange is performed and define the type of operation (export or import data). Then the objects to be exchanged are checked, and after that you can select all objects included in the configuration or its individual components. The profile also defines the strategy of conflict resolution in the exchange process.</p>
|
||||
<p style="line-height: 1.20; margin: 0 0 11px 0;">Only one exchange operation can be configured in BRIX SaaS. In the On-Premises edition there are no restrictions on the number of exchange profiles: for example, you can add a profile for each custom solution developed in a dev company.</p>
|
||||
<p style="line-height: 1.20; margin: 0 0 11px 0;">The created profile can be used to verify the exchange process, compare the configurations of two companies, and run the operation multiple times.</p>
|
||||
<p style="line-height: 1.20; margin: 0 0 11px 0;">For example, several custom solutions have been developed in the dev environment. You can export them to another company to test the functionality. To do this, create an exchange profile in the test company, include all solutions from the dev environment in it and run the export operation. When new versions of solutions are developed in the dev company, you can transfer them to the test environment by running the same exchange profile.</p>
|
||||
<p style="line-height: 1.20; margin: 0 0 11px 0;">To create an exchange profile: </p>
|
||||
<ol style="list-style-type:upper-roman">
|
||||
<li value="1" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Go to <span style="font-weight: bold;">Administration > Developer Tools > Low-code CI/CD</span> and open the <span style="font-weight: bold;">Profiles</span> tab.</li><li value="2" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">In the upper right corner of the page, click +<span style="font-weight: bold;">Create</span> and fill in the details of the exchange:</li></ol>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 36px;"><img alt="cicd02" width="798" height="478" style="margin:0;width:798px;height:478px;border:none" src="cicd02.png"/></p>
|
||||
<ul style="list-style-type:disc">
|
||||
<li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Name</span><span style="font-weight: bold; color: #ff0000;">*</span>. Specify the name of the exchange to be displayed in the list of profiles.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Binding</span><span style="font-weight: bold; color: #ff0000;">*</span>. Select the external configuration, i.e. the binding created on the <span style="font-weight: bold;">Low-code CI/CD</span> page on the <span style="font-weight: bold;">Binding</span> tab.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Direction</span><span style="font-weight: bold; color: #ff0000;">*</span>. Specify the operation for the exchange profile: <ul style="list-style-type:circle">
|
||||
<li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Import</span>. Components of the external configuration are uploaded into the current company.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Export</span>. Components of the current configuration are transferred to the bound external company.</li></ul>
|
||||
<li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Strategy</span><span style="font-weight: bold; color: #ff0000;">*</span>. Select a way to resolve conflicts that may arise during the exchange operation. Conflicts can occur if incompatibilities are detected between components of the current and external configurations, for example, the exchange is not performed consistently between component versions or the transferred objects have been changed in both companies. If a conflict is detected in at least one component during the exchange, the operation is performed according to the specified strategy: <ul style="list-style-type:circle">
|
||||
<li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Replace objects</span>. If conflicts occur, the existing components of the target configuration will be completely replaced by the imported objects. This exchange strategy can lead to incorrect operation of the target configuration components. For example, if scripts use app properties that will be deleted as a result of the exchange, such a script will not be executed.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Keep objects</span>. If conflicting components are found during the exchange, the version of the target configuration is saved and the exchange operation is canceled, i.e. it terminates with an error. For example, different properties are added to the context of one app in the test and prod configurations. A conflict will occur during component exchange and import will not be possible. </li></ul>
|
||||
<li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Configuration items</span>. Click <span style="font-weight: bold;">Select</span>. Depending on the specified operation, the configuration structure will open: when importing, it shows the composition of the external system, when exporting, it shows the elements of the current company. Select the check box for the components that will be migrated to the other configuration and click <span style="font-weight: bold;">Apply</span>.<ul style="list-style-type:circle">
|
||||
<li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Org Chart</span><span style="font-weight: bold; color: #ff0000;">*</span>. If you choose to exchange the entire configuration in the profile, additionally specify the need to transfer the <span style="color: #0000ff;"><a href="360003861992.html" class="topiclink">org chart</a></span>. <span style="font-weight: bold;"> </span></li></ul></li></ul>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 36px;">Please note that only components for which export is available can be transferred. For example, if a paid business solution from the BRIX Store is activated in the prod company, it cannot be selected for export to the test environment.</p>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 36px;">In the process of exchanging bound solutions in <span style="font-weight: bold;">Low-code CI/CD</span> you don<span style="color: #202122; background-color: #f8f9fa;">’t</span> need to create dependencies between them, unlike the process of exporting such solutions to separate <span style="font-weight: bold;">.e365</span> files and then importing the files to another company. If the solutions work together, they are exported in the same exchange profile. Once the operation is complete, all links in the objects will be preserved.</p>
|
||||
<ol style="list-style-type:upper-roman">
|
||||
<li value="3" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Save the configured exchange profile.</li></ol>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;">All created exchange profiles are displayed on the <span style="font-weight: bold;">Low-code CI/CD</span> page on the <span style="font-weight: bold;">Profiles</span> tab.</p>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;"><img alt="cicd-brix-01" width="1160" height="407" style="margin:0;width:1160px;height:407px;border:none" src="cicd-brix-01.png"/></p>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">The direction and strategy specified in the profile are marked with icons in the list:</p>
|
||||
<ul style="list-style-type:disc">
|
||||
<li style="text-align: justify; line-height: 1.20; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><img alt="clip0275" width="27" height="25" style="margin:0;width:27px;height:25px;border:none" src="clip0275.png"/>, <img alt="clip0276" width="26" height="23" style="margin:0;width:26px;height:23px;border:none" src="clip0276.png"/>. Import, export.</li><li style="text-align: justify; line-height: 1.20; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><img alt="clip0277" width="27" height="26" style="margin:0;width:27px;height:26px;border:none" src="clip0277.png"/>, <img alt="clip0278" width="29" height="28" style="margin:0;width:29px;height:28px;border:none" src="clip0278.png"/>. Keep objects, replace objects.</li></ul>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">o remove a profile from the list, check the box next to its name and click the <span style="font-weight: bold;">Delete </span>button which appears in the upper right corner of the page.</p>
|
||||
<h3 class="p_Heading3"><a id="compare-configurations" class="hmanchor"></a><span class="f_Heading3">Compare components of configurations from the exchange profile</span></h3>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">Before performing an exchange operation, you can compare the status of the objects selected in the profile for the current and external configurations. Incoming changes will be displayed with statuses, with the help of which you can analyze the result of the exchange operation.</p>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">To do this, on the <span style="font-weight: bold;">Low-code CI/CD</span> page, open the <span style="font-weight: bold;">Profiles</span> tab and click on the <img alt="clip0279" width="21" height="23" style="margin:0;width:21px;height:23px;border:none" src="clip0279.png"/> icon next to the created exchange profile. In the opened window, the structures of the two configurations will be formed, which will include only those objects that are added to the selected profile: </p>
|
||||
<ul style="list-style-type:disc">
|
||||
<li style="text-align: justify; line-height: 1.20; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Target configuration</span>. It is the configuration structure that will be changed when the exchange profile is executed. For example, during an import operation, the target company will be the current one, and during an export operation, the target one will be an external configuration.</li><li style="text-align: justify; line-height: 1.20; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><span style="font-weight: bold;">Changes to the target</span>. These are components from the configuration that will be transferred to the target company.</li></ul>
|
||||
<p style="line-height: 1.20; margin: 0 0 11px 0;">To see detailed information about the differences between configurations, expand the structure in the changes to the target column. There are workspaces, apps, pages, widgets, scripts, etc. in the list.</p>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;"> <img alt="cicd03" width="1097" height="520" style="margin:0;width:1097px;height:520px;border:none" src="cicd03.png"/></p>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;">The components are marked with color designations that correspond to the statuses:</p>
|
||||
<p style="text-indent: -24px; line-height: 1.28; margin: 0 0 11px 22px;"><img alt="clip0194" width="52" height="22" style="margin:0;width:52px;height:22px;border:none" src="clip0194.png"/>These are created components that will be added to the target configuration when the exchange is executed. For example, a new solution from the test environment will be loaded into the BRIX production.</p>
|
||||
<p style="text-indent: -24px; line-height: 1.28; margin: 0 0 11px 22px;"><img alt="clip0195" width="76" height="22" style="margin:0;width:76px;height:22px;border:none" src="clip0195.png"/> Objects are present in both companies. They have been edited in the exchange company and will be updated in the target configuration. For example, if changes are made to the app form settings in the test environment, the edited objects must be moved to the production company.</p>
|
||||
<p style="text-indent: -24px; line-height: 1.28; margin: 0 0 11px 22px;"><img alt="clip0196" width="53" height="21" style="margin:0;width:53px;height:21px;border:none" src="clip0196.png"/> Components are present in the target configuration but are not found in the incoming change structure. After the exchange is executed, the target configuration objects marked with this status won<span style="color: #202122; background-color: #f8f9fa;">’t</span> change.</p>
|
||||
<p style="text-indent: -24px; line-height: 1.28; margin: 0 0 11px 22px;"><img alt="clip0197" width="116" height="21" style="margin:0;width:116px;height:21px;border:none" src="clip0197.png"/> Several differences are found in the selected components. For example, in the test environment, a workspace in the solution is removed and a new one is added, while in the operating company, the previous version of the solution is present. </p>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;">To view changes in the code of target scripts, click the icon next to its name. In the opened comparison window, you will see the code from the current and external configurations. Navigation through the changes and the number of lines added or removed is displayed on the top panel. For full-screen mode, click the icon in the upper right corner.</p>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;"><img alt="cicd08" width="726" height="291" style="margin:0;width:726px;height:291px;border:none" src="cicd08.png"/></p>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;">When you close the code window, you will return to the configuration comparison for the selected profile. Here you can search by component name. The comparison result can be filtered by a specific status, and you can display the entire structure or only the components in which differences were found.</p>
|
||||
<h3 class="p_Heading3"><a id="check-profile" class="hmanchor"></a><span class="f_Heading3">Check the exchange profile execution</span></h3>
|
||||
<p class="p_Normal">After creating an exchange profile, you can check if the operation specified in it has been performed. To do this, open the <span style="font-weight: bold;">Profiles</span> tab on the <span style="font-weight: bold;">Low-code CI/CD</span> page. Click on the <img alt="clip0280" width="17" height="18" style="margin:0;width:17px;height:18px;border:none" src="clip0280.png"/> icon next to the created exchange profile, and confirm the action.</p>
|
||||
<p class="p_Normal">A compatibility check of the components of the current and external companies will be started. The process is similar to the checks performed during standard export and import operations of any system component.</p>
|
||||
<p class="p_Normal">As a result of the check, errors that interfere with the execution of the operation are detected. For example, the exported or imported components may contain links or dependencies to objects that are not included in the exchange profile.</p>
|
||||
<p class="p_Normal">To learn more about the check process using the example of uploading and downloading a solution, see <a href="upload-solution-file.html#check-solution" class="topiclink">Import a solution from an .e365 file</a> and <a href="export-solution-file.html#check-up" class="topiclink">Export a solution from an .e365 file</a>.</p>
|
||||
<p class="p_Normal">The current status and result of the check are displayed in the list of exchange profiles in the <span style="font-weight: bold;">Status</span> column. By clicking on the status at the end of the check, you will be able to view a report with the result of the check. If errors are detected during the check, it will be impossible to execute the exchange profile.</p>
|
||||
<p class="p_Normal"><img alt="cicd09" width="926" height="283" style="margin:0;width:926px;height:283px;border:none" src="cicd09.png"/></p>
|
||||
<h3 class="p_Heading3"><a id="run-profile" class="hmanchor"></a><span class="f_Heading3">Start component exchange</span></h3>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">After comparing the profile configurations, you can start the exchange operation. To do this, click <span style="font-weight: bold;">Complete</span> next to the required entry and confirm the action on the <span style="font-weight: bold;">Profiles</span> tab. After the transfer is completed, the status of the operation will be displayed in the list of profiles.</p>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;"><img alt="cicd-brix-02" width="1053" height="407" style="margin:0;width:1053px;height:407px;border:none" src="cicd-brix-02.png"/></p>
|
||||
<p style="text-align: justify; line-height: 1.20; margin: 0 0 11px 0;">To view the history of the exchange operation, click on the profile status in the table. The opened window displays data on the last exchange performed. If the exchange ended with an error, you can expand the list of components and view detailed information.</p>
|
||||
<h3 class="p_Heading3"><a id="use-channel" class="hmanchor"></a><span class="f_Heading3">Configure notification channel</span></h3>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 0;">You can display errors that occurred while performing component exports or imports in the activity stream in a separate <span style="color: #0000ff;"><a href="360014191132.html" class="topiclink">channel</a></span>. To set up the notifications:</p>
|
||||
<ol style="list-style-type:upper-roman">
|
||||
<li value="1" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Go to the <span style="font-weight: bold;">Messages</span> workspace, <a href="360014191132.html" class="topiclink">create a channel</a>, and configure access rights for its members. </li><li value="2" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Open <span style="font-weight: bold;">Administration > Developer Tools > Low-code CI/CD</span> and click the <span style="font-weight: bold;">Notifications</span> tab.</li><li value="3" style="line-height: 1.20; margin-top: 0; margin-right: 0; margin-bottom: 11px;">In the <span style="font-weight: bold;">Channel for notifications</span> field, select the created channel.</li></ol>
|
||||
<p style="line-height: 1.28; margin: 0 0 11px 36px;"><img alt="cicd06" width="804" height="365" style="margin:0;width:804px;height:365px;border:none" src="cicd06.png"/></p>
|
||||
<ol style="list-style-type:upper-roman">
|
||||
<li value="4" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Click on the <span style="font-weight: bold;">Save</span> button that appears on the page to apply the settings.</li></ol>
|
||||
|
||||
<div class="bottom-nav">
|
||||
|
||||
<a id="prev-link" class="topic__navi_prev" href="performance-report.html">
|
||||
<span class="bottom-nav__arrow bottom-nav__arrow--prev"></span> <span
|
||||
class="bottom-nav__link">performance-report.html</span>
|
||||
</a>
|
||||
|
||||
|
||||
<a id="next-link" class="topic__navi_next" href="server-script-tracing.html">
|
||||
<span class="bottom-nav__link">server-script-tracing.html</span> <span
|
||||
class="bottom-nav__arrow bottom-nav__arrow--next"></span>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
<!-- добавляет на страницу строку блок Была ли статья полезной? -->
|
||||
<div class="feedback" id="feedback"><div class="feedback-help"><span><b>Was this helpful?</b></span><form action="" method="POST" class="feedback-form" id="feedback-form"><div class="feedback__popup feedback__popup-response" id="feedback__popup_thx" style="display: none;">Thanks for your feedback!</div><div class="feedback__popup" id="feedback__popup_why" style="display: none;"><div class="feedback__popup-header">Please specify why:</div><input type="radio" name="category" id="bad_recommendation" value="bad_recommendation"><label for="bad_recommendation">Recommendations did not help me</label><input type="radio" name="category" id="difficult_text" value="difficult_text"><label for="difficult_text">Article is hard to understand</label><input type="radio" name="category" id="no_answer" value="no_answer"><label for="no_answer">Didn`t answer my question</label><input type="radio" name="category" id="bad_header" value="bad_header"><label for="bad_header">Content does not match the topic</label><input type="radio" name="category" id="other_reason" value="other_reason"><label for="other_reason">Other</label></div><div class="feedback__popup" id="feedback__popup-other" style="display: none;"><div class="feedback__popup-header">How we can improve it?</div><textarea class="feedback__textarea" name="other" id=""></textarea><input type="submit" class="feedback__other-btn" value="Submit"></div><div class="feedback-form__btn-group"><input type="radio" name="useful" id="feedback__useful_yes" value="true"><label for="feedback__useful_yes"><img src="like.svg" class="small-img" alt="like"><spanclass="feedback-form__btn-group_yes-btn">Yes</spanclass="feedback-form__btn-group_yes-btn"></label><input type="radio" name="useful" id="feedback__useful_no" value="false"><label for="feedback__useful_no"><img src="dislike.svg" class="small-img" alt="dislike"><spanclass="feedback-form__btn-group_no-btn">No</spanclass="feedback-form__btn-group_no-btn"></label></div><select name="category"><option disabled="">Please specify why</option><option value="bad_recommendation" selected="">Recommendations did not help me</option><option value="difficult_text">Article is hard to understand</option><option value="no_answer">Didn`t answer my question</option><option value="bad_header">Content does not match the topic</option><option value="other_reason">Other</option></select><input type="submit"></form></div><div class="found_typo"><p style="margin: 0px; margin-top: 16px !important;"><span><b>Found a typo?</b></span> Select it and press <i>Ctrl+Enter</i> to send us feedback</p></div></div>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
<aside class="article__sidebar" style="display:none">
|
||||
<input type="checkbox" />
|
||||
<div class="article__arrow"></div>
|
||||
<div class="table-of-contents elma365-right" id="toc2Content">
|
||||
<h3 class="h3-toc">In this topic</h3>
|
||||
<nav id="toc2"></nav>
|
||||
</div>
|
||||
</aside>
|
||||
</div>
|
||||
</article>
|
||||
</main>
|
||||
<footer class="footer">
|
||||
<div class="footer-container">
|
||||
<div class="footer-mobile">
|
||||
|
||||
<ul class="footer-mobile__list"><li><a href="https://brix365.com/en/" target="_blank">BRIX</a></li><li><a href="https://tssdk.brix365.com/en/latest/" target="_blank">SDK</a></li><li><a href="https://api.brix365.com/en/" target="_blank">API</a></li></ul><ul class="footer-mobile__list"><li><a href="https://brix365.com/en/help/platform/get-trial.html">Platform</a></li><li><a href="https://brix365.com/en/help/ecm/ecm-functions.html">ECM</a></li><li><a href="https://brix365.com/en/help/service/service-functions.html">Service</a></li><li><a href="https://brix365.com/en/help/projects/projects-functions.html">Projects</a></li></ul>
|
||||
|
||||
|
||||
</div>
|
||||
<div class="footer-wrap">
|
||||
|
||||
<div><span class="mobile-question-popup">Send feedback</span><form method="POST" action class="question__popup question-xs" id="question__popup"><div class="question-wrap"><span class="close"></span><span class="title">Ask a question</span><label for="help_question" style="display: none;"></label><textarea name="help_question" id="help_question"></textarea><input type="submit" value="Send"></div></form><div class="hidden fade-in question-success-xs">Sent</div></div>
|
||||
|
||||
<div class="footer-flex-b">
|
||||
<span class="footer-copy">© 2025 BRIX</span>
|
||||
<ul class="footer-list">
|
||||
|
||||
<li class="footer-item">
|
||||
<a href="#" class="arrow-top" style="display: block;"></a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</footer>
|
||||
<iframe name="hmnavigation" style="display:none!important"></iframe>
|
||||
<script src="./jquery-ui.js"></script>
|
||||
<!--script src="//cdn.jsdelivr.net/npm/featherlight@1.7.14/release/featherlight.min.js" type="text/javascript" charset="utf-8"></script-->
|
||||
<script src="./jquery.tocify.min.js"></script>
|
||||
<script src="./TypoReporter.min.js"></script>
|
||||
<script src="./google-search.js"></script>
|
||||
<script src="./main.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
Reference in New Issue
Block a user