# DigitalDownConverter — Deployment ## Debian Packages The pipeline is distributed as Debian packages built by CI and hosted in the MPIFR Aptly repository. The `edd_dbbc` Docker image installs them at build time. | Package | Contents | |---|---| | `python3-edd-dbbc` | Python library (`edd.dbbc`) | | `edd-dbbc-utils` | Compiled C++ binaries (`ddc_processing`, etc.) | ## Docker Image | Property | Value | |---|---| | Image name | `edd_dbbc` | | Base image | `edd_build:cuda12.6.1_ubuntu24.04` | | Ansible build role | `roles/edd_dbbc/` | | Registry | `gitlab-registry.mpcdf.mpg.de/mpifr-bdg/edd/dbbc` | The image installs `python3-edd-core`, `python3-edd-dbbc`, `edd-dbbc-utils`, `mkrecv`, `mksend`, and `psrdadacpp` from the MPIFR Aptly repository. ## CI Pipeline | Stage | Job | Description | |---|---|---| | `build` | `build_source` | CMake + make, produces `release/` artifacts | | `build` | `build-deb` | Builds Debian packages via `.build_template` | | `test` | `test_cpp` | CTest suite against built binaries | | `test` | `test_python` | Python test suite with coverage | | `stats` | `coverage_cpp` | lcov C++ coverage badge | | `stats` | `coverage_python` | Python coverage badge | | `stats` | `cpplint` | C++ style lint badge | | `stats` | `pylint` | Python lint | | `deploy` | `upload-deb` | Uploads packages to Aptly (requires build + tests) | | `deploy` | `build_docker` | Builds and pushes `edd_dbbc` image | ## Ansible Deployment The pipeline is deployed via the `ddc_processor` Ansible role: ```bash ansible-playbook provision.yml --tags ddc_processor ``` The role delegates to `EDD.core.common` with: ```yaml image_name: edd_dbbc default_container_name: ddc_processor container_cmd: "edd_ddc_processor --host={{ edd_subnet }} --port={{ bind_port }}" register_as_pipeline: True provision_test_imports: "edd.dbbc.ddc_processor_tests" ``` ## Provision Tests Provision tests are imported from `edd.dbbc.ddc_processor_tests`. They verify that the pipeline starts, accepts configuration, and reaches the `configured` state before the observation begins.