58 lines
1.8 KiB
Bash
58 lines
1.8 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
RAILS_ENV=development
|
|
|
|
if [ -f tmp/pids/server.pid ]; then
|
|
kill $(cat tmp/pids/server.pid)
|
|
fi
|
|
|
|
if [ -n "${V}" ]; then
|
|
cat > config/initializers/versioning.rb << EOF
|
|
# encoding: UTF-8
|
|
# frozen_string_literal: true
|
|
# This file is auto-generated from the current state of VCS.
|
|
# Instead of editing this file, please use bin/gendocs.
|
|
module Barong
|
|
class Application
|
|
GIT_TAG = '${V}'
|
|
GIT_SHA = '$(git rev-parse --short HEAD)'
|
|
BUILD_DATE = '$(date --rfc-3339=seconds)'
|
|
VERSION = GIT_TAG
|
|
end
|
|
end
|
|
EOF
|
|
fi
|
|
|
|
bundle install
|
|
bin/init_config
|
|
bundle exec rake db:drop db:create db:migrate db:seed
|
|
npm i -g swagger-markdown
|
|
npm i -g prettyjson-cli
|
|
bundle exec rails s -d
|
|
while [ ! -f tmp/pids/server.pid ]
|
|
do
|
|
sleep 1
|
|
done
|
|
sleep 5 # Wait additional time until Rails starts listen port.
|
|
|
|
curl http://localhost:3000/api/v2/swagger > tmp/user_api_v2_swagger.json
|
|
curl http://localhost:3000/api/v2/management/swagger > tmp/management_api_v2_swagger.json
|
|
curl http://localhost:3000/api/v2/admin/swagger > tmp/admin_api_v2_swagger.json
|
|
|
|
mkdir -p docs/api/swagger
|
|
|
|
swagger-markdown -i tmp/user_api_v2_swagger.json -o ./docs/api/barong_user_api_v2.md
|
|
swagger-markdown -i tmp/management_api_v2_swagger.json -o ./docs/api/barong_management_api_v2.md
|
|
swagger-markdown -i tmp/admin_api_v2_swagger.json -o ./docs/api/barong_admin_api_v2.md
|
|
|
|
ruby -r json -e "puts JSON.pretty_generate(JSON.parse(File.read('tmp/user_api_v2_swagger.json')))" \
|
|
> docs/api/swagger/user_api.json
|
|
ruby -r json -e "puts JSON.pretty_generate(JSON.parse(File.read('tmp/management_api_v2_swagger.json')))" \
|
|
> docs/api/swagger/management_api.json
|
|
ruby -r json -e "puts JSON.pretty_generate(JSON.parse(File.read('tmp/admin_api_v2_swagger.json')))" \
|
|
> docs/api/swagger/admin_api.json
|
|
|
|
kill $(cat tmp/pids/server.pid)
|