Skip to content

Commit

Permalink
Fixed the volcengine destroy cluster
Browse files Browse the repository at this point in the history
  • Loading branch information
zhenrong-wang committed Jul 16, 2024
1 parent 073a203 commit 2de13e8
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 1 deletion.
17 changes: 17 additions & 0 deletions hpcopr/cluster_general_funcs.c
Original file line number Diff line number Diff line change
Expand Up @@ -4560,6 +4560,23 @@ int get_default_nzone(char* cluster_name, char* region, char* default_zone, unsi
return 0;
}

int volce_bucket_clean(char* workdir, char* crypto_keyfile){
bucket_info bucketinfo;
char cmdline[CMDLINE_LENGTH]="";
if(get_bucket_ninfo(workdir,crypto_keyfile,LINE_LENGTH_SHORT,&bucketinfo)!=0){
return -1;
}
snprintf(cmdline,CMDLINE_LENGTH-1,"%s rm -re %s -e tos-%s.volces.com -i %s -k %s %s/ -r -f -v -fr %s",TOSUTIL_EXEC,bucketinfo.region_id,bucketinfo.region_id,bucketinfo.bucket_ak,bucketinfo.bucket_sk,bucketinfo.bucket_address,SYSTEM_CMD_REDIRECT);
if(system(cmdline)!=0){
return 1;
}
snprintf(cmdline,CMDLINE_LENGTH-1,"%s rm -re %s -e tos-%s.volces.com -i %s -k %s %s/ -r -f -v -fr -m %s",TOSUTIL_EXEC,bucketinfo.region_id,bucketinfo.region_id,bucketinfo.bucket_ak,bucketinfo.bucket_sk,bucketinfo.bucket_address,SYSTEM_CMD_REDIRECT);
if(system(cmdline)!=0){
return 1;
}
return 0;
}

/* return 1 - running; return 0 - stopped */
/*
int check_volce_ecs_state(char* node_name, char* stackdir){
Expand Down
1 change: 1 addition & 0 deletions hpcopr/cluster_general_funcs.h
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,7 @@ int node_file_to_running(char* stackdir, char* node_name, char* cloud_flag);
void single_file_to_running(char* filename, char* cloud_flag);
int node_file_to_stop(char* stackdir, char* node_name, char* cloud_flag);
void volce_delete_ecs_state(char* stackdir, char* node_name);
int volce_bucket_clean(char* workdir, char* crypto_keyfile);

int get_bucket_info(char* workdir, char* crypto_keyfile, char* bucket_address, char* region_id, char* bucket_ak, char* bucket_sk);
int get_bucket_ninfo(char* workdir, char* crypto_keyfile, unsigned int linelen_max, bucket_info* bucketinfo); /* Newer function */
Expand Down
11 changes: 10 additions & 1 deletion hpcopr/cluster_operations.c
Original file line number Diff line number Diff line change
Expand Up @@ -1004,14 +1004,15 @@ int cluster_destroy(char* workdir, char* crypto_keyfile, char* force_flag, int b
char vaultdir[DIR_LENGTH]="";
char confdir[DIR_LENGTH]="";
char curr_payment_method[16]="";
char cloud_flag[16]="";
int i;
int compute_node_num=0;
get_state_nvalue(workdir,crypto_keyfile,"payment_method:",curr_payment_method,16);
if(strcmp(curr_payment_method,"month")==0){
printf(FATAL_RED_BOLD "[ FATAL: ] Please switch the payment method to " WARN_YELLO_BOLD "od" FATAL_RED_BOLD " first." RESET_DISPLAY "\n");
return -3;
}
if(get_cluster_nname(cluster_name,CLUSTER_ID_LENGTH_MAX_PLUS,workdir)!=0){
if(get_cluster_nname(cluster_name,CLUSTER_ID_LENGTH_MAX_PLUS,workdir)!=0||get_cloud_flag(workdir,crypto_keyfile,cloud_flag,16)!=0){
printf(FATAL_RED_BOLD "[ FATAL: ] Failed to get a valid working directory." RESET_DISPLAY "\n");
return -7;
}
Expand All @@ -1027,6 +1028,14 @@ int cluster_destroy(char* workdir, char* crypto_keyfile, char* force_flag, int b
}
}
printf(GENERAL_BOLD "[ -INFO- ]" RESET_DISPLAY " Cluster operation started ...\n");
if(strcmp(cloud_flag,"CLOUD_H")==0){
printf(GENERAL_BOLD "[ -INFO- ] " RESET_DISPLAY "Deleting the objects in the TOS bucket ...\r");
fflush(stdout);
if(volce_bucket_clean(workdir,crypto_keyfile)!=0){
return -9;
}
printf(GENERAL_BOLD "[ -INFO- ] " RESET_DISPLAY "The bucket has been completely cleaned. \n");
}
create_and_get_subdir(workdir,"vault",vaultdir,DIR_LENGTH);
create_and_get_subdir(workdir,"stack",stackdir,DIR_LENGTH);
create_and_get_subdir(workdir,"conf",confdir,DIR_LENGTH);
Expand Down

0 comments on commit 2de13e8

Please sign in to comment.