├── .dockerignore ├── .github ├── release.yml ├── renovate.json └── workflows │ ├── build.yaml │ ├── go.yaml │ ├── manifest.yaml │ └── renovate-config.yaml ├── .gitignore ├── Dockerfile ├── LICENSE ├── Makefile ├── PROJECT ├── README.md ├── api └── v1 │ ├── groupversion_info.go │ ├── proxy_types.go │ ├── tunnel_types.go │ └── zz_generated.deepcopy.go ├── cmd └── main.go ├── config ├── crd │ ├── bases │ │ ├── ktunnels.int128.github.io_proxies.yaml │ │ └── ktunnels.int128.github.io_tunnels.yaml │ ├── kustomization.yaml │ ├── kustomizeconfig.yaml │ └── patches │ │ ├── cainjection_in_tunnels.yaml │ │ └── webhook_in_tunnels.yaml ├── default │ ├── cert_metrics_manager_patch.yaml │ ├── kustomization.yaml │ ├── manager_metrics_patch.yaml │ └── metrics_service.yaml ├── manager │ ├── kustomization.yaml │ └── manager.yaml ├── network-policy │ ├── allow-metrics-traffic.yaml │ └── kustomization.yaml ├── prometheus │ ├── kustomization.yaml │ ├── monitor.yaml │ └── monitor_tls_patch.yaml ├── rbac │ ├── guestbook_admin_role.yaml │ ├── kustomization.yaml │ ├── leader_election_role.yaml │ ├── leader_election_role_binding.yaml │ ├── metrics_auth_role.yaml │ ├── metrics_auth_role_binding.yaml │ ├── metrics_reader_role.yaml │ ├── proxy_editor_role.yaml │ ├── proxy_viewer_role.yaml │ ├── role.yaml │ ├── role_binding.yaml │ ├── service_account.yaml │ ├── tunnel_editor_role.yaml │ └── tunnel_viewer_role.yaml └── samples │ ├── ktunnels_v1_proxy.yaml │ ├── ktunnels_v1_tunnel.yaml │ └── kustomization.yaml ├── docs └── diagram.svg ├── e2e_test ├── Makefile ├── controller │ └── kustomization.yaml └── e2e_test.go ├── go.mod ├── go.sum ├── hack └── boilerplate.go.txt └── internal ├── controller ├── proxy_controller.go ├── proxy_controller_test.go ├── suite_test.go ├── tunnel_controller.go └── tunnel_controller_test.go ├── envoy ├── configmap.go ├── configmap_test.go ├── deployment.go ├── deployment_test.go ├── image.go └── service.go └── transit ├── allocate.go └── allocate_test.go /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/.dockerignore -------------------------------------------------------------------------------- /.github/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/.github/release.yml -------------------------------------------------------------------------------- /.github/renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/.github/renovate.json -------------------------------------------------------------------------------- /.github/workflows/build.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/.github/workflows/build.yaml -------------------------------------------------------------------------------- /.github/workflows/go.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/.github/workflows/go.yaml -------------------------------------------------------------------------------- /.github/workflows/manifest.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/.github/workflows/manifest.yaml -------------------------------------------------------------------------------- /.github/workflows/renovate-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/.github/workflows/renovate-config.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/.gitignore -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/Makefile -------------------------------------------------------------------------------- /PROJECT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/PROJECT -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/README.md -------------------------------------------------------------------------------- /api/v1/groupversion_info.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/api/v1/groupversion_info.go -------------------------------------------------------------------------------- /api/v1/proxy_types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/api/v1/proxy_types.go -------------------------------------------------------------------------------- /api/v1/tunnel_types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/api/v1/tunnel_types.go -------------------------------------------------------------------------------- /api/v1/zz_generated.deepcopy.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/api/v1/zz_generated.deepcopy.go -------------------------------------------------------------------------------- /cmd/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/cmd/main.go -------------------------------------------------------------------------------- /config/crd/bases/ktunnels.int128.github.io_proxies.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/crd/bases/ktunnels.int128.github.io_proxies.yaml -------------------------------------------------------------------------------- /config/crd/bases/ktunnels.int128.github.io_tunnels.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/crd/bases/ktunnels.int128.github.io_tunnels.yaml -------------------------------------------------------------------------------- /config/crd/kustomization.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/crd/kustomization.yaml -------------------------------------------------------------------------------- /config/crd/kustomizeconfig.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/crd/kustomizeconfig.yaml -------------------------------------------------------------------------------- /config/crd/patches/cainjection_in_tunnels.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/crd/patches/cainjection_in_tunnels.yaml -------------------------------------------------------------------------------- /config/crd/patches/webhook_in_tunnels.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/crd/patches/webhook_in_tunnels.yaml -------------------------------------------------------------------------------- /config/default/cert_metrics_manager_patch.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/default/cert_metrics_manager_patch.yaml -------------------------------------------------------------------------------- /config/default/kustomization.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/default/kustomization.yaml -------------------------------------------------------------------------------- /config/default/manager_metrics_patch.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/default/manager_metrics_patch.yaml -------------------------------------------------------------------------------- /config/default/metrics_service.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/default/metrics_service.yaml -------------------------------------------------------------------------------- /config/manager/kustomization.yaml: -------------------------------------------------------------------------------- 1 | resources: 2 | - manager.yaml 3 | -------------------------------------------------------------------------------- /config/manager/manager.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/manager/manager.yaml -------------------------------------------------------------------------------- /config/network-policy/allow-metrics-traffic.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/network-policy/allow-metrics-traffic.yaml -------------------------------------------------------------------------------- /config/network-policy/kustomization.yaml: -------------------------------------------------------------------------------- 1 | resources: 2 | - allow-metrics-traffic.yaml 3 | -------------------------------------------------------------------------------- /config/prometheus/kustomization.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/prometheus/kustomization.yaml -------------------------------------------------------------------------------- /config/prometheus/monitor.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/prometheus/monitor.yaml -------------------------------------------------------------------------------- /config/prometheus/monitor_tls_patch.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/prometheus/monitor_tls_patch.yaml -------------------------------------------------------------------------------- /config/rbac/guestbook_admin_role.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/guestbook_admin_role.yaml -------------------------------------------------------------------------------- /config/rbac/kustomization.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/kustomization.yaml -------------------------------------------------------------------------------- /config/rbac/leader_election_role.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/leader_election_role.yaml -------------------------------------------------------------------------------- /config/rbac/leader_election_role_binding.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/leader_election_role_binding.yaml -------------------------------------------------------------------------------- /config/rbac/metrics_auth_role.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/metrics_auth_role.yaml -------------------------------------------------------------------------------- /config/rbac/metrics_auth_role_binding.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/metrics_auth_role_binding.yaml -------------------------------------------------------------------------------- /config/rbac/metrics_reader_role.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/metrics_reader_role.yaml -------------------------------------------------------------------------------- /config/rbac/proxy_editor_role.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/proxy_editor_role.yaml -------------------------------------------------------------------------------- /config/rbac/proxy_viewer_role.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/proxy_viewer_role.yaml -------------------------------------------------------------------------------- /config/rbac/role.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/role.yaml -------------------------------------------------------------------------------- /config/rbac/role_binding.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/role_binding.yaml -------------------------------------------------------------------------------- /config/rbac/service_account.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/service_account.yaml -------------------------------------------------------------------------------- /config/rbac/tunnel_editor_role.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/tunnel_editor_role.yaml -------------------------------------------------------------------------------- /config/rbac/tunnel_viewer_role.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/rbac/tunnel_viewer_role.yaml -------------------------------------------------------------------------------- /config/samples/ktunnels_v1_proxy.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/samples/ktunnels_v1_proxy.yaml -------------------------------------------------------------------------------- /config/samples/ktunnels_v1_tunnel.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/samples/ktunnels_v1_tunnel.yaml -------------------------------------------------------------------------------- /config/samples/kustomization.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/config/samples/kustomization.yaml -------------------------------------------------------------------------------- /docs/diagram.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/docs/diagram.svg -------------------------------------------------------------------------------- /e2e_test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/e2e_test/Makefile -------------------------------------------------------------------------------- /e2e_test/controller/kustomization.yaml: -------------------------------------------------------------------------------- 1 | resources: 2 | - ../../config/default 3 | -------------------------------------------------------------------------------- /e2e_test/e2e_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/e2e_test/e2e_test.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/go.sum -------------------------------------------------------------------------------- /hack/boilerplate.go.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/hack/boilerplate.go.txt -------------------------------------------------------------------------------- /internal/controller/proxy_controller.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/controller/proxy_controller.go -------------------------------------------------------------------------------- /internal/controller/proxy_controller_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/controller/proxy_controller_test.go -------------------------------------------------------------------------------- /internal/controller/suite_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/controller/suite_test.go -------------------------------------------------------------------------------- /internal/controller/tunnel_controller.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/controller/tunnel_controller.go -------------------------------------------------------------------------------- /internal/controller/tunnel_controller_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/controller/tunnel_controller_test.go -------------------------------------------------------------------------------- /internal/envoy/configmap.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/envoy/configmap.go -------------------------------------------------------------------------------- /internal/envoy/configmap_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/envoy/configmap_test.go -------------------------------------------------------------------------------- /internal/envoy/deployment.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/envoy/deployment.go -------------------------------------------------------------------------------- /internal/envoy/deployment_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/envoy/deployment_test.go -------------------------------------------------------------------------------- /internal/envoy/image.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/envoy/image.go -------------------------------------------------------------------------------- /internal/envoy/service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/envoy/service.go -------------------------------------------------------------------------------- /internal/transit/allocate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/transit/allocate.go -------------------------------------------------------------------------------- /internal/transit/allocate_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/int128/ktunnels/HEAD/internal/transit/allocate_test.go --------------------------------------------------------------------------------