diff --git a/docs/ansible.md b/docs/ansible.md index 5e17147be..030f866a1 100644 --- a/docs/ansible.md +++ b/docs/ansible.md @@ -123,7 +123,6 @@ The following tags are defined in playbooks: | hyperkube | Manipulations with K8s hyperkube image | k8s-pre-upgrade | Upgrading K8s cluster | k8s-secrets | Configuring K8s certs/keys -| kpm | Installing K8s apps definitions with KPM | kube-apiserver | Configuring static pod kube-apiserver | kube-controller-manager | Configuring static pod kube-controller-manager | kubectl | Installing kubectl and bash completion diff --git a/docs/roadmap.md b/docs/roadmap.md index cf8fa2d9a..a0c1a3ffc 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -9,7 +9,7 @@ Kubespray's roadmap ### Self deployment (pull-mode) [#320](https://github.com/kubespray/kubespray/issues/320) - the playbook would install and configure docker/rkt and the etcd cluster - the following data would be inserted into etcd: certs,tokens,users,inventory,group_vars. -- a "kubespray" container would be deployed (kubespray-cli, ansible-playbook, kpm) +- a "kubespray" container would be deployed (kubespray-cli, ansible-playbook) - to be discussed, a way to provide the inventory - **self deployment** of the node from inside a container [#321](https://github.com/kubespray/kubespray/issues/321) diff --git a/inventory/sample/group_vars/all.yml b/inventory/sample/group_vars/all.yml index 282943a8d..d856d064c 100644 --- a/inventory/sample/group_vars/all.yml +++ b/inventory/sample/group_vars/all.yml @@ -110,10 +110,6 @@ bin_dir: /usr/local/bin # Uncomment this if you have more than 3 nameservers, then we'll only use the first 3. #docker_dns_servers_strict: false -## Default packages to install within the cluster, f.e: -#kpm_packages: -# - name: kube-system/grafana - ## Certificate Management ## This setting determines whether certs are generated via scripts or whether a ## cluster of Hashicorp's Vault is started to issue certificates (using etcd diff --git a/roles/kubernetes-apps/kpm/library/kpm.py b/roles/kubernetes-apps/kpm/library/kpm.py deleted file mode 100644 index aa44d4cc8..000000000 --- a/roles/kubernetes-apps/kpm/library/kpm.py +++ /dev/null @@ -1,111 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- - -import kpm.deploy -from ansible.module_utils.basic import * - -DOCUMENTATION = """ ---- -module: kpm -short_description: Application deployment on kubernetes with kpm registry -description: - - Create, remove, and update resources within a Kubernetes Cluster -version_added: "2.0" -options: - name: - required: true - default: null - description: - - The name of the kpm package - namespace: - required: false - default: 'default' - description: - - The namespace to deploy package. It will be created if doesn't exist - force: - required: false - default: false - description: - - A flag to indicate to force delete, replace. - registry: - required: false - default: 'https://api.kpm.sh' - description: - - The registry url to fetch packages - version: - required: false - default: 'None' - description: - - The package version - variables: - required: false - default: 'None' - description: - - Set package variables - state: - required: false - choices: ['present', 'absent'] - default: present - description: - - present handles checking existence or creating resources, - absent handles deleting resource(s). -requirements: - - kubectl - - kpm -author: "Antoine Legrand (ant31_2t@msn.com)" -""" - -EXAMPLES = """ -- name: check presence or install ghost - kpm: name=ghost/ghost state=present - -- name: check absence or remove rocketchat - kpm: name=ant31/rocketchat state=absent -""" - -RETURN = """ -""" - - -def check_changed(result, state='present'): - no_change = ["ok", 'protected', 'absent'] - for r in result: - if r['status'] not in no_change: - return True - return False - - -def main(): - module = AnsibleModule( - supports_check_mode=True, - argument_spec = dict( - version = dict(default=None, required=False), - state = dict(default='present', choices=['present', 'absent']), - name = dict(required=True), - force = dict(required=False, default=False, type='bool'), - variables = dict(required=False, default=None, type='dict'), - registry = dict(required=False, default="https://api.kpm.sh"), - namespace=dict(default='default', required=False))) - - params = {"version": module.params.get("version"), - "namespace": module.params.get('namespace'), - "variables": module.params.get('variables'), - "endpoint": module.params.get('registry'), - "dry": module.check_mode, - "proxy": None, - "fmt": "json"} - state = module.params.get("state") - try: - if state == 'present': - r = kpm.deploy.deploy(module.params.get('name'), **params) - elif state == 'absent': - r = kpm.deploy.delete(module.params.get('name'), **params) - except Exception as e: - module.fail_json(msg=e.message) - res = {} - res['kpm'] = r - res['changed'] = check_changed(r, state) - module.exit_json(**res) - -if __name__ == '__main__': - main() diff --git a/roles/kubernetes-apps/kpm/tasks/main.yml b/roles/kubernetes-apps/kpm/tasks/main.yml deleted file mode 100644 index 9aadc07ea..000000000 --- a/roles/kubernetes-apps/kpm/tasks/main.yml +++ /dev/null @@ -1,20 +0,0 @@ ---- -- name: install kpm - pip: - name: "kpm" - state: "present" - version: "0.16.1" - when: kpm_packages|default([])| length > 0 - -- name: manage kubernetes applications - kpm: - namespace: "{{item.namespace | default(kpm_namespace | default('default'))}}" - registry: "{{item.registry | default(kpm_registry | default('https://api.kpm.sh'))}}" - state: "{{item.state | default(omit)}}" - version: "{{item.version | default(omit)}}" - variables: "{{item.variables | default(omit)}}" - name: "{{item.name}}" - with_items: "{{kpm_packages|default([])}}" - register: kpmresults - environment: - PATH: "{{ ansible_env.PATH }}:{{ bin_dir }}" diff --git a/roles/kubernetes-apps/meta/main.yml b/roles/kubernetes-apps/meta/main.yml index fca51a3b6..acd6f7495 100644 --- a/roles/kubernetes-apps/meta/main.yml +++ b/roles/kubernetes-apps/meta/main.yml @@ -4,11 +4,6 @@ dependencies: tags: - apps - - role: kubernetes-apps/kpm - tags: - - apps - - kpm - - role: kubernetes-apps/efk when: efk_enabled tags: