bigbluebutton-Github/build
Lucas 125d70699b
feat: Initial implementation of Gladia transcriptions to BBB 2.7 (#19091)
* Demo changes

* Revert "feat(captions): no longer writes in the pad"

This reverts commit a76de8c458.

* feat(transcriptoin): Add config options for the transcription backend

* feat(transcription): Add autodetect option to cc chevron

* feat(transcription): Move transcription options into settings modal

* feat(transcription): Set transcription options via userdata

* fix(transcription): Correct userdata for settings transcription params

* feat(transcriptions): options to auto enable caption button

* feat(transcriptions): Option to hide old CC pad funcionality

* fix(transcription): Fix PR comments

* fix(transcription): Refactor updateTranscript to prevent null user and make it more readable

* feat(transcription): bbb_transcription_provider can be set via userdata

* fix(transcription): Use base10 for parseInt

* fix(transcriptions): Fix CC language divider when using webspeech

* fix(transcriptions): Use a default pad in the settings instead of hardcoding 'en'

We still need to use a language pad such as 'en', but in the future we can better
separate these systems.

* fix(transcription): Add a special permission for automatic transcription updates to the pad and restore old per user updates permission

* feature(transcriptions): Include transcriptions submenu and locales

* chore: bump bbb-transcription-controller to v0.2.0

* fix(transcription): Add missing menu files

* fix(transcription): Fix transcription provider options in settings.yml

* fix: setting password for bbb-transcription-controller

* build: add gladia-proxy.log for transcription-controller

* fix(transcriptions): Remove transcript splitting and floor logic from akka apps

* fix(captions): Show long utterances as split captions, show multiple speaker captions

* chore: bump bbb-transcription-controller to 0.2.1

---------

Co-authored-by: Anton Georgiev <anto.georgiev@gmail.com>
2023-11-30 10:10:36 -05:00
..
packages-template feat: Initial implementation of Gladia transcriptions to BBB 2.7 (#19091) 2023-11-30 10:10:36 -05:00
.gitignore initial public version 2021-08-13 12:53:18 +02:00
bbb-ci.png initial public version 2021-08-13 12:53:18 +02:00
change_detection.sh use placeholder files during change detection 2021-10-19 21:06:09 +00:00
deb-helper.sh chore: net-tools -> iproute2 2022-03-22 16:30:43 +01:00
get_external_dependencies.sh initial public version 2021-08-13 12:53:18 +02:00
opts-global.sh initial public version 2021-08-13 12:53:18 +02:00
package-names.inc.sh build: add bbb-transcription-controller 2023-05-19 13:03:17 -03:00
push_packages.sh initial public version 2021-08-13 12:53:18 +02:00
README.md add link to dockerfile repo in documentation 2021-08-13 13:39:52 +02:00
setup-inside-docker.sh package build scripts - calculate GIT_REV and COMMIT_DATE outside the 2022-07-07 18:38:49 -04:00
setup.sh Include comments about th new env vars 2023-08-03 13:35:30 -03:00

build

build scripts for packaging bigbluebutton.

This directory contains scripts for the new open-source Gitlab-CI based build system, which shall replace the legacy non-public Jenkins based process. The build scripts in packages-template have been adapted from the old system, and still have room for improvement / cleanup.

build locally

You can build packages locally. Docker is required to be installed on your machine.

First, get the external dependencies (this can be migrated to git submodules once the legacy CI system has been retired):

./build/get_external_dependencies.sh

For example, to build the bbb-html5 package, run the following command from the repository's root directory.

./build/setup.sh bbb-html5

The package will be put into the artifacts/ subdirectory.

Note that this will pull in the required Docker image from a remote server. If you want to build the container yourself, get the Dockerfile from the repo, build it locally and change the image url in .gitlab-ci.yml to the locally built one.

build using CI

Diagram showing the CI build process

The CI is defined by the file .gitlab-ci.yml in the root directory of this repo.

In CI, the build process is done in four stages:

  1. The first stage determines the last commit that changed each package, and all commits since that made no change to the package. The debian repository server is then queried, to see whether a package is already available for any of those commits. If yes, the package version is written to a file called packages-to-skip.txt.
  2. The second steps pulls in external dependencies. This could be later changed to use git submodules. As of now, that would break the old CI, therefore this step exists.
  3. Debian packages are built in parallel for each component. Packages listed in packages-to-skip.txt are not build (see stage 1). A bigbluebutton meta-package is also created. This package depends on the exact versions of the other core packages, e.g. either packages with the same commit hash (for those that have been built), or the respective version listed in packages-to-skip.txt.
  4. Packages are uploaded to the debian repository server. The endpoint on the repo server also receives the branch name, and generates/updates that branch's repository with all relevant (uploaded and reused) packages.

The repo server software can be found at https://gitlab.senfcall.de/senfcall-public/ci-repo-upload .