Role required: admin. |
Local pack is a record in the VCS Local Pack (sys_vcs_local_pack) table compiling relevant records from the VCS Record (sys_vcs_record) table. It allows associating VCS records with a particular pack and exporting them as a complete set. Local packs allow developing application configurations on a separate instance, exporting it as a .SOP file, and implementing it to another instance.
See the Configuration Packs article to learn more.
For configuration pack export, the following elements are used:
Local pack configuration and export includes the following important stages:
If you are going to export records for a custom application, make sure that the relevant application is implemented in the target instance or that the local pack contains the application VCS record.
|
In SimpleOne, you can export separate local packs and upload them one by one. Another option is to work as a team on one task. For this, developers should do their part of work in separate local packs and then combine the results into team's final pack. You can see the process in the scheme below:
Briefly, in order to facilitate the team development process, you need to perform the following steps:
To create a local pack, complete the steps below:
VCS Local Pack form fields
Field | Mandatory | Description |
---|---|---|
Name | Y | Define the name of the local pack. |
Is Default | N | Select this checkbox to set the local pack as default. When moving version from other local packs, selected VCS records will be moved to this default pack. |
State | Y | Local pack state. Available options:
|
Application | N | Select an application which records this local pack contains. One local pack cannot contain records belonging to different applications. |
Description | N | Type local pack description. |
Configure the set of record versions in the VCS Records related list to build the local pack. Restore and move records to collect only those you need.
If you need to restore one of previous record versions, you need to make it actual by clicking Restore Version. Actual records are marked with the Is current checkbox selected. Thus, restoring is available only to the VCS records with the cleared Is Current checkbox.
Restoring is unavailable for records with the Protected record policy and related to the Simple application. |
To restore a record version, complete the steps below:
Another way to restore a record version is the following:
|
After that, a new VCS record is created in the current local pack.
VCS records cannot be deleted; therefore, they are moved to the default local pack. If your local pack contains a VCS record that is created accidentally or belongs to another configuration pack, you can remove it from this local pack.
To move a VCS record, perform the following steps:
As a result:
This option is not available in default local packs. |
If a version was created in a wrong local pack by mistake (for example, in the default local pack), then you can move it to the required local pack. For this, complete the steps below:
Sometimes you need to combine two or more local packs together, for example, in case of team development. Merged local packs speed up implementation process and help to arrange updates and development in one pack.
Before merging local packs, make sure that:
|
To merge local packs, complete the steps below:
As a result:
After you completed collecting record versions, you need to export the changes for further import to other instances. For this, please complete the steps below:
Change the state value to Completed.
The local pack in the Admin Preferences menu will change to the default pack. |
Use this option cautiously. In case the local pack contains updated vendor records, it may cause collisions while updating the system. We recommend using the Export Local Pack option. |
The downloaded .SOP file will be named automatically as this:
|
.SOP file export comparison
Export Local Pack | Export → As a New Application | ||
---|---|---|---|
Protection Policy | Does not change. | The policy will be changed to Protected or Open depending on the protected.essences property:
| |
Description | Use this export for minor record version changes. | Use this export for local pack containing a huge number of record versions.
|
As a result, for all configuration records, which versions are contained in the local pack, the current version (Is Current IS Yes) will be downloaded.
If there is no current version for a configuration record in the local pack, then the last version that was created will be downloaded as current. This version also will be current when the local pack will be uploaded on the other instance.
It is a good practice to download your local pack straight away after the job is done; otherwise, the versions stored in it may go out of date. |
Snapshots restore record versions in the following cases:
In version control systems (VCS), snapshot is the fixed system or database status description.
There are two ways to create a table snapshot:
The example script below makes snapshot of all versioned tables within the current application:
const table = new SimpleRecord('sys_db_table'); table.addQuery('is_vcs_enabled', true); table.addQuery('sys_id', '!=', '999999999999999998'); // exclude REM table.selectAttributes('name'); table.query(); while (table.next()) { const vcs = new SimpleVcs(); const versionCount = vcs.createTableSnapshot(table.name); if (versionCount > 0) { ss.info(`${table.name.padStart(80, " ")}: ${versionCount} versions created`); } } |
/