# All required components, to create and fill a database, # instantiate backend and frontend. MAKE_ROOT = $(shell pwd) OUTPUT = "db" # OUTPUT = "file" OUTDIR = "/tmp/three" # if you're running this in docker, make sure to mount the volume DBADDR = "0.0.0.0:27017" # don't use localhost N_CORES = 5 # insert kres files into database in chunks, for fewer connections KRES_CHUNK_SIZE = 30 # Some backend parameters can be found in conf file (see make backend) # credentials from .gitignored file # create it from env.default include env.local export .PHONY: python-env fill-database all: echo "Select an argument" # create database (run from host): # !!! might need to run several times, so the containers come online # Successful if you see the lines: # Successfully added user: { "user" : "testuser", "roles" : [ "readWrite" ] } # bye database-service: cd dockerfiles/database; $(MAKE) build_run database-users: cd dockerfiles/database; $(MAKE) create_users # also useful, if we want to restart the db database-clean: cd dockerfiles/database; $(MAKE) clean_stack # create python-env container python-env: cd dockerfiles/python-env; $(MAKE) # inside the container, install our packages python-env-install: pip3 install -e src/pkg/cjvt-corpusparser/. pip3 install -e src/pkg/valency/. # from inside python-env container: data/samples: cd data; tar xzvf samples.tar.gz # from inside python-env container: # you can set OUTPUT = "file" and a valid OUTDIR to test writing to json files instead of DB fill-database-ssj: data/samples python3 src/pkg/cjvt-corpusparser/corpusparser/main.py --kres-folder $(KRES_FOLDER) \ --corpus="ssj" \ --ssj-file $(SSJ_FILE) --kres-srl-folder $(KRES_SRL_FOLDER) \ --output $(OUTPUT) --outdir $(OUTDIR) --dbaddr $(DBADDR) \ --dbuser $(DB_USR_USER) --dbpass $(DB_USR_PASS) \ --cores $(N_CORES) fill-database-kres: data/samples python3 src/pkg/cjvt-corpusparser/corpusparser/main.py --kres-folder $(KRES_FOLDER) \ --corpus="kres" \ --ssj-file $(SSJ_FILE) --kres-srl-folder $(KRES_SRL_FOLDER) \ --output $(OUTPUT) --outdir $(OUTDIR) --dbaddr $(DBADDR) \ --dbuser $(DB_USR_USER) --dbpass $(DB_USR_PASS) \ --chunk-size $(KRES_CHUNK_SIZE) \ --cores $(N_CORES) ## Frontend ## Run from host ## See src/frontend_vue/README.md for port settings etc. frontend-dev: cd src/frontend_vue/; $(MAKE) dev frontend-prod: cd src/frontend_vue/; $(MAKE) prod ## Backend # runs once and exits before the app starts backend-prepare-db: cd ./src/backend_flask; python3 app.py \ --config-file ./conf_files/dev_conf.yaml \ --dbuser $(DB_USR_USER) --dbpass $(DB_USR_PASS) --dbaddr $(DBADDR) \ --prepare-db backend-dev: cd ./src/backend_flask; python3 app.py \ --config-file ./conf_files/dev_conf.yaml \ --dbuser $(DB_USR_USER) --dbpass $(DB_USR_PASS) --dbaddr $(DBADDR) backend-prod: cd ./src/backend_flask; python3 app.py \ --config-file ./conf_files/prod_conf.yaml \ --dbuser $(DB_USR_USER) --dbpass $(DB_USR_PASS) --dbaddr $(DBADDR)