CT-Ops

CT-Automation Jobs

CT-Ops workspace for CT-Automation repositories, credentials, templates, launches, live events, and repository authoring.

The CT-Automation Jobs workspace is the CT-Ops browser UI for a connected CT-Automation service. Open it from Tooling -> CT-Automation Jobs after favouriting it from the Tools page, or open /automation/jobs directly.

CT-Ops provides the workspace and delegated user context. CT-Automation remains the system of record for automation projects, Git repository state, credentials, inventories, job templates, runs, events, and reports.

Access and prerequisites

Engineers and administrators can use the workspace after an administrator enables the Automation Integration Settings CT-Automation service connection.

The workspace shows a permission or connection warning instead of the job UI when the current user cannot create automation jobs, the CT-Automation connection is disabled, or CT-Automation is unavailable.

Workspace tabs

TabWhat it manages
RepositoriesCT-Automation repository projects, repository test/sync, playbook discovery, repository file editing, uploads, folders, and starter Ansible scaffolds.
CredentialsCT-Automation machine credentials for job execution. Secret values are submitted to CT-Automation and are not returned to browser code after save.
TemplatesReusable CT-Automation job templates built from a repository project, playbook, CT-Ops host group, credential, and runtime options.
RunsLaunch history, live event polling, final per-host summaries, and mirrored CT-Ops run status.

Repositories tab

Use Repositories to register a Git repository as a CT-Automation project. The create dialog stores the repository URL, default ref, playbook folder, and optional SCM credential details in CT-Automation.

Field or controlWhat it does
Repository nameOperator-facing project name.
Repository URLGit URL CT-Automation uses for sync, playbook discovery, and repository authoring.
Default refBranch, tag, or SHA used when the workspace does not override the ref.
Playbook folderRepository-relative folder CT-Automation scans for .yml and .yaml playbooks. Use the folder picker to browse repository folders and populate the path, or type a relative path such as local_apt_repos/playbooks; leading ./ and single leading / are normalised to the repository root.
SCM private key / token fieldsOptional credential material for private repositories. CT-Ops sends it to CT-Automation and does not store the decrypted value.
Known hostsOptional SSH host-key trust data for private SSH repositories.
Test connectionChecks the repository details before save.
Sync / discover playbooksRefreshes CT-Automation project sync state and the playbook list for template creation.
Open file workspaceOpens the repository file browser and editor in a modal workspace.
Delete repositoryHard-deletes the CT-Automation project when CT-Automation allows deletion. Projects referenced by templates are rejected.

Repository authoring

Repository authoring opens from the Open file workspace row action on the Repositories tab. The tab itself stays focused on saved repository projects; file browsing, editing, uploads, folder creation, and starter scaffolding happen inside the modal workspace.

ControlWhat it does
Repository selectorChooses the CT-Automation project to browse and edit. Opening a repository from the row action loads its files automatically.
Git refBranch, tag, or SHA used for the repository tree and commits. For writable work, choose a branch that CT-Automation can save against and push to.
Refresh filesReloads the selected repository tree from CT-Automation after changing the Git ref or after external repository changes.
File treeShows expandable folders first in alphabetical order, then files in alphabetical order. Selecting a text file opens it in the browser editor. The editor is not displayed until a file is selected.
File workspace toolbarGroups repository mutations as icon actions so browsing and editing stay separate from create/upload/scaffold workflows.
Create file toolbar iconOpens a modal for the new relative file path, then saves an empty file into the repository workspace without committing.
Create folder toolbar iconOpens a modal for the folder path, then saves a .gitkeep marker for that folder structure without committing.
Upload file toolbar iconOpens a modal for the local file and target path, then saves the upload into the repository workspace without committing.
Scaffold starter project toolbar iconOpens a modal for the starter project root path, then adds the Ansible starter layout and commits it.
Commit selected files toolbar iconOpens the commit modal when saved workspace changes exist. Engineers choose the files to include, enter a commit message, and push one commit to the selected Git ref.
YAML editorEdits the selected file with line numbers and YAML syntax highlighting.
Save fileSaves the current editor contents into CT-Automation’s repository workspace without committing or pushing.

After a save, the workspace shows a saved-files banner. The commit modal lists each changed path with its status (added, modified, or deleted) and preselects the available changes. Clearing a checkbox leaves that file saved in the workspace for a later commit. CT-Automation requires a commit message before it stages the selected paths, creates the commit, and pushes it to the Git ref.

The starter scaffold creates a usable Ansible layout containing a README, ansible.cfg, playbooks/site.yml, roles/common/tasks/main.yml, inventories/README.md, group_vars/all.yml, and requirements.yml.

CT-Automation validates repository paths before writing. Absolute paths, parent-directory traversal, and .git paths are rejected. CT-Automation also enforces payload limits and uses the project’s stored SCM credential for Git operations so secret material does not reach the browser.

Template creation flow

A normal job setup uses this sequence:

  1. Register or select a repository project.
  2. Sync the repository and confirm the playbook appears.
  3. Create or select a machine credential.
  4. Select a CT-Ops host group inventory target.
  5. Save a reusable job template.
  6. Launch the template or run a check-mode trial.

Template options include tags, skip tags, check mode, diff mode, forks, timeout, Ansible limit, extra variables schema, and launch prompts. CT-Ops stores only the CT-Automation object IDs and any mirrored run summaries needed for CT-Ops task history.

Runs and summaries

After launch, the Runs tab shows current run status, live event updates, host counters, and final per-host summaries returned by CT-Automation. CT-Ops can mirror the safe CT-Ops summary into local task history, but raw event streams, report artifacts, credentials, and repository snapshots remain owned by CT-Automation.