Updates to docs and sequence of role invocations.
diff --git a/README.md b/README.md new file mode 100644 index 0000000..15ff38d --- /dev/null +++ b/README.md
@@ -0,0 +1,65 @@ +Role Name +========= + +This role performs updates to sysctl.conf. + +Requirements +------------ + +None + +# ipv6 Tag + +Please note that IPV6 is disabled in this role. If you need to by-pass this functionality because IPV6 is already being +disabled on a system then you can accomplish this by invoking the playbook with the --skip-tags flag like this: + + ansible-playbook install-edge.yml --skip-tags=ipv6 + +Additional information regarding how Ansible uses tags can be obtained [here](http://docs.ansible.com/ansible/latest/user_guide/playbooks_tags.html). + +Role Variables +-------------- + +The collection `sysctl_ipv6` are the attributes that should be updated in order to disable IPV6 on a node. IPV6 must be +disabled on all nodes that are part of an Apigee platform instance. + + sysctl_ipv6: + - { name: 'net.ipv6.conf.all.disable_ipv6', value: '1' } + - { name: 'net.ipv6.conf.default.disable_ipv6', value: '1' } + +The collection `sysctl_minimum` are the attributes that should be updated on all nodes that are part of an Apigee platform +instance: + + sysctl_minimum: + - { name: 'vm.swappiness', value: "{{ vm_swappiness }}" } + - { name: 'net.ipv6.conf.all.disable_ipv6', value: '1' } + - { name: 'net.ipv6.conf.default.disable_ipv6', value: '1' } + - { name: 'net.ipv4.tcp_fin_timeout', value: "{{ apigee_net_ipv4_tcp_fin_timeout }}" } + - { name: 'vm.max_map_count', value: '{{ apigee_max_map_count }}' } + + +Dependencies +------------ + +None + +Example Playbook +---------------- + +Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too: + + - hosts: servers + roles: + - { role: apigee-opdk-setup-os-sysctl } + +License +------- + +Apache 2.0 + +Author Information +------------------ + +Carlos Frias + +
diff --git a/defaults/main.yml b/defaults/main.yml new file mode 100644 index 0000000..7319784 --- /dev/null +++ b/defaults/main.yml
@@ -0,0 +1,15 @@ +--- +# defaults file for apigee-opdk-setup-os-sysctl +# OS Config for IPV6 +sysctl_ipv6: +- { name: 'net.ipv6.conf.all.disable_ipv6', value: '1' } +- { name: 'net.ipv6.conf.default.disable_ipv6', value: '1' } + +sysctl_minimum: +- { name: 'vm.swappiness', value: "{{ vm_swappiness }}" } +- { name: 'net.ipv6.conf.all.disable_ipv6', value: '1' } +- { name: 'net.ipv6.conf.default.disable_ipv6', value: '1' } +- { name: 'net.ipv4.tcp_fin_timeout', value: "{{ apigee_net_ipv4_tcp_fin_timeout }}" } +- { name: 'vm.max_map_count', value: '{{ apigee_max_map_count }}' } + +
diff --git a/handlers/main.yml b/handlers/main.yml new file mode 100644 index 0000000..b710778 --- /dev/null +++ b/handlers/main.yml
@@ -0,0 +1,2 @@ +--- +# handlers file for apigee-opdk-setup-os-sysctl \ No newline at end of file
diff --git a/meta/main.yml b/meta/main.yml new file mode 100644 index 0000000..7223799 --- /dev/null +++ b/meta/main.yml
@@ -0,0 +1,57 @@ +galaxy_info: + author: your name + description: your description + company: your company (optional) + + # If the issue tracker for your role is not on github, uncomment the + # next line and provide a value + # issue_tracker_url: http://example.com/issue/tracker + + # Some suggested licenses: + # - BSD (default) + # - MIT + # - GPLv2 + # - GPLv3 + # - Apache + # - CC-BY + license: license (GPLv2, CC-BY, etc) + + min_ansible_version: 1.2 + + # If this a Container Enabled role, provide the minimum Ansible Container version. + # min_ansible_container_version: + + # Optionally specify the branch Galaxy will use when accessing the GitHub + # repo for this role. During role install, if no tags are available, + # Galaxy will use this branch. During import Galaxy will access files on + # this branch. If Travis integration is configured, only notifications for this + # branch will be accepted. Otherwise, in all cases, the repo's default branch + # (usually master) will be used. + #github_branch: + + # + # platforms is a list of platforms, and each platform has a name and a list of versions. + # + # platforms: + # - name: Fedora + # versions: + # - all + # - 25 + # - name: SomePlatform + # versions: + # - all + # - 1.0 + # - 7 + # - 99.99 + + galaxy_tags: [] + # List tags for your role here, one per line. A tag is a keyword that describes + # and categorizes the role. Users find roles by searching for tags. Be sure to + # remove the '[]' above, if you add tags to this list. + # + # NOTE: A tag is limited to a single word comprised of alphanumeric characters. + # Maximum 20 tags per role. + +dependencies: [] + # List your role dependencies here, one per line. Be sure to remove the '[]' above, + # if you add dependencies to this list. \ No newline at end of file
diff --git a/tasks/main.yml b/tasks/main.yml new file mode 100644 index 0000000..4cd3eca --- /dev/null +++ b/tasks/main.yml
@@ -0,0 +1,23 @@ +--- +# tasks file for apigee-opdk-setup-os-sysctl + +- name: Update sysctl attributes for ipv6 + tags: ['ipv6'] + become: yes + sysctl: + name: "{{ item.name }}" + value: "{{ item.value }}" + state: present + sysctl_set: yes + with_items: "{{ sysctl_ipv6 }}" + + +- name: Update sysctl attributes + become: yes + sysctl: + name: "{{ item.name }}" + value: "{{ item.value }}" + state: present + sysctl_set: yes + with_items: "{{ sysctl_minimum }}" +
diff --git a/tests/inventory b/tests/inventory new file mode 100644 index 0000000..878877b --- /dev/null +++ b/tests/inventory
@@ -0,0 +1,2 @@ +localhost +
diff --git a/tests/test.yml b/tests/test.yml new file mode 100644 index 0000000..d163d62 --- /dev/null +++ b/tests/test.yml
@@ -0,0 +1,5 @@ +--- +- hosts: localhost + remote_user: root + roles: + - apigee-opdk-setup-os-sysctl \ No newline at end of file
diff --git a/vars/main.yml b/vars/main.yml new file mode 100644 index 0000000..beb67b2 --- /dev/null +++ b/vars/main.yml
@@ -0,0 +1,2 @@ +--- +# vars file for apigee-opdk-setup-os-sysctl \ No newline at end of file