diff --git a/docker-compose.yaml b/docker-compose.yaml index 173b4eb..084cf59 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -26,6 +26,7 @@ services: GIT_PASSWORD: ${GIT_PASSWORD} volumes: - ${PWD}/secrets:/secrets + - ${PWD}/cache/green-directory:/workdir/cache/green-directory networks: - internal_network - external_network diff --git a/k8s-job-manager.py b/k8s-job-manager.py index fad29ad..8437c34 100644 --- a/k8s-job-manager.py +++ b/k8s-job-manager.py @@ -1,3 +1,9 @@ +# Howto: +# +# 1. source ./venv/bin/activate.fish +# 2. python cli.py manager +# 3. python k8s-job-manager.py + import config import os @@ -11,6 +17,8 @@ import kubernetes PENDING_LIMIT = 2 RUNNING_LIMIT = 4 +KUBECONTEXT = 'gs-gollum-5jka7-clientcert' + INTERVAL = 10 # Seconds def main(): @@ -20,7 +28,11 @@ def main(): random.seed() random.shuffle(jobs) - kubernetes.config.load_kube_config(context='gs-gollum-5jka7') + # TODO: change to work inside the cluster like shown in + # https://github.com/kubernetes-client/python/blob/master/examples/in_cluster_config.py#L55 + # + kubernetes.config.load_kube_config(context=KUBECONTEXT) + v1client = kubernetes.client.CoreV1Api() k8sclient = kubernetes.client.ApiClient() diff --git a/manager/__init__.py b/manager/__init__.py index 6ce0501..cf70bfe 100644 --- a/manager/__init__.py +++ b/manager/__init__.py @@ -28,7 +28,7 @@ def clone_data_directory(): into the local file system using git """ if os.path.exists(config.GREEN_DIRECTORY_LOCAL_PATH): - shutil.rmtree(config.GREEN_DIRECTORY_LOCAL_PATH) + return Repo.clone_from(config.GREEN_DIRECTORY_REPO, config.GREEN_DIRECTORY_LOCAL_PATH)