Page MenuHomePhabricator

[components-api] Add minimal cli with build-only features
Open, HighPublic

Description

Start with a small subclient (ex. toolforge-component) until we can merge all of them.

> toolforge component deploy <path-to-yaml>
> toolforge component status

Possible output:

$ toolforge component deploy mytool.yaml
Starting deploy for toolhunt v1.0.0...
Building images:
   [✅] toolhunt-ui
   [✅] toolhunt-api

All components deployed



$ toolforge component status  # very speculative
Current components:
-------------------------------------------
name            status     build-id      
-------------------------------------------
toolhunt-ui     RUNNING    build-id-12345
toolhunt-api    RUNNING    build-id-12344
toolhunt-flower ERROR      build-id-12344


Last triggered builds:  # similar to `toolforge build list` with deployment info
-----------------------------------------------------------------------------------------
   build time              | status  | build id       | component    | trigger              
-----------------------------------------------------------------------------------------
   2024-04-04 12:11:00 UTC | RUNNING | build-id-12345 | toolhunt-ui  | triggered manually
   2024-04-04 12:00:00 UTC | OK      | build-id-12344 | toolhunt-api | triggered manually

Related Objects

StatusSubtypeAssignedTask
ResolvedLucasWerkmeister
Resolvedmatmarex
ResolvedLegoktm
ResolvedLegoktm
Opendcaro
Opendcaro
In Progressdcaro
In Progressdcaro
OpenNone
ResolvedSlst2020
Resolveddcaro
ResolvedSlst2020
ResolvedSlst2020
Resolveddcaro
ResolvedSlst2020
OpenNone
Resolvedaborrero
Resolveddcaro
Resolveddcaro
Resolveddcaro
Resolveddcaro

Event Timeline

dcaro renamed this task from [components-api] Add minimal cli to [components-api] Add minimal cli with build-only features.Apr 10 2024, 11:00 AM
dcaro updated the task description. (Show Details)
dcaro triaged this task as High priority.Apr 10 2024, 12:58 PM
dcaro removed dcaro as the assignee of this task.May 15 2024, 1:38 PM

We pivoted to implementing end-to-end deployment of a continuous job before adding build-related features. The minimal cli already exists, but build features haven't been implemented on the API side yet.