Skip to content
Snippets Groups Projects
Unverified Commit b12566c8 authored by Ritesh Raj Sarraf's avatar Ritesh Raj Sarraf
Browse files

Document the extra apt repository feature


This MR documents the Extra APT Repository feature with some example
screenshots.

Signed-off-by: default avatarRitesh Raj Sarraf <ritesh.sarraf@collabora.com>
parent e143de11
No related branches found
No related tags found
1 merge request!223check and add extra apt repository
Pipeline #342570 failed
# The document is now available [here](https://www.apertis.org/guides/component_guide/)
# Injecting an external APT repository to CI Build environment
The package builds are targetted against a particular release of the OS, making use of the specific versioned libraries and
dependencies shipped with the OS release.
There are scenarios where a user is required to pull in external dependencies.
* User wants to build a package, which has dependencies on other packages, that are not part of the OS release
* User wants to build a proprietary package, which is hosted in a separate private repository
The CI Build Environment provides a mechanism to inject external APT repository to cover the above mentioned use cases.
There are 3 environment flags that define this behavior.
* EXTRA_REPO_BASE_URL
* EXTRA_REPO_VERSION
* EXTRA_REPO_COMPONENTS
`EXTRA_REPO_BASE_URL` defines the APT repository url. It only supports standard http/s based urls, as well as http password
protected repository urls. Eg. `https://username:password@repositories.apertis.org/apertis/`
This variable is mandatory.
`EXTRA_REPO_VERSION` defines the APT repository release. An APT repository may host multiple releases, each distinguished by
its release names. An example release name is: `v2022`.
This variable is optional. If not specified, the release is determined from the running git branch.
`EXTRA_REPO_COMPONENTS` defines the APT repository components. Multiple repository components may be specified by space.
Eg. "target sdk development". This variable is mandatory.
> ✍️ Note!
>
> If the mandatory options are not specified, the CI machinery will print a warning about it and disregard the extra APT repository
Below are some screenshots on how these variables and their values are fed into Gitlab CI
![Gitlab CICD](/imgs/env-variables-main.png "Gitlab CICD Overview")
![EXTRA_REPO_BASE_URL](/imgs/base-url.png "EXTRA_REPO_BASE_URL variable definition")
![EXTRA_REPO_VERSION](/imgs/repo-version.png "EXTRA_REPO_VERSION variable definition")
![EXTRA_REPO_COMPONENTS](/imgs/extra-components.png "EXTRA_REPO_COMPONENTS variable definition")
# Updating Existing Components
## Manually Updating Components from Debian
......
imgs/base-url.png

238 KiB

imgs/env-variables-main.png

282 KiB

imgs/extra-components.png

228 KiB

imgs/repo-version.png

219 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment