Commit Graph

330 Commits

Author SHA1 Message Date
Ramón Souza
3035d3b532 enable websocket compression in front-end servers 2022-10-14 10:33:14 -03:00
Daniel Molkentin
eb70ef0c87 chore(bbb-web): remove obsolete, unused ExecStartPre statement 2022-10-11 19:47:53 +02:00
Daniel Molkentin
02891cf320 chore(bbb-web): do away with wrapper script, use default files 2022-10-11 19:45:26 +02:00
Ramón Souza
7ab6a247ae enable websocket compression in front-end servers 2022-10-04 10:45:44 -03:00
Ramón Souza
94b8827bff update number of default servers for bbb-html5 2022-09-28 10:27:59 -03:00
Ramón Souza
2b0971e2c8 Merge tag 'v2.5.6' into merge-256-26 2022-09-26 09:17:59 -03:00
Brent Baccala
b2e6f66a57 Allow build/setup.sh to be interrupted with CNTL-C 2022-09-25 17:38:44 -04:00
Joao Victor
2f9cdbfb78 build(dashboard): omit dev dependencies and disable eslint 2022-09-16 11:13:57 -03:00
Anton Georgiev
a17679834f
Merge pull request #15632 from antobinary/build-tweaks-2
fix: JVM apps stopping to differ from failure
2022-09-07 22:02:52 -04:00
Anton Georgiev
4ea7bfb6b4 fix: JVM apps stop to differ from failure 2022-09-02 01:59:56 +00:00
Anton Georgiev
19b7230941 build: /lib vs /usr/lib consistency 2022-09-01 15:40:01 +00:00
Anton Georgiev
3530c5fc51 build: /lib vs /usr/lib closes #15553 2022-09-01 11:56:35 +00:00
prlanzarin
ef7b1fb3e5 build: use FIFO scheduler in bbb-webrtc-sfu
bbb-webrtc-sfu (and mediasoup) are running in the CFS scheduler which
means it has to compete with (much) lower priority tasks like
presentation conversion, recording processing, [...]
Since it encompasses an RTC application which also handles audio, it
should be _at least_ on the same scheduling policy as FS/bbb-html5 - and
that should be safer now  with mediasoup which has a lower footprint
(and generates lower CPU noise overall).

This commit puts bbb-webrtc-sfu in the FIFO scheduling policy (same as
bbb-html5). Also bumps bbb-html5 nice level up to 18 and sets SFU to
nice 19 (so bbb-html5 has some advantage when push comes to shove).

This can be improved further by using per-process priorities in SFU.
Ideally we'd want mediasoup audio workers and mcs-core to be the same
priority as FS (so higher than bbb-html5), but the rest of them
(video/screen workers) to be the same or lower than bbb-html5. For
future reference:
  - https://github.com/bigbluebutton/bbb-webrtc-sfu/commit/3e245122dfa155ecb77b536eeadac1e4607cee
  - 66d443d204
2022-08-26 14:08:24 +00:00
Ramón Souza
e6daad4e3d
Update build/packages-template/bbb-html5/build.sh
Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
2022-08-26 09:31:29 -03:00
Ramón Souza
a277049e55
Update build/packages-template/bbb-html5/build.sh
Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
2022-08-26 09:31:06 -03:00
Anton Georgiev
59e54c8030 build: replace globally v=VERSION for cache busting 2022-08-25 15:11:48 +00:00
Anton Georgiev
b677996410 Merge branch 'fix-font-preload' of github.com:ramonlsouza/bigbluebutton into test-css-version 2022-08-24 18:50:25 +00:00
Anton Georgiev
28bd98e107
Update build/packages-template/bbb-config/after-install.sh 2022-08-20 08:52:17 -04:00
Anton Georgiev
2d7ac73364
Merge branch 'v2.6.x-release' into default-nginx-config 2022-08-20 05:10:22 -04:00
Anton Georgiev
23c0dc56c4 Merge branch 'v2.5.x-release' of github.com:bigbluebutton/bigbluebutton into cairosvg 2022-08-19 13:04:00 +00:00
Ramón Souza
4293a081c1 fix font preload 2022-08-18 13:39:47 -03:00
Anton Georgiev
494251f2d0 build: export-annotations depend on cairosvg imagemagick ghostscript 2022-08-10 20:20:46 +00:00
Fred Dixon
99a3c09ecb Added bbb-rap-caption-inbox 2022-08-09 07:17:29 -05:00
Fred Dixon
330d758053 Fix #15138 2022-08-08 11:46:05 -05:00
prlanzarin
83ddc621a8 fix(bbb-html5): serve compressed version of /compatibility files
Files are compressed on build, but gzip_static on isn't set on their
nginx route - so original files are being served, uncompressed.

This commit serves the previously compressed files instead (thus
reducing initial transfer size by ~1 MB).

Someone should look into whether serving compressed version of the rest
of assets makes sense - it probably does.
Still pending: fonts, locales, svgs, everything under resources, ...
2022-07-16 00:36:26 +00:00
Anton Georgiev
cef352b6de
Merge pull request #15392 from GuiLeme/fix-bbb-demo-removal
fix(config): Correction to nginx assets folder
2022-07-15 11:45:02 -04:00
GuiLeme
145d360553 [fix-bbb-demo-removal] - correction to nginx assets folder 2022-07-15 12:11:42 -03:00
Ramon Souza
024f918f5e Merge remote-tracking branch 'upstream/v2.6.x-release' into merge25-26-jul14 2022-07-15 11:10:18 -03:00
Ramon Souza
db5ac1428a Merge tag 'v2.5.3' into merge25-26-jul14 2022-07-15 11:08:02 -03:00
Anton Georgiev
019b366ef8
Merge pull request #15376 from antobinary/epoch-akka
build: set default epoch of 1 to bbb*akka components
2022-07-14 10:24:43 -04:00
Anton Georgiev
7eddf391e1 build: set default epoch of 1 to bbb*akka components 2022-07-13 15:53:50 +00:00
GuiLeme
bdb9c6857f Merge remote-tracking branch 'upstream/v2.6.x-release' into demo-page-removal 2022-07-13 11:16:51 -03:00
Anton Georgiev
4c0226e375 build: auto-enable service bbb-export-annotations 2022-07-13 01:35:17 +00:00
Anton Georgiev
19dd5be49c build: ensure redis is up redis-server.service.d/overrride.conf 2022-07-12 20:57:34 +00:00
Anton Georgiev
4769299276 test: add bbb-html5-nodejs to github workflow 2022-07-12 16:48:17 +00:00
Anton Georgiev
93865717b6 build: bbb-html5-nodejs to reduce size of bbb-html5 2022-07-12 16:25:37 +00:00
Anton Georgiev
7642fd67fe build: set bbb-export-presentations as a required package 2022-07-08 01:19:53 -04:00
Anton Georgiev
37a1807549 build: bbb-export-annotations packaging part2 2022-07-08 01:13:59 -04:00
Brent Baccala
00b319355d package build scripts - calculate GIT_REV and COMMIT_DATE outside the
docker container and pass them in as environment variables, since we
can't compute them inside the docker container if the source directory
is a git worktree
2022-07-07 18:38:49 -04:00
Anton Georgiev
ec7d180f8c Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into npm-audit 2022-07-07 20:44:34 +00:00
Anton Georgiev
6c02497643
Merge pull request #14889 from BrentBaccala/issue1488
Let packaging scripts operate in a git worktree
2022-07-07 16:42:08 -04:00
Anton Georgiev
6cf2d3def7 build: add export annotations to bbb target 2022-07-07 17:40:04 +00:00
Anton Georgiev
0ad2a7aa70 Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into npm-audit 2022-07-07 17:31:35 +00:00
Anton Georgiev
aa38cca17f build: packaging for bbb-export-annotations 2022-07-06 20:51:57 +00:00
Anton Georgiev
55dbc34984
Merge pull request #14616 from danimo/bbb-target
build: Introduce bigluebutton.target
2022-07-06 14:42:09 -04:00
Anton Georgiev
22bef3b551
Update build/packages-template/bbb-config/bigbluebutton.target 2022-07-06 14:41:18 -04:00
Anton Georgiev
3cdfe2fc39 chore: update meteor 2.7.1 to 2.7.3 2022-07-05 13:19:08 +00:00
prlanzarin
6225042148 feat: add user name to checkAuthorization response
Audio's callerId depends on the user name and there isn't
an "on-demand" way of fetching that field internally, making callerId
assembly with trusted attributes (server-side generated) impossible in
bbb-webrtc-sfu.

The new extra header (User-Name, mapped to user_name in the proxied
connection) allows fetching the user name field in a cheap way and
consequently provides a cheap+safe way of assembling the callerId.

Alternatives I've considered but discarded:
  - a new akka-apps req-resp pair for fetching the user name (+overhead)
  - a new akka-apps req-resp pair for generating the callerId (+overhead)
  - piggybacking on GetMicrophonePermissionReq/Resp to generate the
    callerId (same overhead, but mixing responsabilities)
2022-06-28 20:33:36 +00:00
Daniel Molkentin
a7f43ba2b8 Merge remote-tracking branch 'origin/v2.6.x-release' into bbb-target 2022-06-27 17:03:01 +02:00
Anton Georgiev
5290c2039c
Merge pull request #15194 from schrd/cleanup-akka-systemd
fix: remove obsolete systemd overrides
2022-06-24 08:58:31 -04:00
Anton Georgiev
fa5ea33c6c
Merge pull request #15100 from schrd/fix-issue-10989
Fix(build): add service dependency to redis for several services
2022-06-23 15:40:38 -04:00
GuiLeme
b5d1e3eaef [demo-server-removal] - reinserted the / endpoint to reference the static assets. 2022-06-23 10:35:47 -03:00
GuiLeme
780a954ce2 [demo-page-removal] - restore default folder changing its name to assets and changed reference of bbb-web's static contents to /assets 2022-06-21 16:56:12 -03:00
GuiLeme
6df36b7d76 [demo-page-removal] - Removed traces of demo-server (build and demo-api) 2022-06-20 15:47:47 -03:00
Daniel Schreiber
74576f4fff fix: remove obsolete systemd overrides
the redis dependency for `bbb-apps-akka` and `bbb-fsesl-akka` has
already beed added in commit b6777ed9cb so
the override is no longer neccesary.

closes #15192
2022-06-16 13:54:31 +02:00
Anton Georgiev
5961797433 build(fsesl-akka): build deps in sequence to allow for ci use 2022-05-30 20:22:18 +00:00
Daniel Schreiber
1a12514b61 Fix(build): add service dependency to redis for several services
* fix unit name: the unit name on Ubuntu is `redis-server.service`
* services which need a working redis require both After= and Wants=

See the description in the `systemd.unit` man page.
2022-05-29 22:31:03 +02:00
Anton Georgiev
b5241d0ee9
Merge pull request #15022 from schrd/etherpad-clusterproxy-fix
Fix etherpad session authentication to work in cluster setups
2022-05-18 12:44:17 -04:00
Daniel Schreiber
dfd93e7959 Fix etherpad session authentication to work in cluster setups
Etherpad uses the sessionID cookie for authorization. In cluster setups the
host part of the URI which serves the html5 frontend is different from
the hostname part of the URI which serves etherpad. Therefore the
bbb-html5 client can't set a cookie for etherpad which contains the
etherpad sessionID.

This patch uses the `ep_auth_session` etherpad plugin which takes the
`sessionID` as query parameter, sets the cookie in the browser and
redirects the iframe to the pad URI.
2022-05-16 07:40:42 +02:00
Fred Dixon
ef6eb21cce Minor refactoring of propagating new version 2022-05-15 13:58:25 -05:00
Anton Georgiev
c4874398f6 chore: Merge 2.5.0-rc.2 into develop 2022-05-13 21:03:34 +00:00
Anton Georgiev
fd5d3cbfac
Merge branch 'v2.5.x-release' into default-nginx-config 2022-05-13 10:23:38 -04:00
Anton Georgiev
61d27c78f7 build: set html5 client version on bbb-config update 2022-05-13 13:50:20 +00:00
Gustavo Trott
4c27159ee9
Merge pull request #14990 from antobinary/ci
build(fsesl-akka): build deps in sequence to allow for ci use
2022-05-10 13:32:51 -03:00
Anton Georgiev
653dd8a08f build(fsesl-akka): build deps in sequence to allow for ci use 2022-05-10 16:22:28 +00:00
Ramon Souza
07f9a192b9 Merge remote-tracking branch 'upstream/v2.4.x-release' into merge-2425-apr27 2022-04-27 15:32:20 -03:00
Brent Baccala
c9606257aa package build scripts - calculate GIT_REV and COMMIT_DATE outside the
docker container and pass them in as environment variables, since we
can't compute them inside the docker container if the source directory
is a git worktree
2022-04-26 10:51:29 -04:00
Calvin Walton
09124ab06c packaging: Add dependencies on yq 3
yq package is now provided in the BigBlueButton support PPA for BBB 2.5,
so we can depend on the package now. Ensure the dependency is specific
to avoid an incompatible yq version 4 from being installed.
2022-04-25 15:04:38 -04:00
Ramon Souza
c96c47e551 update bbb-html5 build scripts for meteor 2.7.1 2022-04-25 13:11:12 -03:00
Daniel Schreiber
5d3b8cdc66 build: fix bbb-html5 nginx site config 2022-04-04 23:45:03 +02:00
Daniel Schreiber
52112cde87 build: allow bbb nginx config hook for operators
Sometimes operators need to tweak the nginx config. They should not
modify config files provided by the packages. Instead they should add
their own config files in `/etc/bigbluebutton/nginx/`. This patch links
the default config provided by packages into this directory.
2022-04-04 22:30:49 +02:00
Anton Georgiev
97dbc1aeb6
Merge branch 'v2.5.x-release' into bbb-target 2022-04-01 14:21:15 -04:00
Bohdan Zhemelinskyi
51032dd593 fix disable THP called too often 2022-04-01 14:43:48 +00:00
Anton Georgiev
84821f47bc chore: move sox dependency to Dockerfile 2022-03-31 01:39:46 +00:00
Anton Georgiev
5926217199 build: drop net-tools from bbb-freeswitch-core 2022-03-30 14:57:15 +00:00
Anton Georgiev
fc688f2038 Merge branch 'meteor-261' of github.com:ramonlsouza/bigbluebutton into meteor-261 2022-03-29 20:27:26 +00:00
Anton Georgiev
ee9a0146a8 build: move ruby-bundler libsystemd-dev to docker image 2022-03-29 20:09:44 +00:00
Anton Georgiev
0836351747
Merge pull request #14662 from danimo/recordplaybackfix
make bbb-record-core package install again on focal
2022-03-29 15:04:07 -04:00
Calvin Walton
c722b799be bbb-record-core: Use bundler deployment option
This makes the bundle install error out if the Gemfile.lock is out of
date (Gemfile was updated) rather than silently updating it during the
build.
2022-03-29 12:52:12 -04:00
Calvin Walton
98dfb2789a bbb-record-core: Use bundler from ruby-bundler package 2022-03-29 11:28:02 -04:00
Calvin Walton
cbaae2c753 Update bbb-record-core dependencies.
Since gems are no longer being built during package install, dev
packages are no longer needed. Install the runtime libraries instead.

Drop the libxslt & libxml dependencies, since current nokogiri versions
used bundled copies of those libraries.
2022-03-29 11:06:00 -04:00
Fred Dixon
08c6ad67fb
Update after-install.sh
Make check for worker_rlimit_nofile silent
2022-03-27 09:09:52 -04:00
Fred Dixon
50498354f0 Add needed dependency to get IP address 2022-03-26 17:07:14 -05:00
Fred Dixon
4707bf839b Fix #14670 2022-03-26 17:06:51 -05:00
Daniel Molkentin
dc012a2548 fix(bbb-record-core): make package install again on focal
Now uses Ubuntu's bundler version to install all dependencies at build time
rather than install time. Gems are also now vendored, and no longer pollute the
operating system.
2022-03-23 22:55:04 +01:00
Anton Georgiev
6b4a7ff898 refactor: swap netstat with ss 2022-03-23 20:50:19 +00:00
Daniel Molkentin
9c4fc8ccf1 chore: net-tools -> iproute2
Ensure code duplication is at least documented and end the feature
disparity between files.
2022-03-22 16:30:43 +01:00
Anton Georgiev
33a2dd566c build: do not delete .nginx file, it is removed on upgrade too 2022-03-18 19:02:46 +00:00
Daniel Molkentin
91c882862e fix paste error 2022-03-17 16:06:42 +01:00
Daniel Molkentin
61ce7ab9b6 inject dependency to bigbluebutton.target into externally provided services 2022-03-17 15:29:02 +01:00
Daniel Molkentin
8b8854a008 make bbb-pads.service part of bigbluebutton.target 2022-03-17 15:15:21 +01:00
Daniel Molkentin
dbae417b0c akka apps should not have override files
they are already provided by sbt
2022-03-17 13:03:32 +01:00
Daniel Molkentin
568756bf7e move systemd files to /lib/systemd/system 2022-03-17 13:03:15 +01:00
Daniel Molkentin
9f833a4760 Introduce bigbluebutton.target 2022-03-17 11:35:42 +01:00
Anton Georgiev
5db05bdad8 fix: set repo.artima.com/releases to https 2022-03-16 19:20:26 +00:00
Anton Georgiev
f4c5ce50b6 build: bbb-web require openjdk-11-jdk not 8 2022-03-16 19:04:47 +00:00
Anton Georgiev
c261c542ca build: adapt packaging for java 11 2022-03-16 18:31:49 +00:00
Anton Georgiev
9705ac99b0
Merge pull request #14607 from pedrobmarin/b-e-fua
build(etherpad): forbid userName argument
2022-03-16 12:23:27 -04:00
Anton Georgiev
06d2652714 build: do not remove /usr/share/bigbluebutton/nginx/web on upgrade 2022-03-16 16:19:55 +00:00
Anton Georgiev
405d326ea7
Merge branch 'v2.5.x-release' into meteor-261 2022-03-16 11:55:31 -04:00