Skip to content

cookpad/dmemo

Repository files navigation

Dmemo GitHub Actions Status

Database description management tool.

Prerequisite

Setup

$ ./bin/setup
$ # Set GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET of your OAuth client credential
$ vi .env
$ bundle exec foreman start

Docker

$ docker build . -t dmemo
$ cp .env.production.sample .env.docker
$ # Set all environment variables.
$ # You can generate secret_key_base by the following command:
$ #   `docker run --rm --env-file .env.docker -t dmemo ./bin/rake secret`
$ vi .env.docker
$ docker run --rm --env-file .env.docker -t dmemo ./bin/docker_db_apply.sh
$ docker compose up

Execute synchronization

./bin/rails r 'SynchronizeDataSources.run'

Configure

Create Admin User

  • Login dmemo by google account
  • Activate user as admin
$ ./bin/rake admin:activate EMAIL=foobar@example.com

Environment Variables

Name Description
GOOGLE_CLIENT_ID (required) Client ID of Google APIs
GOOGLE_CLIENT_SECRET (required) Client secret of Google APIs
GOOGLE_HOSTED_DOMAIN See https://developers.google.com/identity/protocols/OpenIDConnect#hd-param
SECRET_KEY_BASE (required only in production) A secret value generated by ./bin/rake secret
DATABASE_URL (required only in production) URL like postgresql://user@hostname/dbname
DATABASE_PASSWORD (for production) Password info in addition to DATABASE_URL