spiegel_podman/test/e2e
Matthew Heon 7ac3d906b5 Rework port parsing to support --expose and -P
As part of this, make a major change to the type we use to
represent port mappings in SpecGen (from using existing OCICNI
structs to using our own custom one). This struct has the
advantage of supporting ranges, massively reducing traffic over
the wire for Podman commands using them (for example, the
`podman run -p 5000-6000` command will now send only one struct
instead of 1000). This struct also allows us to easily validate
which ports are in use, and which are not, which is necessary for
--expose.

Once we have parsed the ports from the new struct, we can produce
an accurate map including all currently requested ports, and use
that to determine what ports need to be exposed (some requested
exposed ports may already be included in a mapping from --publish
and will be ignored) and what open ports on the host we can map
them to.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-05-04 20:57:27 -04:00
..
build Fix environment handling from containers.conf 2020-04-02 13:10:08 -04:00
config Properly handle containers.conf devices 2020-05-01 15:00:26 -04:00
hooks Add hooks support to podman 2018-04-05 14:13:49 +00:00
attach_test.go testv2: enable attach test 2020-04-29 23:47:15 -04:00
build_test.go enable build tests 2020-04-28 08:58:06 +02:00
checkpoint_test.go checkpoint: change runtime checkpoint support test 2020-04-03 18:00:57 +02:00
commit_test.go V2 tests: enables commit tests 2020-04-24 15:20:04 -04:00
common_test.go V2 Restore images list tests 2020-04-29 08:24:56 -07:00
config.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
config_amd64.go use imagecaches for local tests 2019-05-29 15:12:05 -05:00
config_ppc64le.go use imagecaches for local tests 2019-05-29 15:12:05 -05:00
container_inspect_test.go Enable container inspect integration tests 2020-04-25 13:36:11 -05:00
containers_conf_test.go Remove skip on containers.conf tests 2020-05-01 15:00:33 -04:00
cp_test.go test: enable cp tests 2020-04-29 15:40:31 +02:00
create_staticip_test.go vendor in containers/common v0.9.4 2020-04-22 06:57:06 -04:00
create_staticmac_test.go test: add tests for --mac-address 2019-11-07 18:38:02 +01:00
create_test.go test: enable create tests 2020-04-30 11:33:35 +02:00
diff_test.go Add --latest, -l to 'podman diff' 2019-06-21 13:37:04 +02:00
events_test.go podman events format json 2019-08-02 11:47:43 -04:00
exec_test.go test: enable exec tests 2020-04-28 15:32:59 +02:00
exists_test.go V2 Restore exists E2E tests 2020-04-22 09:53:05 -07:00
export_test.go Refactor tests when checking for error exit codes 2019-10-16 08:10:07 -07:00
generate_kube_test.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
generate_systemd_test.go generate systemd 2020-04-29 07:22:18 +02:00
healthcheck_run_test.go test: enable healthcheck tests 2020-04-27 11:31:47 +02:00
history_test.go use imagecaches for local tests 2019-05-29 15:12:05 -05:00
images_test.go V2 Restore images list tests 2020-04-29 08:24:56 -07:00
import_test.go Completely rework --change parsing 2019-12-04 18:55:30 -05:00
info_test.go test rootless_storage_path from strorage.conf 2020-04-22 14:02:32 -04:00
init_test.go containers, init: skip invalid state errors with --all 2020-04-24 17:33:27 +02:00
inspect_test.go enable inspect tests 2020-04-29 07:25:31 +02:00
kill_test.go Refactor tests when checking for error exit codes 2019-10-16 08:10:07 -07:00
libpod_suite_remoteclient_test.go test: fix exec preserve-fds test 2020-04-09 10:17:42 +02:00
libpod_suite_test.go test: fix exec preserve-fds test 2020-04-09 10:17:42 +02:00
load_test.go enable load integration tests 2020-04-27 10:20:53 -05:00
login_logout_test.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
logs_test.go log: support --log-opt tag= 2020-01-10 10:35:19 +01:00
manifest_test.go Add --os to manifest add 2020-04-24 14:57:56 -04:00
mount_test.go Add codespell to validate spelling mistakes in code. 2020-01-11 06:32:19 -05:00
namespace_test.go use imagecaches for local tests 2019-05-29 15:12:05 -05:00
negative_test.go Refactor tests when checking for error exit codes 2019-10-16 08:10:07 -07:00
network_create_test.go add provided cni networks to spec gen 2020-05-01 09:20:52 -05:00
network_test.go add provided cni networks to spec gen 2020-05-01 09:20:52 -05:00
pause_test.go test: fix check for pause on cgroup v2 2020-04-27 11:59:22 +02:00
play_kube_test.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
pod_create_test.go test: enable pod create tests 2020-04-27 13:12:24 +02:00
pod_infra_container_test.go test: enable all pod tests 2020-04-27 17:08:56 +02:00
pod_inspect_test.go Enable pod inspect integration test 2020-04-26 16:38:52 -04:00
pod_kill_test.go Enable these tests 2020-04-26 07:27:41 -04:00
pod_pause_test.go test: fix pause tests 2020-04-27 11:59:22 +02:00
pod_pod_namespaces.go test: enable all pod tests 2020-04-27 17:08:56 +02:00
pod_prune_test.go Enable these tests 2020-04-26 07:27:41 -04:00
pod_ps_test.go Enable pod ps integration tests 2020-04-25 13:13:32 -05:00
pod_restart_test.go test: enable pod restart tests 2020-04-27 13:41:58 +02:00
pod_rm_test.go test: enable pod rm tests 2020-04-27 14:02:54 +02:00
pod_start_test.go test: enable all pod tests 2020-04-27 17:08:56 +02:00
pod_stats_test.go implement pod stats 2020-04-27 12:00:35 +02:00
pod_stop_test.go test: enable pod stop tests 2020-04-27 13:19:35 +02:00
pod_top_test.go Enable these tests 2020-04-26 07:27:41 -04:00
port_test.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
prune_test.go And system prune feature for v2. 2020-05-01 13:57:16 -04:00
ps_test.go Make podman container list == podman ps 2020-04-27 09:51:26 -04:00
pull_test.go Fix podman push and podman pull to check for authfile 2020-04-22 14:30:40 -04:00
push_test.go enable the push e2e tests 2020-04-29 14:35:48 +02:00
restart_test.go enable integration tests for restart 2020-04-27 09:08:27 -05:00
rm_test.go Fix podman rm to have correct exit codes 2020-04-22 11:53:00 -04:00
rmi_test.go V2 Restore images list tests 2020-04-29 08:24:56 -07:00
run_cgroup_parent_test.go test: enable cgroup parent tests 2020-04-24 13:05:43 +02:00
run_cleanup_test.go fix unit test to use Expect 2019-09-12 21:01:43 +00:00
run_cpu_test.go Refactor tests when checking for error exit codes 2019-10-16 08:10:07 -07:00
run_device_test.go vendor in containers/common v0.9.4 2020-04-22 06:57:06 -04:00
run_dns_test.go Enable these tests 2020-04-26 07:27:41 -04:00
run_entrypoint_test.go test: enable entrypoint tests 2020-04-30 11:33:36 +02:00
run_env_test.go User specified environment happen after other environments are set 2020-04-28 16:29:01 -04:00
run_exit_test.go Fix exit code failure 2019-09-17 12:01:02 -04:00
run_memory_test.go Fix cgroupsv2 run test, unexpected output 2020-02-25 12:34:26 -05:00
run_networking_test.go Rework port parsing to support --expose and -P 2020-05-04 20:57:27 -04:00
run_ns_test.go enable run_ns integration tests 2020-04-26 10:42:40 -05:00
run_passwd_test.go Enable these tests 2020-04-26 07:27:41 -04:00
run_privileged_test.go use imagecaches for local tests 2019-05-29 15:12:05 -05:00
run_restart_test.go enable run_restart integration tests 2020-04-26 10:44:17 -05:00
run_seccomp.go policy for seccomp-profile selection 2020-01-09 17:57:58 +01:00
run_security_labels.go Allow devs to set labels in container images for default capabilities. 2020-03-02 16:37:32 -05:00
run_selinux_test.go vendor in containers/common v0.9.4 2020-04-22 06:57:06 -04:00
run_signal_test.go enable run_signal integration tests 2020-04-26 10:34:47 -05:00
run_staticip_test.go curb flakes in integration tests 2020-02-26 08:30:28 -06:00
run_test.go test: enable remaining run tests 2020-04-30 11:33:37 +02:00
run_userns_test.go podman: assume user namespace if there are mappings 2020-04-24 15:55:38 +02:00
run_volume_test.go enable volume integration tests 2020-04-27 16:12:06 -05:00
runlabel_test.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
save_test.go Fixes podman save fails when specifying an image using a digest #5234 2020-04-28 16:16:30 -04:00
search_test.go enable search tests 2020-04-29 16:28:18 +02:00
start_test.go test: enable start tests 2020-04-30 15:49:12 +02:00
stats_test.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
stop_test.go Fix handling of --cidfile on create/run 2020-04-22 09:52:33 -04:00
system_df_test.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
system_reset_test.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
systemd_test.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
tag_test.go use imagecaches for local tests 2019-05-29 15:12:05 -05:00
test.yaml Add support for RunAsUser and RunAsGroup 2019-11-06 10:35:37 -05:00
top_test.go use imagecaches for local tests 2019-05-29 15:12:05 -05:00
tree_test.go speed up rootless tests 2019-07-08 12:31:31 -05:00
trust_test.go Force integration tests to pass 2020-04-21 13:48:50 -05:00
unshare_test.go use imagecaches for local tests 2019-05-29 15:12:05 -05:00
untag_test.go Fix integration tests for untag 2020-04-22 14:13:07 -04:00
version_test.go V2 restore podman -v command 2020-04-29 09:15:24 -07:00
volume_create_test.go enable volume integration tests 2020-04-27 16:12:06 -05:00
volume_inspect_test.go enable volume integration tests 2020-04-27 16:12:06 -05:00
volume_ls_test.go enable volume integration tests 2020-04-27 16:12:06 -05:00
volume_prune_test.go And system prune feature for v2. 2020-05-01 13:57:16 -04:00
volume_rm_test.go enable volume integration tests 2020-04-27 16:12:06 -05:00
wait_test.go use imagecaches for local tests 2019-05-29 15:12:05 -05:00