https://github.com/elan-ev/bbb_oc_integration
Ansible role to install the opencast-bigbluebutton-integration on bigbluebutton servers.
https://github.com/elan-ev/bbb_oc_integration
Last synced: 3 months ago
JSON representation
Ansible role to install the opencast-bigbluebutton-integration on bigbluebutton servers.
- Host: GitHub
- URL: https://github.com/elan-ev/bbb_oc_integration
- Owner: elan-ev
- License: bsd-3-clause
- Created: 2022-06-29T13:03:22.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-06-09T09:48:46.000Z (almost 2 years ago)
- Last Synced: 2025-02-25T10:46:43.653Z (3 months ago)
- Language: Jinja
- Homepage: https://galaxy.ansible.com/elan/bbb_opencast_integration
- Size: 12.7 KB
- Stars: 2
- Watchers: 6
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Install the Opencast Integration for BigBlueButton

This is an ansible-role to set up the [opencast-bigbluebutton-integration](https://github.com/elan-ev/opencast-bigbluebutton-integration)
to work with exisiting [BigBlueButton](https://bigbluebutton.org/) and [Opencast](https://opencast.org/) installations.This role can be used to configure the respective BigBlueButton servers and install all the necessary components.
For the Opencast instance you still need to create the respective workflow and the users.
However, this is usually just copying the workflow file to the correct destination on your installation.
You can find examples of valid workflow files here: https://github.com/elan-ev/opencast-bigbluebutton-integration/tree/master/post-archive## Requirements
This role assumes that the file `/etc/bigbluebutton/bbb-web.properties` is already present (if not you need to create it beforehand).
## Role Variables
### Required Variables
There are some required variables to be able to connect to opencast.
Without them this role will not work.
They are:| Variable | Example Value | Description |
|:--|:--|:--|
| `bbb_oc_workflow` | `post-archive` or `post-publish` | The workflow to use |
| `bbb_oc_opencast_server` | `https://develop.opencast.org` | The opencast server that ingests the recordings |
| `bbb_oc_opencast_user` | `admin` | The user that can access opencast |
| `bbb_oc_opencast_password` | `your-password` | The password for that user |### Version Checkout
The role uses the [`ansible.builtin.git`-module](https://docs.ansible.com/ansible/latest/collections/ansible/builtin/git_module.html)
to download the ruby scripts for the integration from [their repository](https://github.com/elan-ev/opencast-bigbluebutton-integration).
You can checkout the desired version with the `bbb_oc_version` variable that is directly passed to the module's parameter [`version`](https://docs.ansible.com/ansible/latest/collections/ansible/builtin/git_module.html#parameter-version). The **default** for this variable is `HEAD`.### Optional Variables
There are further variables you can use to configure the integration.
For a full overview of all the configuration options have a look at the [defaults](defaults/main.yml)-file.
For a better understanding you should probably also have a look at the configuration of the
[opencast-bigbluebutton-integration](https://github.com/elan-ev/opencast-bigbluebutton-integration)
and of course BigBlueButton and Opencast themselves.## Example Playbook
Your playbook might look like this:
```yaml
---- hosts: all
become: true
vars:
bbb_oc_workflow: post-archive
bbb_oc_opencast_server: https://develop.opencast.org
bbb_oc_opencast_user: admin
bbb_oc_opencast_password: '{{ your_password_from_vault }}'
roles:
- role: elan.bbb_opencast_integration
```## Development
For linting and role development you can use the tools defined in [development requirements](.dev_requirements.txt).
You can install them in a python virtual environment like this:```sh
# Create a virtual environment
python -m venv venv
# Activate the virtual environment
. venv/bin/activate
# Install the dependencies
pip install -r .dev_requirements.txt
```E.g. you can then run the linter (`yamllint -c .yamllint .`) or test your setup with `molecule`.
## License
[BSD-3-Clause](LICENSE)
## Author Information
[ELAN e.V](https://elan-ev.de/)