Schedules looks for the next workflow to execute and starts them
Go to file
2025-04-25 11:33:48 +02:00
.vscode minimize code + schedulerd naming + docker 2024-08-19 11:42:26 +02:00
conf Divided the execution between local and container and created an interface responsible for preparing and launching the execution 2025-04-25 11:14:54 +02:00
daemons Divided the execution between local and container and created an interface responsible for preparing and launching the execution 2025-04-25 11:14:54 +02:00
docs neo oclib 2024-11-07 13:35:16 +01:00
manifests for future k8s exec 2024-08-12 16:11:13 +02:00
.gitignore retrieve bookings from API and NATS 2024-07-11 18:26:40 +02:00
docker_schedulerd.json modify Docker related files to adapt to new architecture 2025-04-17 18:39:34 +02:00
docker-compose.yml modify Docker related files to adapt to new architecture 2025-04-17 18:37:48 +02:00
Dockerfile Merge branch 'main' of https://cloud.o-forge.io/core/oc-schedulerd into feature/order 2025-04-17 18:38:19 +02:00
go.mod loki traefik + neo oclib 2025-02-21 11:24:56 +01:00
go.sum loki traefik + neo oclib 2025-02-21 11:24:56 +01:00
LICENSE Initial commit 2023-10-18 17:04:06 +02:00
main.go Added some test and logging on the path to execute monitord 2025-04-17 19:58:19 +02:00
Makefile adjustment 2025-03-28 08:48:12 +01:00
oc-schedulerd Use regular conf oclib library instead of custom implem to leverage env variable injection fonctionality; Dockerfile refactor 2025-01-14 18:33:51 +01:00
README.md misc 2025-04-25 11:33:48 +02:00
schedulerd.json misc 2025-04-25 11:33:48 +02:00

oc-scheduler

oc-schedulerd is a daemon performing to actions at the same time :

  • subscribing to the local NATS instance' custom channels for message commanding either the scheduling or the removing of an execution.
  • polling oc-catalog for scheduled executions

Depending on the environment it is running in, oc-schedulerd will either :

  • execute the oc-monitord binary
  • run an oc-monitord container

Parameters

oc-schedulerd uses json files to load its configuration. The template for this configuration file is below

{
    "LOKI_URL" : "http://[IP/URL]:3100",
    "MONGO_URL":"mongodb://[IP/URL]:27017/", 
    "NATS_URL":"nats://[IP/URL]:4222",
    "MONGO_DATABASE":"",
    "MONITORD_PATH": "",
    "KUBERNETES_SERVICE_HOST" : "[IP/URL]",
    "MONITOR_MODE": "",
    "KUBE_CA": "",
    "KUBE_CERT": "",
    "KUBE_DATA": ""
}

monitor_mode : should be either "local","container", ""

TODO

  • Implement the discovery of current mode : local, local in container, as a container