Tech Documentation
Tech History - old updates from the OCF tech page, etc.
bikecollectives.org
As of 2023...
Hosted on: RackNerd
Services hosted include:
- bikecollectives.org front page
- Bike Collectives Wiki (MediaWiki)
- lists.bikecollectives.org (MailMan3 email lists, including The ThinkTank)
- RoundCube email for tech administrative mail (e.g. DMARC reports)
- restik backup
- PassBolt password manager for administrative logins
- some other things
All services are running in Docker containers, with nginx-proxy routing requests.
Jonathan Rosenbaum and Darin April Wick have shell accounts; contact them if you need access.
MediaWiki
- Settings for Mediawiki are in /home/bikebike/docker/bikecollectives/LocalSettings.php
- Extensions are in the container at /var/www/html/w/extensions
- I think to make changes happen you have to rebuild and restart the container with
docker compose build
&docker compose up -d
in the /home/bikebike/docker/bikecollectives directory - The yellowish box at the top of the wiki can be edited at MediaWiki:Sitenotice
URL Rewrites
A few notes from adding URL rewrites to the nginx config in April 2023 so that bikecollectives.org/en-es and bikecollectives.org/es-en both redirect to the Language Exchange page for easier posting on social media, etc.
- log in as bikebike (or su to bikebike)
- edit ~/docker/bikecollectives/default.conf
- I used rewrite directives in the relevant server sections, but I think return directives would also work.
docker compose build
&docker compose up -d
bikebike.org
As of 2023...
bikebike.org hosts a Ruby on Rails application that helps with registration for Bike!Bike! conferences. It's old and fragile and we've duct-taped some stuff on to keep it going and make it work for Bike!Bike! Everywhere! virtual conferences, but it is still the best thing we have for the purpose. It has the excellent feature of being trilingual (EN/ES/FR) by design on the frontend, though the backend administrative interface is English-only.
Here are some notes on working with the existing bikebike.org: https://www.bikecollectives.org/wiki/Tech_Meeting_2022.07.16
Bumbleberry & CSS issues
Bumbleberry is a chunk of code (Ruby Module?) that tries to generate CSS suitable for whatever browser the viewer is using. It was a great idea ten years ago, but not so necessary now, and it needs to be manually updated every time a new browser version is released. Ideally we'd put this on a cron job or just switch to static CSS, but for now, when it breaks, it can be fixed by logging into a shell account on bikebike.org and running...
truncate nohup.out -s 0 && nohup sh -c 'cd /home/rails && RAILS_ENV=production bundle exec rake bumbleberry:update && RAILS_ENV=production bundle exec rake assets:precompile && RAILS_ENV=production bundle exec rake assets:clean && kill `cat /home/unicorn/production.pid`; RAILS_ENV=production bundle exec unicorn_rails -E production -D -c /home/rails/config/unicorn.rb && kill `cat /home/unicorn/sidekiq_production.pid`; bundle exec sidekiq -d -C config/sidekiq_production.yml -e production -c 25' &
As of 2023.05.02, the above is now scheduled to run daily at midnight (Pacific Time, I think?). It is a cron job in root's crontab.
email issues
Sometimes bikebike.org fails to send emails. The first thing to check is /home/rails/log/unicorn.log
; if there is a line that says Net::SMTPAuthenticationError (534-5.7.9 Please log in with your web browser and then try again. Learn more at):
then you need to contact Godwin and ask him to log in to the gmail account that bikebike uses for its smtp server. (we're planning to move to our own smtp server soon, which should resolve this.
email accounts
bikebikeeverywhere@gmail.com
- Primary email account for all B!B!E! communications
- Used for many of our online accounts as well (e.g. zoom, discord, domain registrar)
- Sometimes it's a nuisance to log in to, because gmail gets uncomfortable with logins from lots of different geographical locations and thinks they're spam and asks for confirmation. Confirmation codes usually go to Angel
- We use it instead of an @bikecollectives.org or @bikebike.org account because (1) it contains a lot of institutional memory for B!B!E! and (2) sometimes bikecollectives and bikebike break down, and gmail is pretty reliable.
- As of June 2023, forwards all emails to bbe@bikecollectives.org, which can be viewed at chocolate.bikecollectives.org
bbe@bikecollectives.org
- Primary address for automated emails related to tech
- DMARC reports
- anything related to mailman (including the ThinkTank mailing list) administration
- notifications about automated site backups
- All messages sent to bikebikeeverywhere@gmail.com are forwarded here. If you can't log in to the gmail, this provides a sort of backdoor.