-
Notifications
You must be signed in to change notification settings - Fork 0
Home
This describes the L-CAS deployment infrastructure, build around AptLy, GitHub Actions, self-hosted GitHub Action Runners, a dockerised Git-buildpackage pipeline that utilised off-the-shelf OSRF technologies used for ROS2 (adopting the best pieces of
ros-buildfarm.
Our aptly server is at https://lcas.lincoln.ac.uk/apt/.
Planned Repository structure:
-
/lcas
prefix for the main public repository (aptly key:lcas_ros
) -
/restricted/XXX
prefix for any packages that are generally restricted, accessibly via HTTPS only with HttpBasicAuth for different sub tenants (XXX
), e.g.aoc
, (aptly key:lcas_restricted_XXX
) -
/api
API endpoint (authenticated with HttpBasicAuth -
/staging
prefix for the staging repository used for the build process to stage packages. Access should be restricted to the build processes itself. Again authenticated via HttpBasicAuth and secured by HTTPS only (aptly key:lcas_stage
)
The current repository structure is here:
Other endpoints are possible if and when needed. Authentication and https envelop implemented on main Reverse Proxy Server, not aptly itself. Generally, we only provide Debian packages for the main Ubuntu distribution and ROS2 distribution pair, e.g. humble
on jammy
. Default architecture is amd64, but support for arm64 is provided.
The main configuration of our distribution remains at https://github.com/LCAS/rosdistro. Usage instructions for developers and end-users is also provided there for the whole L-CAS distribution
https://github.com/LCAS/docker-dpkg-build/ provides the dockerised Builder action, that can be dispatched to build a specific package. It heavily relies on GitHub action to serve as the main principle to run build jobs and trigger them. Any secrets required (access tokens) are managed through the GitHub Action secret mechanism and are never part of the repository itself. By default, actions run on our own on-premise infrastructure (lcas
runner group).