Tool for managing access to BigBlueButton meetings https://vergadering.bij1.org/ingang/rooms/
Go to file
Kiara Grouwstra 5042a7f235 fix user index to add name
this is to facilitate emails getting duplicated for proxy voters
2023-01-27 18:24:09 +01:00
app fix user index to add name 2023-01-27 18:24:09 +01:00
config also switch dev/test db's to postgres 2023-01-27 13:18:12 +01:00
db fix user index to add name 2023-01-27 18:24:09 +01:00
lib initial 2020-10-30 16:10:59 +01:00
log flesh out gitignore 2021-12-05 22:15:56 +01:00
public complete voting portal 2023-01-24 14:28:14 +01:00
storage initial 2020-10-30 16:10:59 +01:00
test wip: vote 2023-01-23 22:30:26 +01:00
tmp flesh out gitignore 2021-12-05 22:15:56 +01:00
vendor initial 2020-10-30 16:10:59 +01:00
.browserslistrc initial 2020-10-30 16:10:59 +01:00
.gitignore handle env vars 2021-12-05 22:19:39 +01:00
.gitlab-ci.yml Merge remote-tracking branch 'origin/ci' 2022-08-27 14:29:02 +02:00
.ruby-version initial 2021-12-05 21:52:18 +01:00
.tool-versions patch mimemagic 2021-12-05 22:18:33 +01:00
.woodpecker.yml '.woodpecker.yml' toevoegen 2022-08-15 17:33:16 +00:00
Gemfile add postgres 2022-09-04 22:23:51 +02:00
Gemfile.lock add postgres 2022-09-04 22:23:51 +02:00
README.md fix link in readme 2022-08-26 23:31:56 +02:00
Rakefile initial 2020-10-30 16:10:59 +01:00
babel.config.js initial 2020-10-30 16:10:59 +01:00
config.ru initial 2020-10-30 16:10:59 +01:00
package.json initial 2020-10-30 16:10:59 +01:00
postcss.config.js initial 2020-10-30 16:10:59 +01:00
yarn.lock initial 2020-10-30 16:10:59 +01:00

README.md

ingang

This is a piece of middleware intended to help manage invites for BigBlueButton and Helios, the two systems we use in tandem for holding meetings where members can vote. Its web interface is hosted at https://vergadering.bij1.org/ingang/rooms/.

requirements

dependencies

usage

# install ruby version specified in Gemfile
rvm use "ruby-2.7.5"
# create a wrapper for this ruby
PUMA=`gem wrappers show pumactl`

cp config/application.yml.bck config/application.yml.bck
# edit the above file to enter proper values
bundle config set --local path 'vendor'
bundle update
bundle install
bundle binstubs --all
rails app:update:bin
rails credentials:edit
# either restore existing data
cp old/config/master.key ./config/master.key
cp old/db/production.sqlite3 ./db/production.sqlite3
# or scaffold database
rails db:migrate # RAILS_ENV=test
# handle static assets
sudo apt-get update && sudo apt-get install yarn
RAILS_ENV=production rails assets:precompile
rails webpacker:install
# run tests
bin/rake test

# create service
sudo bash -c "cat > /etc/systemd/system/ingang.service" << EOF
[Unit]
Description=Ingang

[Service]
Type=simple
RemainAfterExit=yes
Restart=on-failure
TimeoutSec=300
User=$USER
WorkingDirectory=$PWD
PIDFile=$PWD/tmp/pids/server.pid
ExecStart=$PUMA -F $PWD/config/puma.rb start
ExecStop=$PUMA -F $PWD/config/puma.rb stop
ExecReload=$PUMA -F $PWD/config/puma.rb phased-restart

[Install]
WantedBy=multi-user.target
EOF

# start and check service
sudo systemctl daemon-reload
sudo systemctl stop ingang
sudo systemctl disable ingang
sudo systemctl enable ingang
sudo systemctl start ingang
systemctl status ingang
journalctl -u ingang

todo

  • CI
  • un-hardcode
    • app/views/main/stream.html.erb: video/chat urls

documentation checklist

This README would normally document whatever steps are necessary to get the application up and running.

Things you may want to cover:

  • Ruby version

  • System dependencies

  • Configuration

  • Database creation

  • Database initialization

  • How to run the test suite

  • Services (job queues, cache servers, search engines, etc.)

  • Deployment instructions

  • ...