Skip to content

[24.0 backport] libnet: Return proper error when overlay network can't be created#45974

Merged
thaJeztah merged 15 commits intomoby:24.0from
thaJeztah:24.0_backport_create-overlay-on-non-manager
Jul 17, 2023
Merged

[24.0 backport] libnet: Return proper error when overlay network can't be created#45974
thaJeztah merged 15 commits intomoby:24.0from
thaJeztah:24.0_backport_create-overlay-on-non-manager

Conversation

@thaJeztah
Copy link
Copy Markdown
Member

backports:

related:

- What I did

1st commit: libnet: Return proper error when overlay network can't be created

Commit befff0e (#44875) inadvertendly disabled the error returned when trying to create an overlay network on a node which is not part of a Swarm cluster.

Since commit e3708a8 (#44965) the overlay netdriver returns the error: no VNI provided.

This commit reinstates the original error message by checking if the node is a manager before calling libnetwork's controller.NewNetwork().

2nd commit: libnet: Return a 403 when overlay network isn't allowed

With this change, the API will now return a 403 instead of a 500 when trying to create an overlay network on a non-manager node.

- How to verify it

$ docker network create --driver overlay testnet
Error response from daemon: This node is not a swarm manager. Use "docker swarm init" or "docker swarm join" to connect this node to swarm and try again.

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

Image

thaJeztah and others added 15 commits July 15, 2023 00:48
Use string-literal for reduce escaped quotes, which makes for easier grepping.
While at it, also changed http -> https to keep some linters at bay.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 202907b)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 2f61620)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 6331a3a)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 0281541)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Also removed some newlines from t.Fatal() as they shouldn't be needed.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit c3d533f)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 4e69e16)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 0db4a32)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 96a1c44)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit ddec605)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 8400019)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 1da079f)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit fded42c)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit ec11aea)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
The commit befff0e inadvertendly
disabled the error returned when trying to create an overlay network on
a node which is not part of a Swarm cluster.

Since commit e3708a8 the overlay
netdriver returns the error: `no VNI provided`.

This commit reinstate the original error message by checking if the node
is a manager before calling libnetwork's `controller.NewNetwork()`.

Signed-off-by: Albin Kerouanton <albinker@gmail.com>
(cherry picked from commit 21dcbad)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
With this change, the API will now return a 403 instead of a 500 when
trying to create an overlay network on a non-manager node.

Signed-off-by: Albin Kerouanton <albinker@gmail.com>
(cherry picked from commit d29240d)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
@thaJeztah
Copy link
Copy Markdown
Member Author

@akerouanton ptal 🤗

Copy link
Copy Markdown
Member

@akerouanton akerouanton left a comment

Choose a reason for hiding this comment

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

LGTM

Thanks for taking care of the backport 🤗

@thaJeztah
Copy link
Copy Markdown
Member Author

Thx! Let me bring this one in 👍

@thaJeztah thaJeztah merged commit 8443a06 into moby:24.0 Jul 17, 2023
@thaJeztah thaJeztah deleted the 24.0_backport_create-overlay-on-non-manager branch July 17, 2023 07:20
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.

3 participants