dubeejw commented on a change in pull request #2334: (Review) Added --last
Activation Flag
URL:
https://github.com/apache/incubator-openwhisk/pull/2334#discussion_r125952139
##########
File path: tools/cli/go-whisk-cli/commands/activation.go
##########
@@ -219,6 +243,45 @@ var activationResultCmd = &cobra.Command{
},
}
+// lastFlag(args) retrieves the last activation with flag -l or --last
+// Param: Brings in []strings from args
+// Return: Returns a []string with the latest ID or the original args and any
errors
+func lastFlag(args []string) ([]string, error) {
+ if flags.activation.last {
+ options := &whisk.ActivationListOptions {
+ Limit: 1,
+ Skip: 0,
+ }
+ activations,_, err := client.Activations.List(options)
+ if err != nil { // Checks Activations.List for errors when
retrieving latest activaiton
+ whisk.Debug(whisk.DbgError, "client.Activations.List(%#v) error
during lastFlag: %s\n", options, err)
+ return args, err
+ }
+ if len(activations) == 0 { // Checks to to see if there are
activations available
+ whisk.Debug(whisk.DbgError, "No activations found in activation
list\n")
+ errStr := wski18n.T("Activation list does not contain any
activations.")
+ whiskErr := whisk.MakeWskError(errors.New(errStr),
whisk.EXITCODE_ERR_GENERAL, whisk.DISPLAY_MSG, whisk.DISPLAY_USAGE)
+ return args, whiskErr
+ } else {
+ if len(args) == 0 {
+ whisk.Debug(whisk.DbgInfo, "Appending most recent activation
ID(%s) into args\n", activations[0].ActivationID)
+ args = append(args, activations[0].ActivationID)
+ } else if len(args) == 1 && len(args[0]) != 32 { // Checks to
see if filter field is given and not ID
+ whisk.Debug(whisk.DbgInfo, "Appending most recent activation
ID(%s) into args\n", activations[0].ActivationID)
+ args = append(args, activations[0].ActivationID)
+ whisk.Debug(whisk.DbgInfo, "Allocating appended ID to
correct position in args\n")
+ args[0], args[1] = args[1], args[0] // IDs should be
located at args[0], if a filter field is given it has to be moved to args[0]
+ } else if len(args[0]) == 32 { // Checks conflict between ID
and --last
Review comment:
Maybe better to prepend the retrieved activation ID to the args always. I
think we will only have an issue if a user specified an activation ID with the
`--last` flag. Under that scenario the user would get an invalid field filter
message as the user provided activation ID will be presumed to be a field
filter. However, the usage says not to include an activation ID with the
`--last` flag. @mdeuser, what do you think?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services