The CI/CD process helps you develop and maintain content for
complex content development using the full functionality of a Git
repository, enabling you to run unit tests, code reviews, run test
playbooks, etc. The process is designed for advanced users who have
a good understanding of CI/CD concepts and have a number of developers
who work on local machines. You should have sufficient resources
to set up and maintain the CI/CD process, such as a devops team
that can support the CI/CD pipeline.
The Remote repository feature in the UI
Cortex XSOAR supports the ability to work with
separate repositories for development and production environments.
This enables you to develop and test all of your content in one
location, and when it is ready, you push the content to the remote
repository. On your production environment, you pull the content
as you would all other content updates.
The development and production environments must be running on
the same version of Cortex XSOAR.
In addition, Cortex XSOAR content updates are only delivered
to the development environment. This enables you to determine which
updates you want to push to production.
Working with remote repositories is Git-based. Any service
that supports this protocol can be used, for example, GitHub, GitLab,
Bitbucket, etc. In addition, on-premise repositories are also supported.
Verify that your Cortex XSOAR has access to the remote repository
as this feature can not be configured to work with Engines.
How it Works
In the production environment, the content appears as a content
update, just like any other, and you pull the content from the remote
repository into your working branch.
To work with remote repositories, you must have two separate
Cortex XSOAR environments on two separate machines. The development
environment is used to write the following content:
When pushing a content pack to the remote
repository, you should push all of its content, listed in the Local
Changes window, for the content pack to work properly.
If you have more than two pre-processing
rules in your Local Changes queue, you must push all of those changes
to the remote repository.
On the production environment, it is not possible to edit these