|
|
# Runners
|
|
|
|
|
|
Currently two runners are available
|
|
|
|
|
|
- `fiesta`
|
|
|
- `fiesta-flatpak`
|
|
|
- `freebsd-node3`
|
|
|
- `ange-windows-kvm`
|
|
|
|
|
|
fiesta runner is a shared runner, which means it will be available for all repositories, fiesta-flatpak is runner instance running on same machine with specific privileges enabled needed to run flatpak builds. freebsd-node3 is DO server which used to serve the build.kde.org, currently it is used for doing FreeBSD builds. ange-windows-kvm is the KVM virtual machine on ange.kde.org running Windows 10.
|
|
|
|
|
|
# CI Builds
|
|
|
|
|
|
Currently shared runner is capable of running Android, FreeBSD, Linux and Windows builds provided by the build.kde.org
|
... | ... | @@ -116,34 +105,6 @@ flatpak: |
|
|
|
|
|
If you skip the `MANIFEST_URL` it will skip downloading manifest from remote location and directly use the `MANIFEST_PATH`. Note that `MANIFEST_URL` variable will be deprecated as soon as the manifests from the `kde-flatpak-manifests` will be merged in the individual repositories.
|
|
|
|
|
|
# Flatpak runner administration
|
|
|
|
|
|
Flatpak runner requires seperate configuration apart from the normal docker executor registration.
|
|
|
|
|
|
```toml
|
|
|
[[runners]]
|
|
|
name = "fiesta-flatpak"
|
|
|
url = "https://invent.kde.org/"
|
|
|
token = "xxxxxxxxxxxxxxxxxxxx"
|
|
|
executor = "docker"
|
|
|
[runners.docker]
|
|
|
tls_verify = false
|
|
|
image = "ubuntu:bionic"
|
|
|
privileged = false
|
|
|
disable_entrypoint_overwrite = false
|
|
|
oom_kill_disable = false
|
|
|
disable_cache = false
|
|
|
cap_add = ["SYS_ADMIN", "NET_ADMIN"]
|
|
|
devices = ["/dev/fuse"]
|
|
|
volumes = ["/cache", "/var/lib/flatpak"]
|
|
|
shm_size = 0
|
|
|
[runners.cache]
|
|
|
[runners.cache.s3]
|
|
|
[runners.cache.gcs]
|
|
|
```
|
|
|
|
|
|
Important part is, `cap_add`, `devices` and `volumes` entry. Which is modified to make it possible to run flatpak inside docker container.
|
|
|
|
|
|
# Custom builds
|
|
|
|
|
|
Gitlab CI is fairly customizable in terms of what you can run with it. If your project have specific build/testing that you want to run you can extend or create your own `.gitlab-ci.yml`.
|
... | ... | @@ -161,5 +122,4 @@ You can learn more about Gitlab CI from the links in Resources section. |
|
|
# Resources
|
|
|
|
|
|
- [Gitlab CI documentation](https://docs.gitlab.com/ee/ci/yaml/README.html)
|
|
|
- [Gitlab CI Docker executor documentation](https://docs.gitlab.com/runner/executors/docker.html)
|
|
|
- [Docker documentation](https://docs.docker.com/) |