An app to handle event registrations. Intended to be lightweight and rest queriable to allow integration with third party systems.
Feature requests, bug reports and questions are to be sent to GitHub's issue system: https://github.com/agile-alliance-brazil/event_registrations/issues
Just clone this repo (including submodules so ensure you run
git clone https://github.com/agilealliancebrazil/event_registrations.git --recursive or if you already cloned, use
git submodule foreach git pull origin master), enter it and run
./dev.sh. This should be enough to install whatever is needed on your machine and start guard to run specs and front end tests.
If you don't want to mess with your own machine, an option to use Docker for development is available.
For populating the db and configuration for the first time:
cp config/config.example config/config.yml cp config/database.docker config/database.yml docker-compose up -d db docker-compose run app bundle exec rake db:create db:schema:load --trace
For running the application:
The application will be available at http://localhost:3000
Images are handled by ImageMagick and you must have it installed in your environment: https://www.imagemagick.org/
Deployment is handled by Capistrano. And can also be tested using the vagrant set up.
To test, run:
vagrant destroy -f deploy && vagrant up deploy && bundle && bundle exec ruby script/first_deploy.rb vagrant 10.11.12.14 staging certs/insecure_private_key
Note that Capistrano uses the code currently available in github so you need to push to test it.
You can set up
config/deploy/vagrant.rb to use a different branch with
set :branch, 'your_branch'.
Deploying to a cloud
If you're deploying to any cloud, after you've created your virtual machine, add
certs/<vms_ip>_paypal_cert.pem. You can, optionally, also add
certs/<vms_ip>_server_key.pem to set up apache to work with SSL. Then run:
bundle && bundle exec ruby script/first_deploy.rb <configured_sudoer_user> <vms_ip> <type> <ssh_key_to_access_vm>
Where your sudoer user is a user in that machine that has sudo right (no password required), vms_ip is the vm IPv4 addres, type is either 'production' or 'staging' and the ssh key is the path in your machine to the ssh key that allows non password protected access to your cloud VM.
From then on, you can use:
bundle && bundle exec ruby deploy/digital_ocean/new_machine.rb
Integration service bus for Agile Alliance membership checking
If you have a bug or a feature request, please create a issue here:
Thanks to everyone involved in building and maintaining this system: