@@ -5,8 +5,10 @@ use serde::Serialize;
55use std:: fs:: OpenOptions ;
66
77use colored:: Colorize ;
8- use std:: time:: Duration ;
98use std:: thread;
9+ use std:: time:: Duration ;
10+
11+ use std:: process:: Command ;
1012
1113pub struct GeneralData {
1214 env : String ,
@@ -72,14 +74,52 @@ impl GeneralData {
7274}
7375
7476pub fn update_cli ( ) {
75- println ! ( "Updating CortexFlow CLI" ) ;
76- println ! ( "Looking for a newer version" ) ;
77+ println ! ( "{} {}" , "=====>" . blue( ) . bold( ) , "Updating CortexFlow CLI" ) ;
78+ println ! (
79+ "{} {}" ,
80+ "=====>" . blue( ) . bold( ) ,
81+ "Looking for a newer version"
82+ ) ;
83+
84+ let output = Command :: new ( "cargo" )
85+ . args ( [ "update" , "cortexflow-cli" ] )
86+ . output ( )
87+ . expect ( "error" ) ;
88+
89+ if !output. status . success ( ) {
90+ eprintln ! (
91+ "Error updating CLI : {}" ,
92+ String :: from_utf8_lossy( & output. stderr)
93+ ) ;
94+ } else {
95+ println ! ( "✅ Updated CLI" ) ;
96+ }
7797}
7898pub fn info ( general_data : GeneralData ) {
79- println ! ( "{} {} {}" , "=====>" . blue( ) . bold( ) , "Version:" , GeneralData :: VERSION ) ;
80- println ! ( "{} {} {}" , "=====>" . blue( ) . bold( ) , "Author:" , GeneralData :: AUTHOR ) ;
81- println ! ( "{} {} {}" , "=====>" . blue( ) . bold( ) , "Description:" , GeneralData :: DESCRIPTION ) ;
82- println ! ( "{} {} {}" , "=====>" . blue( ) . bold( ) , "Environment:" , general_data. get_env( ) ) ;
99+ println ! (
100+ "{} {} {}" ,
101+ "=====>" . blue( ) . bold( ) ,
102+ "Version:" ,
103+ GeneralData :: VERSION
104+ ) ;
105+ println ! (
106+ "{} {} {}" ,
107+ "=====>" . blue( ) . bold( ) ,
108+ "Author:" ,
109+ GeneralData :: AUTHOR
110+ ) ;
111+ println ! (
112+ "{} {} {}" ,
113+ "=====>" . blue( ) . bold( ) ,
114+ "Description:" ,
115+ GeneralData :: DESCRIPTION
116+ ) ;
117+ println ! (
118+ "{} {} {}" ,
119+ "=====>" . blue( ) . bold( ) ,
120+ "Environment:" ,
121+ general_data. get_env( )
122+ ) ;
83123}
84124
85125fn is_supported_env ( env : & str ) -> bool {
0 commit comments