diff --git a/flist.v b/flist.v index 4f8001b..d544d75 100644 --- a/flist.v +++ b/flist.v @@ -88,17 +88,6 @@ fn uninstall() { fn login() { mut token_exists := os.exists(token_file) - mut docker_logged_in := false - - docker_user_result := os.execute('docker-credential-$(jq -r .credsStore ~/.docker/config.json) list | jq -r \'. | to_entries[] | select(.key | contains("docker.io")) | last(.value)\' | head -n 1') - if docker_user_result.exit_code == 0 && docker_user_result.output.trim_space() != '' { - docker_logged_in = true - } - - if token_exists && docker_logged_in { - info_message('You are already logged in to Docker Hub and your Flist Hub token is present.') - return - } if !token_exists { tfhub_token := os.input('Please enter your tfhub token: ') @@ -108,31 +97,23 @@ fn login() { info_message('Your Flist Hub token is already saved.') } - if !docker_logged_in { - info_message('Logging in to Docker Hub...') - exit_code := os.system('sudo docker login') - if exit_code == 0 { - success_message('Successfully logged in to Docker Hub.') - } else { - error_message('Failed to log in to Docker Hub.') - return - } - } else { - info_message('Already logged in to Docker Hub.') + result := os.system('sudo docker login') + + if result == 0 { + info_message('\nYou are already logged in to Docker.') } success_message('Login process completed.') } fn logout() { - if !os.exists(token_file) { - error_message('You are not logged in.') - return + if os.exists(token_file) { + os.rm(token_file) or {panic(err)} + success_message('Your Flist Hub Token has been removed') + } else { + info_message('Your Flist Hub Token was already not present.') } - os.rm(token_file) or { panic(err) } - - info_message('Logging out from Docker Hub...') exit_code := os.system('sudo docker logout') if exit_code != 0 { error_message('Failed to log out from Docker Hub.') @@ -144,7 +125,7 @@ fn logout() { fn push(tag string) { docker_user_result := os.execute('docker-credential-$(jq -r .credsStore ~/.docker/config.json) list | jq -r \'. | to_entries[] | select(.key | contains("docker.io")) | last(.value)\' | head -n 1') if docker_user_result.exit_code != 0 || docker_user_result.output.trim_space() == '' { - error_message('Failed to get Docker username. Please ensure you are logged in to Docker.') + error_message('Failed to get Docker username.') exit(1) }