close
Skip to content

Fix always listing nodes in docker stack ps command - #1093

Merged
thaJeztah merged 2 commits into
docker:masterfrom
silvin-lubecki:fix-listing-nodes
May 30, 2018
Merged

Fix always listing nodes in docker stack ps command#1093
thaJeztah merged 2 commits into
docker:masterfrom
silvin-lubecki:fix-listing-nodes

Conversation

@silvin-lubecki

Copy link
Copy Markdown
Contributor

- What I did

  • Fixed the docker stack ps command on Kubernetes which always failed with a user without node listing privilege.
  • Fixed double error message output on docker stack rm command.

- How to verify it

  1. Create a user on Kubernetes with only read access on a namespace
  2. Deploy a stack on this namespace
  3. With this user's credentials, execute a docker stack ps on this namespace -> it should not fail and list all the containers

- Description for the changelog

  • Fix always listing nodes during docker stack ps command on Kubernetes.
  • Fix outputting twice the docker stack rm error message

- A picture of a cute animal (not mandatory but encouraged)

image

…. A user without node listing rights could not use this command as it always fails.

Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>

@thaJeztah thaJeztah left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

small nit, otherwise LGTM

Comment thread cli/command/stack/kubernetes/remove.go Outdated
if err != nil {
fmt.Fprintf(dockerCli.Out(), "Failed to remove stack %s: %s\n", stack, err)
return err
return fmt.Errorf("Failed to remove stack %s: %s", stack, err)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit; probably better to use;

return errors.Wrapf(err, "Failed to remove stack %s", stack)

Can also put the err inside the if;

if err := stacks.Delete(stack); err != nil {
	return errors.Wrapf(err, "Failed to remove stack %s", stack)
}

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PTAL

@vdemeester vdemeester left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🐯

Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>

@thaJeztah thaJeztah left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@thaJeztah
thaJeztah merged commit a8ee42a into docker:master May 30, 2018
@GordonTheTurtle GordonTheTurtle added this to the 18.06.0 milestone May 30, 2018
@silvin-lubecki
silvin-lubecki deleted the fix-listing-nodes branch May 30, 2018 14:05
fmt.Fprintf(dockerCli.Out(), "Failed to remove stack %s: %s\n", stack, err)
return err
if err := stacks.Delete(stack); err != nil {
return errors.Wrapf(err, "Failed to remove stack %s", stack)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: shouldn't error messages be all lowercase?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was looking at that, but this is printed on the CLI, and other messages (non-error) were also capitalised ("Removing stack ..." and so on)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fair enough even if the other messages are not errors but printed directly to dockerCli.Out().

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should have a look through all messages to check for consistency though 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants