├── .gitignore ├── .rspec ├── .rubocop.relaxed.yml ├── .rubocop.yml ├── .travis.yml ├── Dockerfile ├── Gemfile ├── LICENSE ├── README.md ├── Rakefile ├── docker-compose.yaml ├── k8s-client.gemspec ├── lib ├── k8s-client.rb └── k8s │ ├── api_client.rb │ ├── client.rb │ ├── client │ └── version.rb │ ├── config.rb │ ├── error.rb │ ├── json_parser.rb │ ├── json_parser │ └── yajl.rb │ ├── logging.rb │ ├── resource.rb │ ├── resource_client.rb │ ├── stack.rb │ ├── transport.rb │ ├── util.rb │ └── watch_event.rb └── spec ├── fixtures ├── api │ ├── api-v1.json │ ├── apis.json │ ├── configmaps-bar-404.json │ ├── configmaps-bar.json │ ├── error-forbidden.json │ ├── nodes-get.json │ ├── nodes-list.json │ ├── services-foo.json │ └── version.json ├── apis │ ├── admissionregistration.k8s.io-v1beta1.json │ ├── apiextensions.k8s.io-v1beta1.json │ ├── apiregistration.k8s.io-v1.json │ ├── apiregistration.k8s.io-v1beta1.json │ ├── apps-v1.json │ ├── apps-v1beta1.json │ ├── apps-v1beta2.json │ ├── authentication.k8s.io-v1.json │ ├── authentication.k8s.io-v1beta1.json │ ├── authorization.k8s.io-v1.json │ ├── authorization.k8s.io-v1beta1.json │ ├── autoscaling-v1.json │ ├── autoscaling-v2beta1.json │ ├── batch-v1.json │ ├── batch-v1beta1.json │ ├── certificates.k8s.io-v1beta1.json │ ├── events.k8s.io-v1beta1.json │ ├── extensions-v1beta1.json │ ├── networking.k8s.io-v1.json │ ├── policy-v1beta1.json │ ├── rbac.authorization.k8s.io-v1.json │ ├── rbac.authorization.k8s.io-v1beta1.json │ ├── storage.k8s.io-v1.json │ └── storage.k8s.io-v1beta1.json ├── config │ ├── kubeadm-admin-with-path-prefix.conf │ ├── kubeadm-admin.conf │ ├── kubeadm-apiserver-cert.pem │ ├── kubeconfig_auth_provider_data.json │ ├── kubeconfig_user_exec_data.json │ └── with_timestamps.conf ├── resources │ ├── configmap-bar.yaml │ ├── namespace.yml │ ├── service-foo.yaml │ ├── service.yaml │ ├── service_modified.yaml │ └── test │ │ ├── crd-test.yaml │ │ └── test.yaml └── stacks │ └── whoami.yaml ├── helpers └── fixture_helpers.rb ├── k8s ├── api_client_spec.rb ├── client_spec.rb ├── config_spec.rb ├── json_parser_spec.rb ├── resource_client_spec.rb ├── resource_spec.rb ├── stack_spec.rb ├── transport_spec.rb └── util_spec.rb └── spec_helper.rb /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/.gitignore -------------------------------------------------------------------------------- /.rspec: -------------------------------------------------------------------------------- 1 | --format documentation 2 | --color 3 | --require spec_helper 4 | -------------------------------------------------------------------------------- /.rubocop.relaxed.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/.rubocop.relaxed.yml -------------------------------------------------------------------------------- /.rubocop.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/.rubocop.yml -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/.travis.yml -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/Dockerfile -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/Gemfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/README.md -------------------------------------------------------------------------------- /Rakefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/Rakefile -------------------------------------------------------------------------------- /docker-compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/docker-compose.yaml -------------------------------------------------------------------------------- /k8s-client.gemspec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/k8s-client.gemspec -------------------------------------------------------------------------------- /lib/k8s-client.rb: -------------------------------------------------------------------------------- 1 | # frozen_string_literal: true 2 | 3 | require_relative 'k8s/client' 4 | -------------------------------------------------------------------------------- /lib/k8s/api_client.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/api_client.rb -------------------------------------------------------------------------------- /lib/k8s/client.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/client.rb -------------------------------------------------------------------------------- /lib/k8s/client/version.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/client/version.rb -------------------------------------------------------------------------------- /lib/k8s/config.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/config.rb -------------------------------------------------------------------------------- /lib/k8s/error.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/error.rb -------------------------------------------------------------------------------- /lib/k8s/json_parser.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/json_parser.rb -------------------------------------------------------------------------------- /lib/k8s/json_parser/yajl.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/json_parser/yajl.rb -------------------------------------------------------------------------------- /lib/k8s/logging.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/logging.rb -------------------------------------------------------------------------------- /lib/k8s/resource.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/resource.rb -------------------------------------------------------------------------------- /lib/k8s/resource_client.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/resource_client.rb -------------------------------------------------------------------------------- /lib/k8s/stack.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/stack.rb -------------------------------------------------------------------------------- /lib/k8s/transport.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/transport.rb -------------------------------------------------------------------------------- /lib/k8s/util.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/util.rb -------------------------------------------------------------------------------- /lib/k8s/watch_event.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/lib/k8s/watch_event.rb -------------------------------------------------------------------------------- /spec/fixtures/api/api-v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/api/api-v1.json -------------------------------------------------------------------------------- /spec/fixtures/api/apis.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/api/apis.json -------------------------------------------------------------------------------- /spec/fixtures/api/configmaps-bar-404.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/api/configmaps-bar-404.json -------------------------------------------------------------------------------- /spec/fixtures/api/configmaps-bar.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/api/configmaps-bar.json -------------------------------------------------------------------------------- /spec/fixtures/api/error-forbidden.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/api/error-forbidden.json -------------------------------------------------------------------------------- /spec/fixtures/api/nodes-get.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/api/nodes-get.json -------------------------------------------------------------------------------- /spec/fixtures/api/nodes-list.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/api/nodes-list.json -------------------------------------------------------------------------------- /spec/fixtures/api/services-foo.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/api/services-foo.json -------------------------------------------------------------------------------- /spec/fixtures/api/version.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/api/version.json -------------------------------------------------------------------------------- /spec/fixtures/apis/admissionregistration.k8s.io-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/admissionregistration.k8s.io-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/apiextensions.k8s.io-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/apiextensions.k8s.io-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/apiregistration.k8s.io-v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/apiregistration.k8s.io-v1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/apiregistration.k8s.io-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/apiregistration.k8s.io-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/apps-v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/apps-v1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/apps-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/apps-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/apps-v1beta2.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/apps-v1beta2.json -------------------------------------------------------------------------------- /spec/fixtures/apis/authentication.k8s.io-v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/authentication.k8s.io-v1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/authentication.k8s.io-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/authentication.k8s.io-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/authorization.k8s.io-v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/authorization.k8s.io-v1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/authorization.k8s.io-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/authorization.k8s.io-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/autoscaling-v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/autoscaling-v1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/autoscaling-v2beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/autoscaling-v2beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/batch-v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/batch-v1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/batch-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/batch-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/certificates.k8s.io-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/certificates.k8s.io-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/events.k8s.io-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/events.k8s.io-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/extensions-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/extensions-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/networking.k8s.io-v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/networking.k8s.io-v1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/policy-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/policy-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/rbac.authorization.k8s.io-v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/rbac.authorization.k8s.io-v1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/rbac.authorization.k8s.io-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/rbac.authorization.k8s.io-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/storage.k8s.io-v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/storage.k8s.io-v1.json -------------------------------------------------------------------------------- /spec/fixtures/apis/storage.k8s.io-v1beta1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/apis/storage.k8s.io-v1beta1.json -------------------------------------------------------------------------------- /spec/fixtures/config/kubeadm-admin-with-path-prefix.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/config/kubeadm-admin-with-path-prefix.conf -------------------------------------------------------------------------------- /spec/fixtures/config/kubeadm-admin.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/config/kubeadm-admin.conf -------------------------------------------------------------------------------- /spec/fixtures/config/kubeadm-apiserver-cert.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/config/kubeadm-apiserver-cert.pem -------------------------------------------------------------------------------- /spec/fixtures/config/kubeconfig_auth_provider_data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/config/kubeconfig_auth_provider_data.json -------------------------------------------------------------------------------- /spec/fixtures/config/kubeconfig_user_exec_data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/config/kubeconfig_user_exec_data.json -------------------------------------------------------------------------------- /spec/fixtures/config/with_timestamps.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/config/with_timestamps.conf -------------------------------------------------------------------------------- /spec/fixtures/resources/configmap-bar.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/resources/configmap-bar.yaml -------------------------------------------------------------------------------- /spec/fixtures/resources/namespace.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/resources/namespace.yml -------------------------------------------------------------------------------- /spec/fixtures/resources/service-foo.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/resources/service-foo.yaml -------------------------------------------------------------------------------- /spec/fixtures/resources/service.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/resources/service.yaml -------------------------------------------------------------------------------- /spec/fixtures/resources/service_modified.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/resources/service_modified.yaml -------------------------------------------------------------------------------- /spec/fixtures/resources/test/crd-test.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/resources/test/crd-test.yaml -------------------------------------------------------------------------------- /spec/fixtures/resources/test/test.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/resources/test/test.yaml -------------------------------------------------------------------------------- /spec/fixtures/stacks/whoami.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/fixtures/stacks/whoami.yaml -------------------------------------------------------------------------------- /spec/helpers/fixture_helpers.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/helpers/fixture_helpers.rb -------------------------------------------------------------------------------- /spec/k8s/api_client_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/k8s/api_client_spec.rb -------------------------------------------------------------------------------- /spec/k8s/client_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/k8s/client_spec.rb -------------------------------------------------------------------------------- /spec/k8s/config_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/k8s/config_spec.rb -------------------------------------------------------------------------------- /spec/k8s/json_parser_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/k8s/json_parser_spec.rb -------------------------------------------------------------------------------- /spec/k8s/resource_client_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/k8s/resource_client_spec.rb -------------------------------------------------------------------------------- /spec/k8s/resource_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/k8s/resource_spec.rb -------------------------------------------------------------------------------- /spec/k8s/stack_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/k8s/stack_spec.rb -------------------------------------------------------------------------------- /spec/k8s/transport_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/k8s/transport_spec.rb -------------------------------------------------------------------------------- /spec/k8s/util_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/k8s/util_spec.rb -------------------------------------------------------------------------------- /spec/spec_helper.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kontena/k8s-client/HEAD/spec/spec_helper.rb --------------------------------------------------------------------------------