diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..a69f30b397ee35954475f402bbdbdf3534a70def --- /dev/null +++ b/Dockerfile @@ -0,0 +1,7 @@ +FROM continuumio/miniconda3 +RUN apt-get install make +WORKDIR /code +COPY environment.yml environment.yml +RUN conda env update +COPY . . +RUN conda run -n data make python-setup-develop diff --git a/Makefile b/Makefile index edd72a6e5f145fb12314b5b0f941c2d55d79ecea..9eb4e4428d66310bdd2a95bf370b58b4782d8694 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,5 @@ +SHELL := /bin/bash + all: dev metadata build .PHONY: check-conda @@ -6,7 +8,7 @@ check-conda: (echo "Conda does not appear to be installed; please install it and try again"; exit 1) @[ "${CONDA_PREFIX}" != "" ] || \ (echo "Conda does not appear to be active; please activate 'data' and try again"; exit 1) - @[ "${CONDA_DEFAULT_ENV}" == "data" ] || \ + @[ "${CONDA_DEFAULT_ENV}" = "data" ] || \ (echo "Wrong conda environment '${CONDA_DEFAULT_ENV}' appears to be active; please deactivate, activate 'data' and try again"; exit 1) .PHONY: metadata @@ -26,7 +28,10 @@ ${CONDA_PREFIX}: environment.yml touch $@ .PHONY: dev -dev: check-conda ${CONDA_PREFIX} alembic-update +dev: check-conda ${CONDA_PREFIX} alembic-update python-setup-develop + +.PHONY: python-setup-develop +python-setup-develop: check-conda ${CONDA_PREFIX} for dir in shared/{schema,workspaces,channels} services/{workflow,capability} apps/cli/{utilities/wf_monitor,executables/{null,vulture}}; do \ pushd $$dir; \ python setup.py develop; \ diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/environment.yml b/environment.yml index 558e24e2ef0fed43c337b1caa7cd116eed052354..db6808252d40e5de0f17b371bcda842d0fcfd5f2 100644 --- a/environment.yml +++ b/environment.yml @@ -1,6 +1,7 @@ name: data channels: - https://builder.aoc.nrao.edu/conda + - conda-forge - defaults dependencies: - alembic=1.4 diff --git a/services/workflow/Dockerfile b/services/workflow/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..a8e180d6626d791b48de9f6031b15be9ed48973d --- /dev/null +++ b/services/workflow/Dockerfile @@ -0,0 +1,6 @@ +FROM nrao:workspaces-base +WORKDIR /code +COPY . . +RUN conda run -n data python setup.py develop +EXPOSE 3456 +CMD ["conda", "run", "-n", "data", "pserve", "development.ini"]