Images are uploaded, and then processed asynchrounosly
cp _env .env
cp _development_env .development_env
cp _image_processor_secrets .development_secrets
cd image_processor
scripts/development_run.sh api bash -c "rake db:drop db:create db:migrate db:setup"
docker container prune
or via shell session
cd image_processor
scripts/rails_shell.sh api
rake db:drop db:create db:migrate db:setup
cd image_processor
scripts/development_build.sh
cd image_processor
scripts/development_up.sh ui
http://localhost:8121/ui
cd image_processor
scripts/base_build.sh
scripts/base_tag.sh x.y
scripts/base_push.sh x.y
NOTE update .env with "BASE_TAG=x.y"
cd image_processor
scripts/production_build.sh
scripts/production_tag.sh x.y
scripts/production_push.sh x.y
NOTE update .env with "BUILD_TAG=x.y"
cd image_processor
scripts/production_run.sh api bash -c "cd /home/app/webapp && rake db:drop db:create db:migrate db:setup && rm log/production.log"
docker container prune
For a moment since auth is not implemented
# start API
scripts/production_up.sh api
# fetch example user
curl "http://localhost:8122/api/tests/users"
curl "https://image.ikari.fi/api/tests/users"
# ID from previous
curl "http://localhost:8122/api/tests/token?id=d5383073-255a-40e3-916f-0ad321b90f66"
curl "https://image.ikari.fi/api/tests/token?id=d5383073-255a-40e3-916f-0ad321b90f66"
# save token
cat >.production_secrets/fake_token
eyJhbGciOiJIUzI1NiJ9.eyJ1c2VyIjoiZDRkYmEwODYtOWYyNy00NWU5LWFlYWItMWNjODJiZjQzZTE1IiwiZXhwIjoxNjUwMzk5MTE5fQ.xf4CRtThz2dTpjdU4_JwfiumdoWybGJQhknPppggyYc
cd image_processor
scripts/production_up.sh -d
- https://guides.rubyonrails.org/api_app.html
- https://www.wyeworks.com/blog/2016/01/12/improvements-to-error-responses-in-rails-5-api-mode/
- https://github.com/taf2/curb
- https://smartlogic.io/blog/permitting-nested-arrays-using-strong-params-in-rails/
- https://guides.rubyonrails.org/active_model_basics.html
- https://stackoverflow.com/questions/13537920/ruby-split-by-whitespace
- https://medium.com/@jenn.leigh.hansen/google-oauth2-for-rails-ba1bcfd1b863
- https://github.com/omniauth/omniauth
- rails/rails#26180
- rails/rails#39366
- rails/rails#22965
- cookpad/omniauth-rails_csrf_protection#8
- https://medium.com/binar-academy/rails-api-jwt-authentication-a04503ea3248
- https://github.com/jwt/ruby-jwt
- https://www.sciencedirect.com/topics/computer-science/exchangeable-image-file-format
- https://github.com/tonytonyjan/exif
- https://stackoverflow.com/questions/8635578/how-to-check-whether-the-character-is-utf-8
- https://stackoverflow.com/questions/16530038/how-to-remove-non-printable-invisible-characters-in-ruby