Skip to content

Conversation

@andrescera
Copy link
Member

Summary

This PR integrates the APT repository pipeline with the image building process and adds SRTLA bonding configuration.

Build workflow improvements

  • Add channel input (stable/beta) for package selection
  • Fetch .deb packages from R2 in CI mode, GitHub releases locally
  • Copy fetched packages to overlay for installation
  • Pass mTLS secrets for APT repository access

New fetch-debs.sh script

  • Detects CI vs local mode via R2_ACCESS_KEY_ID presence
  • Uses AWS CLI to sync from R2 bucket in CI mode
  • Uses gh CLI to download from GitHub releases locally
  • Supports channel and architecture parameters

Customize-image.sh enhancements

  • Config split: Modular config files in /etc/ceralive/conf.d/

    • srtla.conf - SRTLA bonding settings
    • streaming.conf - Encoder configuration
    • network.conf - Network/bonding behavior
    • hardware.conf - Hardware settings
    • modems.conf - Modem management
  • SRTLA source policy routing for proper bonding:

    • Routing tables for modems (100-107) and WiFi (110)
    • dhclient exit hook for USB modem interfaces
    • NetworkManager dispatcher for WiFi
  • Install pre-fetched .deb packages from /tmp/debs/

  • mTLS cert injection only in CI mode

  • GPG public key installation for APT verification

Test plan

  • Test fetch-debs.sh locally with gh CLI
  • Verify config files are created correctly
  • Test SRTLA routing scripts on device with modems

Build workflow improvements:
- Add channel input (stable/beta) for package selection
- Fetch .deb packages from R2 in CI mode, GitHub releases locally
- Copy fetched packages to overlay for installation
- Pass mTLS secrets for APT repository access

New fetch-debs.sh script:
- Detects CI vs local mode via R2_ACCESS_KEY_ID presence
- Uses AWS CLI to sync from R2 bucket in CI mode
- Uses gh CLI to download from GitHub releases locally
- Supports channel and architecture parameters

Customize-image.sh enhancements:
- Split config into /etc/ceralive/conf.d/ (srtla, streaming, network, hardware, modems)
- Add SRTLA source policy routing for proper bonding:
  - Routing tables for modems (100-107) and WiFi (110)
  - dhclient exit hook for USB modem interfaces
  - NetworkManager dispatcher for WiFi
- Install pre-fetched .deb packages from /tmp/debs/
- mTLS cert injection only in CI mode (when secrets available)
- GPG public key installation for APT verification
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants