The key command is the reconcile one, it runs a single reconciliation loop, in other words, it does check current cluster status and if there is any Job (or another kind) which ended since last run it does trigger the next node in the directed acyclic graph (DAG) defined by the annotations/labels used to track the state.

reconcile

Description

Check cluster status to run next tasks. Tip: it can be configure to run with a subset of DAG, doesn't have to have all dags of all the system. Important: the reconcilier only handles the Job in the same namespace that the one it runs within for now.

Synopsis

java ... io.yupiik.fusion.framework.api.main.Launcher \
    reconcile \
    --kubernetes-client-certificates ...\
    --kubernetes-client-kubeconfig ...\
    --kubernetes-client-private-key ...\
    --kubernetes-client-private-key-certificate ...\
    --kubernetes-client-server ...\
    --kubernetes-client-skip-tls ...\
    --kubernetes-client-threads ...\
    --kubernetes-client-timeout ...\
    --kubernetes-client-token ...\
    --kubernetes-logging-enabled ...\
    --kubernetes-logging-log-payload ...\
    --kubernetes-namespace ...\
    --reconcilier-id ...\
    --state-tracking-prefix ...\
    --state-tracking-type ...

Parameters

--kubernetes-client-certificates
Server certificate (TLS).
--kubernetes-client-kubeconfig
Kubeconfig path if desired - default context being picked.
--kubernetes-client-private-key
Private key if using mTLS.
--kubernetes-client-private-key-certificate
User certificate if using mTLS.
--kubernetes-client-server
Kubernetes API base URL.
--kubernetes-client-skip-tls
Should TLS checks be disabled.
--kubernetes-client-threads

How many threads to use for the Kubernetes HttpClient async operations. Negative values means virtual threads and 0 means cached threads (unbounded).

--kubernetes-client-timeout
Connection and request timeout in seconds.
--kubernetes-client-token
Path of service account token to use if used for authentication.
--kubernetes-logging-enabled
Exchanges are logged.
--kubernetes-logging-log-payload

Payloads are logged if enabled is true.

--kubernetes-namespace
Namespace the reconcilier runs with, it can be an absolute value or a file path.
--reconcilier-id
Identifier of this reconcilier, enables to handle a subset of the DAG. If null all DAG are present in the container handled.
--state-tracking-prefix

When type=LABELS_AND_ANNOTATIONS, the prefix used to create custom label(s)/annotation(s).

--state-tracking-type
How dag state is tracked.