# VDIFPacker — Deployment ## Debian Packages | Package | Contents | |---|---| | `python3-edd-dbbc` | Python library (`edd.dbbc`) | | `edd-dbbc-utils` | Compiled binaries including `vdif_packer` | | `python3-vdif-rw` | VDIF read/write library (dependency) | | `python3-psrdadacpp` | PSRDADA Python bindings (dependency) | ## 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` | ## CI Pipeline The VDIFPacker is built and deployed through the same CI pipeline as the DigitalDownConverter, as both share the `edd_dbbc` Docker image and the `dbbc` Debian package. | Stage | Job | Description | |---|---|---| | `build` | `build_source` | CMake + make | | `build` | `build-deb` | Builds `python3-edd-dbbc` and `edd-dbbc-utils` | | `test` | `test_python` | Python test suite | | `deploy` | `upload-deb` | Uploads to Aptly (requires build + tests) | | `deploy` | `build_docker` | Rebuilds and pushes `edd_dbbc` image | ## Ansible Deployment ```bash ansible-playbook provision.yml --tags vdif_packer ``` The role delegates to `EDD.core.common` with: ```yaml image_name: edd_dbbc default_container_name: vdif_packer container_cmd: "edd_vdif_packer --host={{ edd_subnet }} --port={{ bind_port }}" register_as_pipeline: True provision_test_imports: "edd.dbbc.vdif_packer_tests" ``` ## Provision Tests Provision tests are imported from `edd.dbbc.vdif_packer_tests`. They verify that the pipeline starts, accepts configuration, and reaches the `configured` state.