- upgrade tools and important components regularly with safe updates
- root-less image are best to prevent some container escalation vulnerabilities against your runner provider
!!! tip
Whenever building your own image or using an upstream image, you can use [Renovate](https://docs.renovatebot.com/) to watch updates for your tools, test the new version and integrate them seamlessly.
> [!tip]
> Whenever building your own image or using an upstream image, you can use [Renovate](https://docs.renovatebot.com/) to watch updates for your tools, test the new version and integrate them seamlessly.
## Vulnerability Reports (Trivy)
!!! warning
When reviewing vulnerabilities from containers, you have to consider the following principes :
- containers are usually very short-lived in a CI/CD environment
- no direct user access is possible
- most job does not expose any exteral services (i.e. HTTP server) making attacks reliant on user interaction very hard if not impossible to exploit
In short, risks are often low in **the CI/CD context** but carefully reviewing vulnerabilities are an essential step to secure your pipeline.
> [!important]
> When reviewing vulnerabilities from containers, you have to consider the following principes :
>
> - containers are usually very short-lived in a CI/CD environment
> - no direct user access is possible
> - most job does not expose any exteral services (i.e. HTTP server) making attacks reliant on user interaction very hard if not impossible to exploit
>
> In short, risks are often low in **the CI/CD context** but carefully reviewing vulnerabilities are an essential step to secure your pipeline.
Here are vulnerability reports for each default image used by _to be continuous_ templates (generated every day):
@@ -38,25 +38,25 @@ Don't panic, we provide all required tools to initiate it for the first time, an
That should take a while, but hopefully at the end you'll have cloned the complete _to be continuous_ group and projects :tada:.
!!! WARNING "Installing _to be continuous_ in a custom root group"
By default and preferably, _to be continuous_ shall be installed:
* in the `to-be-continuous` root group on your GitLab server,
* with **public** visibility.
If one or both of these requirements can't be met (because you're not allowed to create a root group in your organization and/or
not allowed to create projects with public visibility), please
[read the advanced usage chapter](./advanced.md#installing-tbc-in-a-custom-group).
> [!important] Installing _to be continuous_ in a custom root group
> By default and preferably, _to be continuous_ shall be installed:
>
> * in the `to-be-continuous` root group on your GitLab server,
> * with **public** visibility.
>
> If one or both of these requirements can't be met (because you're not allowed to create a root group in your organization and/or
> not allowed to create projects with public visibility), please
> [read the advanced usage chapter](./advanced.md#installing-tbc-in-a-custom-group).
## Build the tracking image
!!! WARNING "Deprecated"
_to be continuous_ used to need the [tracking](https://gitlab.com/to-be-continuous/tools/tracking) Docker image to be successfully built and available locally in your
Docker registry because it is used as a [service container](https://docs.gitlab.com/ci/services/) by all templates.
This is no longer required as in its latest versions, TBC - by default - is not pulling the image anymore.
This can be overridden. For more info, please [read the advanced usage chapter](./advanced.md#setup-tracking).
> [!important] Deprecated
> _to be continuous_ used to need the [tracking](https://gitlab.com/to-be-continuous/tools/tracking) Docker image to be successfully built and available locally in your
> Docker registry because it is used as a [service container](https://docs.gitlab.com/ci/services/) by all templates.
>
> This is no longer required as in its latest versions, TBC - by default - is not pulling the image anymore.
>
> This can be overridden. For more info, please [read the advanced usage chapter](./advanced.md#setup-tracking).
## Sync. your local copy of tbc
@@ -71,14 +71,14 @@ For this, you only have to create a [scheduled pipeline](https://docs.gitlab.com
All other required variables will be automatically retrieved from [GitLab CI predefined variables](https://docs.gitlab.com/ci/variables/predefined_variables/).
!!! WARNING
From this point, you might not make any commit in any local copy of _to be continuous_ projects
because it will get overwritten every night.
If you need to modify template code, you'll have 2 options depending on your case:
* if it's a general enhancement/fix: make a contribution to the Open Source [to be continuous project](https://gitlab.com/to-be-continuous/) and get the change through the synchronization task,
* if it's a change specific to your company: see [advanced usage](advanced.md)
> [!important]
> From this point, you might not make any commit in any local copy of _to be continuous_ projects
> because it will get overwritten every night.
>
> If you need to modify template code, you'll have 2 options depending on your case:
>
> * if it's a general enhancement/fix: make a contribution to the Open Source [to be continuous project](https://gitlab.com/to-be-continuous/) and get the change through the synchronization task,
> * if it's a change specific to your company: see [advanced usage](advanced.md)
By the way, you can manually trigger a pipeline in your [tools/gitlab-sync](https://gitlab.com/to-be-continuous/tools/gitlab-sync) project
anytime to synchronize your _to be continuous_ copy.