Tool for managing access to BigBlueButton meetings https://vergadering.bij1.org/ingang/rooms/
Go to file
Kiara Grouwstra 29d6fd31bf enable CI 2022-01-01 22:36:27 +01:00
app Revert "prepend helios user type 'password' in csv" 2021-12-29 11:30:22 +00:00
config aanwezig.csv 2021-12-07 23:50:04 +01:00
db readd migration the official command-line way 2021-12-19 21:53:14 +00:00
lib initial 2020-10-30 16:10:59 +01:00
log flesh out gitignore 2021-12-05 22:15:56 +01:00
public move static csv 2021-12-07 22:52:25 +01:00
storage initial 2020-10-30 16:10:59 +01:00
test ditch welcome controller 2021-12-07 23:47:33 +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 enable CI 2022-01-01 22:36:27 +01:00
.ruby-version initial 2021-12-05 21:52:18 +01:00
.tool-versions patch mimemagic 2021-12-05 22:18:33 +01:00
Gemfile handle env vars 2021-12-05 22:19:39 +01:00
Gemfile.lock update gems 2021-12-06 22:50:24 +01:00
README.md add CD 2022-01-01 22:22:57 +01: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])(https://heliosvoting.org/), 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

  • ...