From 9d9b92c14d4e803bd7d4ac78f01f702f34a80e7a Mon Sep 17 00:00:00 2001 From: Mik-TF Date: Thu, 10 Oct 2024 06:06:23 -0700 Subject: [PATCH] set docker cmd for windows or not --- flist.v | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/flist.v b/flist.v index c5669cb..72f8c3e 100644 --- a/flist.v +++ b/flist.v @@ -11,6 +11,11 @@ const binary_location = $if windows { } $else { '/usr/local/bin/flist' } +const docker_cmd = $if windows { + 'docker' +} $else { + 'sudo docker' +} struct FlistItem { name string @@ -181,7 +186,7 @@ fn login() { info_message('Your Flist Hub token is already saved.') } - result := $if windows { os.system('docker login') } $else { os.system('sudo docker login') } + result := os.system('${docker_cmd} login') if result == 0 { info_message('\nYou are already logged in to Docker.') @@ -198,7 +203,7 @@ fn logout() { info_message('Your Flist Hub Token was already not present.') } - exit_code := $if windows { os.system('docker logout') } $else { os.system('sudo docker logout') } + exit_code := os.system('${docker_cmd} logout') if exit_code != 0 { error_message('Failed to log out from Docker Hub.') } @@ -222,7 +227,7 @@ fn get_docker_credential() !string { fn get_docker_credential_auto() !string { // First, try to get the Docker username using the system info command - system_info_result := os.execute("sudo docker system info | grep 'Username' | cut -d ' ' -f 3") + system_info_result := os.execute("${docker_cmd} system info | grep 'Username' | cut -d ' ' -f 3") if system_info_result.exit_code == 0 && system_info_result.output.trim_space() != '' { return system_info_result.output.trim_space() } @@ -282,13 +287,13 @@ fn push(tag string) { } info_message('Starting Docker build') - if os.system('sudo docker buildx build -t ${full_tag} .') != 0 { + if os.system('${docker_cmd} buildx build -t ${full_tag} .') != 0 { error_message('Docker build failed') exit(1) } info_message('Finished local Docker build, now pushing to Docker Hub') - if os.system('sudo docker push ${full_tag}') != 0 { + if os.system('${docker_cmd} push ${full_tag}') != 0 { error_message('Docker push failed') exit(1) }