Skip to content
This repository was archived by the owner on Feb 10, 2021. It is now read-only.
This repository was archived by the owner on Feb 10, 2021. It is now read-only.

More flexible kommandir #185

@cevich

Description

@cevich

The ADEPT-design is to utilize a separate VM (the 'kommandir') for actually running the meat of "jobs". The master/entry-point VM (the 'exekutir') is only intended for executive functions (initiating, triggering, or scheduling). This arrangement is utilized heavily by other CI/CD systems, and generally considered best-practice for scaling reasons.

Unfortunately, the design of ADEPT is a bit wonky in this regard: The prescription for the kommandir VM is under the 'exekutir' ansible-directory. This was done because at the time, there was a desire to support different Ansible runtime environments/versions between the two. Also, since literally any job can/will create a common kommandir VM by default, it's source needed to be common.

In hind-sight, a better design, would be to allow jobs to specify a central Ansible directory / playbooks for this task. Utilizing some default if unspecified. In other words, nuke the separate 'exekutir' directory, and just treat the exekutir operations and kommandir operations as kind of meta-jobs. For example, have separate Ansible directories for them, and use the adept.py transition file exekutir.xn to run against them in a similar way to how the current job/job_path variables are handled.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions