datopian / ckan-cloud-operator

CKAN Cloud operator manages, provisions and configures Ckan Cloud instances and related infrastructure.
MIT License
19 stars 14 forks source link

should support external plugins #114

Open OriHoch opened 4 years ago

OriHoch commented 4 years ago

Similar to the changes in #113 - but to allow multiple plugins, installed via pip

e.g.:

build a ckan-cloud-operator image with a list of plugins, each line is pip installed:

export CCO_PLUGINS="
cco-provider-jenkins
cco-provider-nfs
cco-provider-postgres
https://github.com/OriHoch/cco-provider-kamatera/archive/v0.0.4.tar.gz
"
docker build -t my-special-ckan-cloud-operator --build-arg CCO_PLUGINS --build-arg K8_PROVIDER=custom-kamatera .
OriHoch commented 4 years ago

For local development - mount the plugin directory you are working on into a ckan-cloud-operator container:

docker run -it -v $PWD/.cco:/root/ -v ../cco-provider-jenkins:/usr/local/src/cco-provider-jenkins my-special-ckan-cloud-operator

Install editable from the mounted volume:

pip install -e /usr/local/src/cco-provider-jenkins
OriHoch commented 4 years ago

on pip install, the plugin should install any required OS dependencies / tools

pwalsh commented 4 years ago

nice idea.