-
-
Notifications
You must be signed in to change notification settings - Fork 255
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
uStreamer Debian package: MEGA-TICKET #1353
Comments
This was referenced Apr 11, 2023
Create a Dockerfile that builds a uStreamer Debian package from source
tiny-pilot/ustreamer-debian#3
Closed
@jdeanwallace - When you get a chance, can you create issues for the elements in Milestones 2 and 3 and add them to the 2.6.1 project? Except assume for now that ustreamer-debian will live in a separate repo. |
This was referenced Jun 6, 2023
@jdeanwallace - Is anything left of this or should we close as complete? |
This issue is complete. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This ticket is the result of tiny-pilot/ustreamer-debian#1
Overview
We want to reimplement
ansible-role-ustreamer
functionality as a Debian package.Background
We've found that running Ansible is generally a slow process that might not be well suited for installing TinyPilot and TinyPilot related software, like uStreamer. We've already partially migrated our TinyPilot installation away from Ansible to a Debian package and we'd like to do the same with our uStreamer installation. Using a Debian package speeds up the installation process by using simple bash scripts, as opposed to Python in Ansible, and skipping a package installation when the version requirement has already been met.
Milestones
Milestone 1: Install a pre-compiled uStreamer binary via a Debian package, while maintaining the ability to build uStreamer from source
Goal
Avoid building uStreamer on the device, reducing the TinyPilot installation time by about 20s.
This is the highest priority goal because it gives us the most value from migrating uStreamer to a Debian package.
Steps
Drop support for Debian Buster and uStreamer < 5.0 ansible-role-ustreamer#99
Create a Dockerfile that builds a uStreamer Debian package from source ustreamer-debian#3
Create a uStreamer Debian release ustreamer-debian#4
Install the uStreamer Debian package instead of building from source ansible-role-ustreamer#100
Milestone 2: Consolidate uStreamer's Ansible role
and Debian packagewith TinyPilot repoGoal
Avoid making parallel changes (i.e., bumping version numbers) in
boththeansible-role-ustreamer
, andustreamer-debian
reposansible-role-ustreamer
repo; when we later incrementally migrate uStreamer's Ansible role functionality to the Debian package.Steps
Archive the ansible-role-ustreamer repo ansible-role-ustreamer#113
Consolidate the ansible-role-ustreamer repo into the TinyPilot repo #1426
Bundle the local version of the Ansible uStreamer role #1427
Archiveustreamer-debian
repoConsolidateustreamer-debian
with TinyPilot repoBundle local version of uStreamer's Debian package fileMilestone 3: Partially migrate uStreamer Ansible role functionality to Debian package
Goal
Migrate highest-impact and/or lowest-effort Ansible tasks to Debian package.
Steps
Drop support for building uStreamer from source #1428
Migrate creation of uStreamer user and group to uStreamer Debian package ustreamer-debian#11
Migrate Janus static config files to uStreamer Debian package ustreamer-debian#12
Milestone 4: Migrate remaining uStreamer Ansible role functionality to Debian package
Goal
Purge uStreamer's Ansible role.
Steps
Install
yq
as part of the uStreamer Debian packageyq
/home/ustreamer/config.yml
file and determine the value ofustreamer_capture_device
which is needed to provision the TC358743 chip and determine uStreamer launcher runtime configyq
to/home/ustreamer/.local/bin
Migrate default uStreamer config for TC358743 chips to uStreamer's Debian package
postinstall
script/opt/ustreamer-launcher/configs.d/000-defaults.yml
file on devices with TC358743 chipsMigrate default uStreamer config for non-TC358743 chips to uStreamer's Debian package
postinstall
script/opt/ustreamer-launcher/configs.d/000-defaults.yml
file on devices with non-TC358743 chipsMigrate uStreamer launcher script to uStreamer Debian package
Migrate the provisioning of the TC358743 chip, which consists of the following sub-tasks:
Migrate
/boot/config.txt
to uStreamer Debian packageMigrate
/boot/cmdline.txt
to uStreamer Debian packageMigrate TC358743 EDID file to uStreamer Debian package
Migrate TC358743 EDID loader systemd service to uStreamer Debian package
Migrate uStreamer Janus plugin config to uStreamer Debian package
ustreamer_capture_device
Migrate uStreamer systemd service to uStreamer Debian package
Install uStreamer Debian package from TinyPilot's Ansible role
Purge uStreamer's Ansible role from TinyPilot repo
The text was updated successfully, but these errors were encountered: