Class: Captive::Commands::AppsRebuild

Inherits:
Object
  • Object
show all
Defined in:
lib/captive/commands/apps_rebuild.rb

Instance Method Summary collapse

Constructor Details

#initialize(gh:, repo_root: nil) ⇒ AppsRebuild

Dernière commande du CLI développeur qui lit le repo GitOps, contre l'ADR 0016. Elle déduit le repo GitHub de l'image, or les images valent ghcr.io/captive-studio/captive-platform/ : la déduction rend trois segments, qui ne désignent aucun repo. Rien dans le service ni sur le cluster n'enregistre le repo d'origine, donc la commande n'est pas portable en l'état — voir la note de l'étape 9. Elle exige donc un clone de captive-platform (PlatformRoot), jusqu'à passer par l'API du dashboard.



16
17
18
19
# File 'lib/captive/commands/apps_rebuild.rb', line 16

def initialize(gh:, repo_root: nil)
  @gh        = gh
  @repo_root = repo_root
end

Instance Method Details

#run(app) ⇒ Object



21
22
23
24
25
26
# File 'lib/captive/commands/apps_rebuild.rb', line 21

def run(app)
  repo    = extract_repo(app)
  version = current_version(app)
  fields  = version ? { version: version } : {}
  @gh.trigger_workflow(repo, ref: "main", fields: fields)
end