Skip to content

Commit a8efa07

Browse files
committed
added outputfile feature to more functions
1 parent a09351a commit a8efa07

File tree

3 files changed

+19
-15
lines changed

3 files changed

+19
-15
lines changed

peirates.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ var UseAuthCanI bool = true
2727
// Main starts Peirates[]
2828
func Main() {
2929
// Peirates version string
30-
var version = "1.1.21"
30+
var version = "1.1.22a"
3131

3232
var err error
3333

@@ -356,11 +356,11 @@ func Main() {
356356

357357
// [1] List, maintain, or switch service account contexts [sa-menu] (try: list-sa *, switch-sa, get-sa)
358358
case "switchsa", "saswitch", "switch-sa", "sa-switch":
359-
switchServiceAccounts(serviceAccounts, &connectionString)
359+
switchServiceAccounts(serviceAccounts, &connectionString, logToFile, outputFileName)
360360
case "listsa", "list-sa", "salist", "sa-list", "get-sa":
361-
listServiceAccounts(serviceAccounts, connectionString)
361+
listServiceAccounts(serviceAccounts, connectionString, logToFile, outputFileName)
362362
case "1", "sa-menu", "service-account-menu", "sa", "service-account":
363-
saMenu(&serviceAccounts, &connectionString, interactive)
363+
saMenu(&serviceAccounts, &connectionString, interactive, logToFile, outputFileName)
364364

365365
// [2] List and/or change namespaces [ns-menu] (try: list-ns, switch-ns, get-ns)
366366
case "list-ns", "listns", "nslist", "ns-list", "get-ns", "getns":

samenu.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ func setUpCompletionSaMenu() *readline.PrefixCompleter {
3030
return completer
3131
}
3232

33-
func saMenu(serviceAccounts *[]ServiceAccount, connectionString *ServerInfo, interactive bool) {
33+
func saMenu(serviceAccounts *[]ServiceAccount, connectionString *ServerInfo, interactive bool, logToFile bool, outputFileName string) {
3434

3535
// Set up main menu tab completion
3636
var completer *readline.PrefixCompleter = setUpCompletionSaMenu()
@@ -84,9 +84,9 @@ func saMenu(serviceAccounts *[]ServiceAccount, connectionString *ServerInfo, int
8484

8585
switch strings.ToLower(input) {
8686
case "1", "list":
87-
listServiceAccounts(*serviceAccounts, *connectionString)
87+
listServiceAccounts(*serviceAccounts, *connectionString, logToFile, outputFileName)
8888
case "2", "switch":
89-
switchServiceAccounts(*serviceAccounts, connectionString)
89+
switchServiceAccounts(*serviceAccounts, connectionString, logToFile, outputFileName)
9090
case "3", "add":
9191
serviceAccount, err := acceptServiceAccountFromUser()
9292
if err != nil {
@@ -198,7 +198,7 @@ func saMenu(serviceAccounts *[]ServiceAccount, connectionString *ServerInfo, int
198198
}
199199
}
200200
case "7", "display":
201-
displayServiceAccountTokenInteractive(*serviceAccounts, connectionString)
201+
displayServiceAccountTokenInteractive(*serviceAccounts, connectionString, logToFile, outputFileName)
202202

203203
}
204204
}

service_account_utils.go

+11-7
Original file line numberDiff line numberDiff line change
@@ -153,20 +153,23 @@ func assignAuthenticationCertificateAndKeyToConnection(keypair ClientCertificate
153153

154154
}
155155

156-
func listServiceAccounts(serviceAccounts []ServiceAccount, connectionString ServerInfo) {
156+
func listServiceAccounts(serviceAccounts []ServiceAccount, connectionString ServerInfo, logToFile bool, outputFileName string) {
157157
println("\nAvailable Service Accounts:")
158+
// Build a string of the service accounts, with the current one marked.
159+
var output string
158160
for i, account := range serviceAccounts {
159161
if account.Name == connectionString.TokenName {
160-
fmt.Printf("> [%d] %s\n", i, account.Name)
162+
output += fmt.Sprintf("> [%d] %s\n", i, account.Name)
161163
} else {
162-
fmt.Printf(" [%d] %s\n", i, account.Name)
164+
output += fmt.Sprintf(" [%d] %s\n", i, account.Name)
163165
}
164166
}
167+
outputToUser(output, logToFile, outputFileName)
165168
}
166169

167-
func switchServiceAccounts(serviceAccounts []ServiceAccount, connectionString *ServerInfo) {
170+
func switchServiceAccounts(serviceAccounts []ServiceAccount, connectionString *ServerInfo, logToFile bool, outputFileName string) {
168171
var err error
169-
listServiceAccounts(serviceAccounts, *connectionString)
172+
listServiceAccounts(serviceAccounts, *connectionString, logToFile, outputFileName)
170173
println("\nEnter service account number or exit to abort: ")
171174
var tokNum int
172175
var input string
@@ -187,9 +190,10 @@ func switchServiceAccounts(serviceAccounts []ServiceAccount, connectionString *S
187190
return
188191
}
189192

190-
func displayServiceAccountTokenInteractive(serviceAccounts []ServiceAccount, connectionString *ServerInfo) {
193+
func displayServiceAccountTokenInteractive(serviceAccounts []ServiceAccount, connectionString *ServerInfo, logToFile bool, outputFileName string) {
191194
var err error
192-
listServiceAccounts(serviceAccounts, *connectionString)
195+
listServiceAccounts(serviceAccounts, *connectionString, false, outputFileName)
196+
193197
println("\nEnter service account number or exit to abort: ")
194198
var tokNum int
195199
var input string

0 commit comments

Comments
 (0)