Showing with 1,522 additions and 2,220 deletions.
  1. +8 −0 .env
  2. +1 −1 .gitignore
  3. +100 −0 .rubocop.yml
  4. +0 −2 .travis.yml
  5. +15 −0 CHANGELOG.md
  6. +173 −268 README.md
  7. +30 −0 lib/puppet/parser/functions/kubeadm_init_flags.rb
  8. +24 −0 lib/puppet/parser/functions/kubeadm_join_flags.rb
  9. +37 −34 manifests/cluster_roles.pp
  10. +56 −122 manifests/config.pp
  11. +106 −195 manifests/init.pp
  12. +18 −97 manifests/kube_addons.pp
  13. +60 −0 manifests/kubeadm_init.pp
  14. +50 −0 manifests/kubeadm_join.pp
  15. +57 −27 manifests/packages.pp
  16. +31 −51 manifests/params.pp
  17. +39 −61 manifests/service.pp
  18. +1 −1 metadata.json
  19. +6 −6 spec/acceptance/kubernetes_spec.rb
  20. +60 −56 spec/classes/cluster_roles_spec.rb
  21. +42 −187 spec/classes/config_spec.rb
  22. +76 −10 spec/classes/init_spec.rb
  23. +9 −87 spec/classes/kube_addons_spec.rb
  24. +62 −66 spec/classes/packages_spec.rb
  25. +77 −74 spec/classes/service_spec.rb
  26. +30 −0 spec/defines/kubeadm_init_spec.rb
  27. +33 −0 spec/defines/kubeadm_join_spec.rb
  28. +21 −8 spec/spec_helper_acceptance.rb
  29. +2 −0 templates/0-containerd.conf.erb
  30. +0 −153 templates/addons/kube-dns-deployment.yaml.erb
  31. +0 −8 templates/addons/kube-dns-sa.yaml.erb
  32. +0 −23 templates/addons/kube-dns-service.yaml.erb
  33. +0 −45 templates/addons/kube-proxy-daemonset.yaml.erb
  34. +0 −8 templates/addons/kube-proxy-sa.yaml.erb
  35. +0 −29 templates/addons/kube-proxy.yaml.erb
  36. +0 −19 templates/admin.conf.erb
  37. +0 −12 templates/clusterRoleBinding.yaml.erb
  38. +35 −0 templates/config.yaml.erb
  39. +18 −0 templates/containerd.service.erb
  40. +0 −19 templates/controller-manager.conf.erb
  41. +0 −59 templates/etcd.yaml.erb
  42. +1 −0 templates/etcd/ca.crt.erb
  43. +1 −0 templates/etcd/ca.key.erb
  44. +1 −0 templates/etcd/client.crt.erb
  45. +1 −0 templates/etcd/client.key.erb
  46. +2 −0 templates/etcd/etcd.env.erb
  47. +33 −0 templates/etcd/etcd.service.erb
  48. +64 −0 templates/etcd/etcd.yaml.erb
  49. +1 −0 templates/etcd/peer.crt.erb
  50. +1 −0 templates/etcd/peer.key.erb
  51. +1 −0 templates/etcd/server.crt.erb
  52. +1 −0 templates/etcd/server.key.erb
  53. +0 −79 templates/kube-apiserver.yaml.erb
  54. +0 −57 templates/kube-controller-manager.yaml.erb
  55. +0 −40 templates/kube-scheduler.yaml.erb
  56. +0 −48 templates/kubelet.conf.erb
  57. +0 −13 templates/kubernetes.conf.erb
  58. +0 −1 templates/pki/apiserver-kubelet-client.crt.erb
  59. +0 −1 templates/pki/apiserver-kubelet-client.key.erb
  60. +0 −1 templates/pki/apiserver.crt.erb
  61. +0 −1 templates/pki/apiserver.key.erb
  62. +1 −1 templates/pki/ca.crt.erb
  63. +1 −1 templates/pki/ca.key.erb
  64. +0 −1 templates/pki/front-proxy-ca.crt.erb
  65. +0 −1 templates/pki/front-proxy-ca.key.erb
  66. +0 −1 templates/pki/front-proxy-client.crt.erb
  67. +0 −1 templates/pki/front-proxy-client.key.erb
  68. +1 −1 templates/pki/sa.key.erb
  69. +1 −1 templates/pki/sa.pub.erb
  70. +0 −19 templates/scheduler.conf.erb
  71. +0 −14 templates/secrets/bootstraptoken.yaml.erb
  72. +2 −2 tooling/Dockerfile
  73. +9 −35 tooling/kube_tool.rb
  74. +6 −1 tooling/kube_tool/clean_up.rb
  75. +73 −123 tooling/kube_tool/create_certs.rb
  76. +0 −25 tooling/kube_tool/create_token.rb
  77. +42 −22 tooling/kube_tool/other_params.rb
  78. +2 −2 tooling/kube_tool/pre_checks.rb
8 changes: 8 additions & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
OS=
VERSION=
CONTAINER_RUNTIME=
CNI_PROVIDER=
ETCD_INITIAL_CLUSTER=
ETCD_IP=
KUBE_API_ADVERTISE_ADDRESS=
INSTALL_DASHBOARD=
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Gemfile.lock
coverage/
.bundle/
vendor/
tooling/kubernetes.yaml
tooling/*.yaml
log/
.vagrant/

100 changes: 100 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
---
require:
- rubocop-rspec
- rubocop-i18n
AllCops:
TargetRubyVersion: '2.1'
Include:
- "./**/*.rb"
Exclude:
- bin/*
- ".vendor/**/*"
- Gemfile
- Rakefile
- pkg/**/*
- spec/fixtures/**/*
- vendor/**/*
Metrics/LineLength:
Description: People have wide screens, use them.
Max: 200
Enabled: false
RSpec/BeforeAfterAll:
Description: Beware of using after(:all) as it may cause state to leak between tests.
A necessary evil in acceptance testing.
Exclude:
- spec/acceptance/**/*.rb
RSpec/HookArgument:
Description: Prefer explicit :each argument, matching existing module's style
EnforcedStyle: each
Style/BlockDelimiters:
Description: Prefer braces for chaining. Mostly an aesthetical choice. Better to
be consistent then.
EnforcedStyle: braces_for_chaining
Style/ClassAndModuleChildren:
Description: Compact style reduces the required amount of indentation.
EnforcedStyle: compact
Style/EmptyElse:
Description: Enforce against empty else clauses, but allow `nil` for clarity.
EnforcedStyle: empty
Style/FormatString:
Description: Following the main puppet project's style, prefer the % format format.
EnforcedStyle: percent
Style/FormatStringToken:
Description: Following the main puppet project's style, prefer the simpler template
tokens over annotated ones.
EnforcedStyle: template
Style/Lambda:
Description: Prefer the keyword for easier discoverability.
EnforcedStyle: literal
Enabled: true
Style/RegexpLiteral:
Description: Community preference. See https://github.com/voxpupuli/modulesync_config/issues/168
EnforcedStyle: percent_r
Style/TernaryParentheses:
Description: Checks for use of parentheses around ternary conditions. Enforce parentheses
on complex expressions for better readability, but seriously consider breaking
it up.
EnforcedStyle: require_parentheses_when_complex
Style/TrailingCommaInArguments:
Description: Prefer always trailing comma on multiline argument lists. This makes
diffs, and re-ordering nicer.
EnforcedStyleForMultiline: comma
Style/SymbolArray:
Description: Using percent style obscures symbolic intent of array's contents.
EnforcedStyle: brackets
Style/CollectionMethods:
Enabled: true
Style/MethodCalledOnDoEndBlock:
Enabled: true
Style/StringMethods:
Enabled: true
Metrics/AbcSize:
Enabled: false
Metrics/BlockLength:
Enabled: false
Metrics/LineLength:
Enabled: false
Metrics/ClassLength:
Enabled: false
Metrics/CyclomaticComplexity:
Enabled: false
Metrics/MethodLength:
Enabled: false
Metrics/ModuleLength:
Enabled: false
Metrics/ParameterLists:
Enabled: false
Metrics/PerceivedComplexity:
Enabled: false
RSpec/DescribeClass:
Enabled: false
RSpec/MessageExpectation:
Enabled: false
Style/AsciiComments:
Enabled: false
Style/IfUnlessModifier:
Enabled: false
Style/SymbolProc:
Enabled: false
Style/HashSyntax:
UseHashRocketsWithSymbolValues: true
2 changes: 0 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@ bundler_args: --without development system_tests
before_install: rm Gemfile.lock || true
sudo: false
rvm:
- 2.1.6
- 2.2.5
- 2.3.3
script:
- bundle exec rake test
Expand Down
15 changes: 15 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
# Version 2.0.0

Architectural change to use kubeadm project to bootstrap kubernetes clusters.

Updates to kubetool and params to reflect this change. See the README.md in this repo and consult the official kubeadm documenation [here](https://kubernetes.io/docs/setup/independent/)

# Version 1.1.0

Add parameters for networking

Minor bug fixes

Full list of PR's available at [here](https://github.com/puppetlabs/puppetlabs-kubernetes/milestone/1?closed=1)


# Version 1.0.3

Change exec path for controller PR #57
Expand Down
Loading