107 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			107 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| # All required components, to create and fill a database,
 | |
| # instantiate backend and frontend. 
 | |
| 
 | |
| MAKE_ROOT = $(shell pwd)
 | |
| 
 | |
| ### Input data
 | |
| # I received ssj500k in one .xml file,
 | |
| # kres is composed of many .xml files
 | |
| # I generated srl tags for kres in separate .json files
 | |
| # (for each kres.xml file there is a kres.json file with srl tags)
 | |
| SSJ_FILE = "$(MAKE_ROOT)/data/samples/ssj_xml/ssj500k-sl.body.sample.xml"
 | |
| # SSJ_FILE = "$(MAKE_ROOT)/data/ssj_file_link"
 | |
| KRES_FOLDER = "$(MAKE_ROOT)/data/samples/kres_xml"
 | |
| # KRES_FOLDER = "$(MAKE_ROOT)/data/kres_xml_folder_link"
 | |
| KRES_SRL_FOLDER = "$(MAKE_ROOT)/data/samples/kres_srl_json"
 | |
| # KRES_SRL_FOLDER = "$(MAKE_ROOT)/data/kres_json_folder_link"
 | |
| 
 | |
| 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
 | |
| 
 | |
| # credentials from .gitignored file
 | |
| # create it from env.default
 | |
| include env.local
 | |
| 
 | |
| N_CORES = 2
 | |
| 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) \
 | |
| 		--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)
 |