podman/libpod
Paul Holzinger a726043d0b
CNI networks: reload networks if needed
The current implementation of the CNI network interface only loads the
networks on the first call and saves them in a map. This is done to safe
performance and not having to reload all configs every time which will be
costly for many networks.

The problem with this approach is that if a network is created by
another process it will not be picked up by the already running podman
process. This is not a problem for the short lived podman commands but
it is problematic for the podman service.

To make sure we always have the actual networks store the mtime of the
config directory. If it changed since the last read we have to read
again.

Fixes #11828

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2021-10-04 16:38:52 +02:00
..
common Set blob cache directory based on GraphDriver 2019-03-29 08:27:33 -04:00
define Pod Volumes From Support 2021-10-01 14:09:11 -04:00
driver bump go module to v3 2021-02-22 09:03:51 +01:00
events standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
layers Initial checkin from CRI-O repo 2017-11-01 11:24:59 -04:00
linkmode Add podman static build 2020-05-11 13:11:07 +02:00
lock standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
logs standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
network CNI networks: reload networks if needed 2021-10-04 16:38:52 +02:00
plugin bump go module to v3 2021-02-22 09:03:51 +01:00
shutdown standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
boltdb_state.go Ensure pod ID bucket is properly updated on rename 2021-09-28 14:12:18 -04:00
boltdb_state_internal.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
boltdb_state_linux.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
common_test.go Drop OCICNI dependency 2021-09-15 20:00:28 +02:00
container.go libpod: add execSessionNoCopy 2021-09-29 13:44:55 +02:00
container_api.go logging: new mode -l passthrough 2021-09-27 12:07:01 +02:00
container_commit.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
container_config.go Pod Device Support 2021-09-20 23:22:43 -04:00
container_copy_linux.go libpod: do not call (*container).Config() 2021-09-28 17:18:02 +02:00
container_exec.go libpod: add execSessionNoCopy 2021-09-29 13:44:55 +02:00
container_graph.go implement init containers in podman 2021-08-04 14:14:36 -05:00
container_graph_test.go bump go module to v3 2021-02-22 09:03:51 +01:00
container_inspect.go Merge pull request #11686 from cdoern/podDeviceOptions 2021-10-01 10:53:14 -04:00
container_internal.go libpod: do not call (*container).Spec() 2021-09-29 13:44:39 +02:00
container_internal_linux.go always add short container id as net alias 2021-09-28 13:40:22 +02:00
container_internal_linux_test.go feat: add localhost into hosts if the networking mode is not host 2021-09-04 18:24:41 +04:30
container_internal_test.go Refactor container config 2020-07-23 10:18:14 -04:00
container_linux.go Do not fetch pod and ctr State on retrieval in Bolt 2018-07-31 14:19:50 +00:00
container_log.go logging: new mode -l passthrough 2021-09-27 12:07:01 +02:00
container_log_linux.go libpod/Container.readFromJournal(): don't skip the first entry 2021-08-23 17:59:49 -04:00
container_log_unsupported.go Switch eventlogger to journald by default 2021-08-23 17:59:42 -04:00
container_path_resolution.go libpod: do not call (*container).Config() 2021-09-28 17:18:02 +02:00
container_stat_linux.go podman cp: evaluate symlink correctly when copying from container 2021-03-09 10:45:15 +01:00
container_top_linux.go Bump github.com/containers/psgo from 1.5.2 to 1.6.0 2021-09-10 15:23:43 +02:00
container_validate.go implement init containers in podman 2021-08-04 14:14:36 -05:00
diff.go Implement SD-NOTIFY proxy in conmon 2021-08-20 11:12:05 +02:00
events.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
healthcheck.go sync container state before reading the healthcheck 2021-09-22 17:40:16 +02:00
healthcheck_linux.go bump go module to v3 2021-02-22 09:03:51 +01:00
info.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
kube.go Support selinux options with bind mounts play/gen 2021-09-30 10:49:14 -05:00
mounts_linux.go set root propagation based on volume properties 2018-11-26 13:55:02 +01:00
networking_linux.go move network alias validation to container create 2021-09-28 13:40:27 +02:00
networking_slirp4netns.go libpod: do not call (*container).Config() 2021-09-28 17:18:02 +02:00
oci.go Fix resize race with podman exec -it 2021-06-16 16:43:30 +02:00
oci_attach_linux.go logging: new mode -l passthrough 2021-09-27 12:07:01 +02:00
oci_conmon.go podman: add new cgroup mode split 2020-06-25 17:16:12 +02:00
oci_conmon_exec_linux.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
oci_conmon_linux.go Merge pull request #11390 from giuseppe/logging-passthrough 2021-09-29 15:33:06 -04:00
oci_missing.go Fix resize race with podman exec -it 2021-06-16 16:43:30 +02:00
oci_util.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
options.go logging: new mode -l passthrough 2021-09-27 12:07:01 +02:00
pod.go Pod Volumes From Support 2021-10-01 14:09:11 -04:00
pod_api.go Pod Volumes From Support 2021-10-01 14:09:11 -04:00
pod_internal.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
pod_status.go bump go module to v3 2021-02-22 09:03:51 +01:00
pod_top_linux.go bump go module to v3 2021-02-22 09:03:51 +01:00
reset.go [NO TESTS NEEDED] Fix typo in storage.conf file exists message 2021-09-30 12:30:07 -04:00
runtime.go CNI networks: reload networks if needed 2021-10-04 16:38:52 +02:00
runtime_cstorage.go Storage can remove ErrNotAContainer as well 2021-09-29 10:12:49 -04:00
runtime_ctr.go Merge pull request #11390 from giuseppe/logging-passthrough 2021-09-29 15:33:06 -04:00
runtime_img.go image prune: support removing external containers 2021-09-28 10:24:16 +02:00
runtime_migrate.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
runtime_pod.go bump go module to v3 2021-02-22 09:03:51 +01:00
runtime_pod_linux.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
runtime_renumber.go bump go module to v3 2021-02-22 09:03:51 +01:00
runtime_volume.go bump go module to v3 2021-02-22 09:03:51 +01:00
runtime_volume_linux.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
state.go Rewrite Rename backend in a more atomic fashion 2021-03-02 13:30:28 -05:00
state_test.go Remove in-memory state implementation 2021-04-13 14:00:38 -04:00
stats.go stats: detect containers restart 2021-09-10 09:03:10 +02:00
storage.go Storage can remove ErrNotAContainer as well 2021-09-29 10:12:49 -04:00
util.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
util_linux.go standardize logrus messages to upper case 2021-09-22 15:29:34 -04:00
util_linux_test.go Fix mismatch between log messages and behavior of libpod.LabelVolumePath. 2020-09-13 23:24:15 -04:00
util_test.go bump go module to v3 2021-02-22 09:03:51 +01:00
volume.go volumes: Add support for exporting volumes to external tar 2021-08-23 20:42:41 +05:30
volume_inspect.go bump go module to v3 2021-02-22 09:03:51 +01:00
volume_internal.go Support size and inode options on builtin volumes 2021-08-02 10:32:45 -04:00
volume_internal_linux.go Support size and inode options on builtin volumes 2021-08-02 10:32:45 -04:00