summaryrefslogtreecommitdiffstats
path: root/roles/openstack-stack
diff options
context:
space:
mode:
Diffstat (limited to 'roles/openstack-stack')
-rw-r--r--roles/openstack-stack/README.md9
-rw-r--r--roles/openstack-stack/defaults/main.yml12
-rw-r--r--roles/openstack-stack/tasks/main.yml41
-rw-r--r--roles/openstack-stack/templates/heat_stack.yaml.j2753
-rw-r--r--roles/openstack-stack/templates/heat_stack_server.yaml.j2170
-rw-r--r--roles/openstack-stack/templates/user_data.j213
l---------roles/openstack-stack/test/roles1
-rw-r--r--roles/openstack-stack/test/stack-create-test.yml16
8 files changed, 0 insertions, 1015 deletions
diff --git a/roles/openstack-stack/README.md b/roles/openstack-stack/README.md
deleted file mode 100644
index 509c9de6c..000000000
--- a/roles/openstack-stack/README.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Role openstack-stack
-
-Role for spinning up instances using OpenStack Heat.
-
-## To Test
-
-```
-ansible-playbook casl-ansible/roles/openstack-stack/test/stack-create-test.yml
-```
diff --git a/roles/openstack-stack/defaults/main.yml b/roles/openstack-stack/defaults/main.yml
deleted file mode 100644
index 2a4ef3a45..000000000
--- a/roles/openstack-stack/defaults/main.yml
+++ /dev/null
@@ -1,12 +0,0 @@
----
-dns_volume_size: 1
-ssh_ingress_cidr: 0.0.0.0/0
-node_ingress_cidr: 0.0.0.0/0
-master_ingress_cidr: 0.0.0.0/0
-lb_ingress_cidr: 0.0.0.0/0
-num_etcd: 0
-num_masters: 1
-num_nodes: 1
-num_dns: 1
-num_infra: 1
-etcd_volume_size: 2
diff --git a/roles/openstack-stack/tasks/main.yml b/roles/openstack-stack/tasks/main.yml
deleted file mode 100644
index 71c7bbe0d..000000000
--- a/roles/openstack-stack/tasks/main.yml
+++ /dev/null
@@ -1,41 +0,0 @@
----
-- name: create HOT stack template prefix
- register: stack_template_pre
- tempfile:
- state: directory
- prefix: casl-ansible
-
-- name: set template paths
- set_fact:
- stack_template_path: "{{ stack_template_pre.path }}/stack.yaml"
- server_template_path: "{{ stack_template_pre.path }}/server.yaml"
- user_data_template_path: "{{ stack_template_pre.path }}/user-data"
-
-- name: generate HOT stack template from jinja2 template
- template:
- src: heat_stack.yaml.j2
- dest: "{{ stack_template_path }}"
-
-- name: generate HOT server template from jinja2 template
- template:
- src: heat_stack_server.yaml.j2
- dest: "{{ server_template_path }}"
-
-- name: generate user_data from jinja2 template
- template:
- src: user_data.j2
- dest: "{{ user_data_template_path }}"
-
-- name: create stack
- ignore_errors: False
- register: stack_create
- os_stack:
- name: "{{ stack_name }}"
- state: present
- template: "{{ stack_template_path }}"
- wait: yes
-
-- name: cleanup temp files
- file:
- path: "{{ stack_template_pre.path }}"
- state: absent
diff --git a/roles/openstack-stack/templates/heat_stack.yaml.j2 b/roles/openstack-stack/templates/heat_stack.yaml.j2
deleted file mode 100644
index c750865a5..000000000
--- a/roles/openstack-stack/templates/heat_stack.yaml.j2
+++ /dev/null
@@ -1,753 +0,0 @@
-heat_template_version: 2016-10-14
-
-description: OpenShift cluster
-
-parameters:
-
-outputs:
-
- etcd_names:
- description: Name of the etcds
- value: { get_attr: [ etcd, name ] }
-
- etcd_ips:
- description: IPs of the etcds
- value: { get_attr: [ etcd, private_ip ] }
-
- etcd_floating_ips:
- description: Floating IPs of the etcds
- value: { get_attr: [ etcd, floating_ip ] }
-
- master_names:
- description: Name of the masters
- value: { get_attr: [ masters, name ] }
-
- master_ips:
- description: IPs of the masters
- value: { get_attr: [ masters, private_ip ] }
-
- master_floating_ips:
- description: Floating IPs of the masters
- value: { get_attr: [ masters, floating_ip ] }
-
- node_names:
- description: Name of the nodes
- value: { get_attr: [ compute_nodes, name ] }
-
- node_ips:
- description: IPs of the nodes
- value: { get_attr: [ compute_nodes, private_ip ] }
-
- node_floating_ips:
- description: Floating IPs of the nodes
- value: { get_attr: [ compute_nodes, floating_ip ] }
-
- infra_names:
- description: Name of the nodes
- value: { get_attr: [ infra_nodes, name ] }
-
- infra_ips:
- description: IPs of the nodes
- value: { get_attr: [ infra_nodes, private_ip ] }
-
- infra_floating_ips:
- description: Floating IPs of the nodes
- value: { get_attr: [ infra_nodes, floating_ip ] }
-
- dns_name:
- description: Name of the DNS
- value:
- get_attr:
- - dns
- - name
-
- dns_floating_ip:
- description: Floating IP of the DNS
- value:
- get_attr:
- - dns
- - addresses
- - str_replace:
- template: openshift-ansible-cluster_id-net
- params:
- cluster_id: {{ stack_name }}
- - 1
- - addr
-
-resources:
-
- net:
- type: OS::Neutron::Net
- properties:
- name:
- str_replace:
- template: openshift-ansible-cluster_id-net
- params:
- cluster_id: {{ stack_name }}
-
- subnet:
- type: OS::Neutron::Subnet
- properties:
- name:
- str_replace:
- template: openshift-ansible-cluster_id-subnet
- params:
- cluster_id: {{ stack_name }}
- network: { get_resource: net }
- cidr:
- str_replace:
- template: subnet_24_prefix.0/24
- params:
- subnet_24_prefix: {{ subnet_prefix }}
- allocation_pools:
- - start:
- str_replace:
- template: subnet_24_prefix.3
- params:
- subnet_24_prefix: {{ subnet_prefix }}
- end:
- str_replace:
- template: subnet_24_prefix.254
- params:
- subnet_24_prefix: {{ subnet_prefix }}
- dns_nameservers:
- {% for nameserver in dns_nameservers %}
- - {{ nameserver }}
- {% endfor %}
-
- router:
- type: OS::Neutron::Router
- properties:
- name:
- str_replace:
- template: openshift-ansible-cluster_id-router
- params:
- cluster_id: {{ stack_name }}
- external_gateway_info:
- network: {{ external_network }}
-
- interface:
- type: OS::Neutron::RouterInterface
- properties:
- router_id: { get_resource: router }
- subnet_id: { get_resource: subnet }
-
-# keypair:
-# type: OS::Nova::KeyPair
-# properties:
-# name:
-# str_replace:
-# template: openshift-ansible-cluster_id-keypair
-# params:
-# cluster_id: {{ stack_name }}
-# public_key: {{ ssh_public_key }}
-
-{% if openstack_flat_secgrp|bool %}
- flat-secgrp:
- type: OS::Neutron::SecurityGroup
- properties:
- name:
- str_replace:
- template: openshift-ansible-cluster_id-flat-secgrp
- params:
- cluster_id: {{ stack_name }}
- description:
- str_replace:
- template: Security group for cluster_id OpenShift cluster
- params:
- cluster_id: {{ stack_name }}
- rules:
- - direction: ingress
- protocol: tcp
- port_range_min: 22
- port_range_max: 22
- remote_ip_prefix: {{ ssh_ingress_cidr }}
- - direction: ingress
- protocol: tcp
- port_range_min: 4001
- port_range_max: 4001
- - direction: ingress
- protocol: tcp
- port_range_min: 8443
- port_range_max: 8444
- - direction: ingress
- protocol: tcp
- port_range_min: 53
- port_range_max: 53
- - direction: ingress
- protocol: udp
- port_range_min: 53
- port_range_max: 53
- - direction: ingress
- protocol: tcp
- port_range_min: 8053
- port_range_max: 8053
- - direction: ingress
- protocol: udp
- port_range_min: 8053
- port_range_max: 8053
- - direction: ingress
- protocol: tcp
- port_range_min: 24224
- port_range_max: 24224
- - direction: ingress
- protocol: udp
- port_range_min: 24224
- port_range_max: 24224
- - direction: ingress
- protocol: tcp
- port_range_min: 2224
- port_range_max: 2224
- - direction: ingress
- protocol: udp
- port_range_min: 5404
- port_range_max: 5405
- - direction: ingress
- protocol: tcp
- port_range_min: 9090
- port_range_max: 9090
- - direction: ingress
- protocol: tcp
- port_range_min: 2379
- port_range_max: 2380
- remote_mode: remote_group_id
- - direction: ingress
- protocol: tcp
- port_range_min: 10250
- port_range_max: 10250
- remote_mode: remote_group_id
- - direction: ingress
- protocol: udp
- port_range_min: 10250
- port_range_max: 10250
- remote_mode: remote_group_id
- - direction: ingress
- protocol: tcp
- port_range_min: 10255
- port_range_max: 10255
- remote_mode: remote_group_id
- - direction: ingress
- protocol: udp
- port_range_min: 10255
- port_range_max: 10255
- remote_mode: remote_group_id
- - direction: ingress
- protocol: udp
- port_range_min: 4789
- port_range_max: 4789
- remote_mode: remote_group_id
- - direction: ingress
- protocol: tcp
- port_range_min: 30000
- port_range_max: 32767
- remote_ip_prefix: {{ node_ingress_cidr }}
- - direction: ingress
- protocol: tcp
- port_range_min: 30000
- port_range_max: 32767
- remote_ip_prefix: "{{ openstack_subnet_prefix }}.0/24"
- - direction: ingress
- protocol: tcp
- port_range_min: 80
- port_range_max: 80
- - direction: ingress
- protocol: tcp
- port_range_min: 443
- port_range_max: 443
-{% else %}
- master-secgrp:
- type: OS::Neutron::SecurityGroup
- properties:
- name:
- str_replace:
- template: openshift-ansible-cluster_id-master-secgrp
- params:
- cluster_id: {{ stack_name }}
- description:
- str_replace:
- template: Security group for cluster_id OpenShift cluster master
- params:
- cluster_id: {{ stack_name }}
- rules:
- - direction: ingress
- protocol: tcp
- port_range_min: 22
- port_range_max: 22
- remote_ip_prefix: {{ ssh_ingress_cidr }}
- - direction: ingress
- protocol: tcp
- port_range_min: 4001
- port_range_max: 4001
- - direction: ingress
- protocol: tcp
- port_range_min: 8443
- port_range_max: 8444
- - direction: ingress
- protocol: tcp
- port_range_min: 53
- port_range_max: 53
- - direction: ingress
- protocol: udp
- port_range_min: 53
- port_range_max: 53
- - direction: ingress
- protocol: tcp
- port_range_min: 8053
- port_range_max: 8053
- - direction: ingress
- protocol: udp
- port_range_min: 8053
- port_range_max: 8053
- - direction: ingress
- protocol: tcp
- port_range_min: 24224
- port_range_max: 24224
- - direction: ingress
- protocol: udp
- port_range_min: 24224
- port_range_max: 24224
- - direction: ingress
- protocol: tcp
- port_range_min: 2224
- port_range_max: 2224
- - direction: ingress
- protocol: udp
- port_range_min: 5404
- port_range_max: 5405
- - direction: ingress
- protocol: tcp
- port_range_min: 9090
- port_range_max: 9090
-
- etcd-secgrp:
- type: OS::Neutron::SecurityGroup
- properties:
- name:
- str_replace:
- template: openshift-ansible-cluster_id-etcd-secgrp
- params:
- cluster_id: {{ stack_name }}
- description:
- str_replace:
- template: Security group for cluster_id etcd cluster
- params:
- cluster_id: {{ stack_name }}
- rules:
- - direction: ingress
- protocol: tcp
- port_range_min: 22
- port_range_max: 22
- remote_ip_prefix: {{ ssh_ingress_cidr }}
- - direction: ingress
- protocol: tcp
- port_range_min: 2379
- port_range_max: 2379
- remote_mode: remote_group_id
- remote_group_id: { get_resource: master-secgrp }
- - direction: ingress
- protocol: tcp
- port_range_min: 2380
- port_range_max: 2380
- remote_mode: remote_group_id
-
- node-secgrp:
- type: OS::Neutron::SecurityGroup
- properties:
- name:
- str_replace:
- template: openshift-ansible-cluster_id-node-secgrp
- params:
- cluster_id: {{ stack_name }}
- description:
- str_replace:
- template: Security group for cluster_id OpenShift cluster nodes
- params:
- cluster_id: {{ stack_name }}
- rules:
- - direction: ingress
- protocol: tcp
- port_range_min: 22
- port_range_max: 22
- remote_ip_prefix: {{ ssh_ingress_cidr }}
- - direction: ingress
- protocol: tcp
- port_range_min: 10250
- port_range_max: 10250
- remote_mode: remote_group_id
- - direction: ingress
- protocol: tcp
- port_range_min: 10255
- port_range_max: 10255
- remote_mode: remote_group_id
- - direction: ingress
- protocol: udp
- port_range_min: 10255
- port_range_max: 10255
- remote_mode: remote_group_id
- - direction: ingress
- protocol: udp
- port_range_min: 4789
- port_range_max: 4789
- remote_mode: remote_group_id
- - direction: ingress
- protocol: tcp
- port_range_min: 30000
- port_range_max: 32767
- remote_ip_prefix: {{ node_ingress_cidr }}
- - direction: ingress
- protocol: tcp
- port_range_min: 30000
- port_range_max: 32767
- remote_ip_prefix: "{{ openstack_subnet_prefix }}.0/24"
-
- infra-secgrp:
- type: OS::Neutron::SecurityGroup
- properties:
- name:
- str_replace:
- template: openshift-ansible-cluster_id-infra-secgrp
- params:
- cluster_id: {{ stack_name }}
- description:
- str_replace:
- template: Security group for cluster_id OpenShift infrastructure cluster nodes
- params:
- cluster_id: {{ stack_name }}
- rules:
- - direction: ingress
- protocol: tcp
- port_range_min: 80
- port_range_max: 80
- - direction: ingress
- protocol: tcp
- port_range_min: 443
- port_range_max: 443
-{% endif %}
-
- dns-secgrp:
- type: OS::Neutron::SecurityGroup
- properties:
- name:
- str_replace:
- template: openshift-ansible-cluster_id-dns-secgrp
- params:
- cluster_id: {{ stack_name }}
- description:
- str_replace:
- template: Security group for cluster_id cluster DNS
- params:
- cluster_id: {{ stack_name }}
- rules:
- - direction: ingress
- protocol: tcp
- port_range_min: 22
- port_range_max: 22
- remote_ip_prefix: {{ ssh_ingress_cidr }}
- - direction: ingress
- protocol: udp
- port_range_min: 53
- port_range_max: 53
- remote_ip_prefix: {{ node_ingress_cidr }}
- - direction: ingress
- protocol: udp
- port_range_min: 53
- port_range_max: 53
- remote_ip_prefix: "{{ openstack_subnet_prefix }}.0/24"
- - direction: ingress
- protocol: tcp
- port_range_min: 53
- port_range_max: 53
- remote_ip_prefix: {{ node_ingress_cidr }}
- - direction: ingress
- protocol: tcp
- port_range_min: 53
- port_range_max: 53
- remote_ip_prefix: "{{ openstack_subnet_prefix }}.0/24"
-{% if num_masters is greaterthan 1 %}
- lb-secgrp:
- type: OS::Neutron::SecurityGroup
- properties:
- name: openshift-ansible-{{ stack_name }}-lb-secgrp
- description: Security group for {{ stack_name }} cluster Load Balancer
- rules:
- - direction: ingress
- protocol: tcp
- port_range_min: 22
- port_range_max: 22
- remote_ip_prefix: {{ ssh_ingress_cidr }}
- - direction: ingress
- protocol: tcp
- port_range_min: {{ openshift_master_api_port | default(8443) }}
- port_range_max: {{ openshift_master_api_port | default(8443) }}
- remote_ip_prefix: {{ lb_ingress_cidr }}
- {% if openshift_master_console_port is defined and openshift_master_console_port is not equalto openshift_master_api_port %}
- - direction: ingress
- protocol: tcp
- port_range_min: {{ openshift_master_console_port | default(8443) }}
- port_range_max: {{ openshift_master_console_port | default(8443) }}
- remote_ip_prefix: {{ lb_ingress_cidr }}
- {% endif %}
-{% endif %}
-
- etcd:
- type: OS::Heat::ResourceGroup
- properties:
- count: {{ num_etcd }}
- resource_def:
- type: server.yaml
- properties:
- name:
- str_replace:
- template: k8s_type-%index%.cluster_id
- params:
- cluster_id: {{ stack_name }}
- k8s_type: etcd
- cluster_env: {{ public_dns_domain }}
- cluster_id: {{ stack_name }}
- group:
- str_replace:
- template: k8s_type.cluster_id
- params:
- k8s_type: etcds
- cluster_id: {{ stack_name }}
- type: etcd
- image: {{ openstack_image }}
- flavor: {{ etcd_flavor }}
- key_name: {{ ssh_public_key }}
- net: { get_resource: net }
- subnet: { get_resource: subnet }
- secgrp:
- - { get_resource: {% if openstack_flat_secgrp|bool %}flat-secgrp{% else %}etcd-secgrp{% endif %} }
- floating_network: {{ external_network }}
- net_name:
- str_replace:
- template: openshift-ansible-cluster_id-net
- params:
- cluster_id: {{ stack_name }}
- volume_size: {{ etcd_volume_size }}
- depends_on:
- - interface
-
-{% if num_masters is greaterthan 1 %}
- loadbalancer:
- type: OS::Heat::ResourceGroup
- properties:
- count: 1
- resource_def:
- type: server.yaml
- properties:
- name:
- str_replace:
- template: k8s_type-%index%.cluster_id
- params:
- cluster_id: {{ stack_name }}
- k8s_type: lb
- cluster_env: {{ public_dns_domain }}
- cluster_id: {{ stack_name }}
- group:
- str_replace:
- template: k8s_type.cluster_id
- params:
- k8s_type: lb
- cluster_id: {{ stack_name }}
- type: lb
- image: {{ openstack_image }}
- flavor: {{ lb_flavor }}
- key_name: {{ ssh_public_key }}
- net: { get_resource: net }
- subnet: { get_resource: subnet }
- secgrp:
- - { get_resource: lb-secgrp }
- floating_network: {{ external_network }}
- net_name:
- str_replace:
- template: openshift-ansible-cluster_id-net
- params:
- cluster_id: {{ stack_name }}
- volume_size: 5
- depends_on:
- - interface
-{% endif %}
-
- masters:
- type: OS::Heat::ResourceGroup
- properties:
- count: {{ num_masters }}
- resource_def:
- type: server.yaml
- properties:
- name:
- str_replace:
- template: k8s_type-%index%.cluster_id
- params:
- cluster_id: {{ stack_name }}
- k8s_type: master
- cluster_env: {{ public_dns_domain }}
- cluster_id: {{ stack_name }}
- group:
- str_replace:
- template: k8s_type.cluster_id
- params:
- k8s_type: masters
- cluster_id: {{ stack_name }}
- type: master
- image: {{ openstack_image }}
- flavor: {{ master_flavor }}
- key_name: {{ ssh_public_key }}
- net: { get_resource: net }
- subnet: { get_resource: subnet }
- secgrp:
-{% if openstack_flat_secgrp|bool %}
- - { get_resource: flat-secgrp }
-{% else %}
- - { get_resource: master-secgrp }
- - { get_resource: node-secgrp }
-{% if num_etcd is equalto 0 %}
- - { get_resource: etcd-secgrp }
-{% endif %}
-{% endif %}
- floating_network: {{ external_network }}
- net_name:
- str_replace:
- template: openshift-ansible-cluster_id-net
- params:
- cluster_id: {{ stack_name }}
- volume_size: {{ master_volume_size }}
- depends_on:
- - interface
-
- compute_nodes:
- type: OS::Heat::ResourceGroup
- properties:
- count: {{ num_nodes }}
- resource_def:
- type: server.yaml
- properties:
- name:
- str_replace:
- template: subtype-k8s_type-%index%.cluster_id
- params:
- cluster_id: {{ stack_name }}
- k8s_type: node
- subtype: app
- cluster_env: {{ public_dns_domain }}
- cluster_id: {{ stack_name }}
- group:
- str_replace:
- template: k8s_type.cluster_id
- params:
- k8s_type: nodes
- cluster_id: {{ stack_name }}
- type: node
- subtype: app
- node_labels:
- region: primary
- image: {{ openstack_image }}
- flavor: {{ node_flavor }}
- key_name: {{ ssh_public_key }}
- net: { get_resource: net }
- subnet: { get_resource: subnet }
- secgrp:
- - { get_resource: {% if openstack_flat_secgrp|bool %}flat-secgrp{% else %}node-secgrp{% endif %} }
- floating_network: {{ external_network }}
- net_name:
- str_replace:
- template: openshift-ansible-cluster_id-net
- params:
- cluster_id: {{ stack_name }}
- volume_size: {{ app_volume_size }}
- depends_on:
- - interface
-
- infra_nodes:
- type: OS::Heat::ResourceGroup
- properties:
- count: {{ num_infra }}
- resource_def:
- type: server.yaml
- properties:
- name:
- str_replace:
- template: subtypek8s_type-%index%.cluster_id
- params:
- cluster_id: {{ stack_name }}
- k8s_type: node
- subtype: infra
- cluster_env: {{ public_dns_domain }}
- cluster_id: {{ stack_name }}
- group:
- str_replace:
- template: k8s_type.cluster_id
- params:
- k8s_type: infra
- cluster_id: {{ stack_name }}
- type: node
- subtype: infra
- node_labels:
- region: infra
- image: {{ openstack_image }}
- flavor: {{ infra_flavor }}
- key_name: {{ ssh_public_key }}
- net: { get_resource: net }
- subnet: { get_resource: subnet }
- secgrp:
-{% if openstack_flat_secgrp|bool %}
- - { get_resource: flat-secgrp }
-{% else %}
- - { get_resource: node-secgrp }
- - { get_resource: infra-secgrp }
-{% endif %}
- floating_network: {{ external_network }}
- net_name:
- str_replace:
- template: openshift-ansible-cluster_id-net
- params:
- cluster_id: {{ stack_name }}
- volume_size: {{ infra_volume_size }}
- depends_on:
- - interface
-
- dns:
- type: OS::Heat::ResourceGroup
- properties:
- count: {{ num_dns }}
- resource_def:
- type: server.yaml
- properties:
- name:
- str_replace:
- template: k8s_type-%index%.cluster_id
- params:
- cluster_id: {{ stack_name }}
- k8s_type: dns
- cluster_env: {{ public_dns_domain }}
- cluster_id: {{ stack_name }}
- group:
- str_replace:
- template: k8s_type.cluster_id
- params:
- k8s_type: dns
- cluster_id: {{ stack_name }}
- type: dns
- image: {{ openstack_image }}
- flavor: {{ dns_flavor }}
- key_name: {{ ssh_public_key }}
- net: { get_resource: net }
- subnet: { get_resource: subnet }
- secgrp:
-{% if openstack_flat_secgrp|bool %}
- - { get_resource: flat-secgrp }
-{% else %}
- - { get_resource: node-secgrp }
-{% endif %}
- - { get_resource: dns-secgrp }
- floating_network: {{ external_network }}
- net_name:
- str_replace:
- template: openshift-ansible-cluster_id-net
- params:
- cluster_id: {{ stack_name }}
- volume_size: {{ dns_volume_size }}
- depends_on:
- - interface
-
diff --git a/roles/openstack-stack/templates/heat_stack_server.yaml.j2 b/roles/openstack-stack/templates/heat_stack_server.yaml.j2
deleted file mode 100644
index 5851d3b9b..000000000
--- a/roles/openstack-stack/templates/heat_stack_server.yaml.j2
+++ /dev/null
@@ -1,170 +0,0 @@
-heat_template_version: 2016-10-14
-
-description: OpenShift cluster server
-
-parameters:
-
- name:
- type: string
- label: Name
- description: Name
-
- group:
- type: string
- label: Host Group
- description: The Primary Ansible Host Group
- default: host
-
- cluster_env:
- type: string
- label: Cluster environment
- description: Environment of the cluster
-
- cluster_id:
- type: string
- label: Cluster ID
- description: Identifier of the cluster
-
- type:
- type: string
- label: Type
- description: Type master or node
-
- subtype:
- type: string
- label: Sub-type
- description: Sub-type compute or infra for nodes, default otherwise
- default: default
-
- key_name:
- type: string
- label: Key name
- description: Key name of keypair
-
- image:
- type: string
- label: Image
- description: Name of the image
-
- flavor:
- type: string
- label: Flavor
- description: Name of the flavor
-
- net:
- type: string
- label: Net ID
- description: Net resource
-
- net_name:
- type: string
- label: Net name
- description: Net name
-
- subnet:
- type: string
- label: Subnet ID
- description: Subnet resource
-
- secgrp:
- type: comma_delimited_list
- label: Security groups
- description: Security group resources
-
- floating_network:
- type: string
- label: Floating network
- description: Network to allocate floating IP from
-
- availability_zone:
- type: string
- description: The Availability Zone to launch the instance.
- default: nova
-
- volume_size:
- type: number
- description: Size of the volume to be created.
- default: 1
- constraints:
- - range: { min: 1, max: 1024 }
- description: must be between 1 and 1024 Gb.
-
- node_labels:
- type: json
- description: OpenShift Node Labels
- default: {"region": "default" }
-
-outputs:
-
- name:
- description: Name of the server
- value: { get_attr: [ server, name ] }
-
- private_ip:
- description: Private IP of the server
- value:
- get_attr:
- - server
- - addresses
- - { get_param: net_name }
- - 0
- - addr
-
- floating_ip:
- description: Floating IP of the server
- value:
- get_attr:
- - server
- - addresses
- - { get_param: net_name }
- - 1
- - addr
-
-resources:
-
- server:
- type: OS::Nova::Server
- properties:
- name: { get_param: name }
- key_name: { get_param: key_name }
- image: { get_param: image }
- flavor: { get_param: flavor }
- networks:
- - port: { get_resource: port }
- user_data:
- get_file: user-data
- user_data_format: RAW
- metadata:
- group: { get_param: group }
- environment: { get_param: cluster_env }
- clusterid: { get_param: cluster_id }
- host-type: { get_param: type }
- sub-host-type: { get_param: subtype }
- node_labels: { get_param: node_labels }
-
- port:
- type: OS::Neutron::Port
- properties:
- network: { get_param: net }
- fixed_ips:
- - subnet: { get_param: subnet }
- security_groups: { get_param: secgrp }
-
- floating-ip:
- type: OS::Neutron::FloatingIP
- properties:
- floating_network: { get_param: floating_network }
- port_id: { get_resource: port }
-
- cinder_volume:
- type: OS::Cinder::Volume
- properties:
- size: { get_param: volume_size }
- availability_zone: { get_param: availability_zone }
-
- volume_attachment:
- type: OS::Cinder::VolumeAttachment
- properties:
- volume_id: { get_resource: cinder_volume }
- instance_uuid: { get_resource: server }
- mountpoint: /dev/sdb
diff --git a/roles/openstack-stack/templates/user_data.j2 b/roles/openstack-stack/templates/user_data.j2
deleted file mode 100644
index eb65f7cec..000000000
--- a/roles/openstack-stack/templates/user_data.j2
+++ /dev/null
@@ -1,13 +0,0 @@
-#cloud-config
-disable_root: true
-
-system_info:
- default_user:
- name: openshift
- sudo: ["ALL=(ALL) NOPASSWD: ALL"]
-
-write_files:
- - path: /etc/sudoers.d/00-openshift-no-requiretty
- permissions: 440
- content: |
- Defaults:openshift !requiretty
diff --git a/roles/openstack-stack/test/roles b/roles/openstack-stack/test/roles
deleted file mode 120000
index e2b799b9d..000000000
--- a/roles/openstack-stack/test/roles
+++ /dev/null
@@ -1 +0,0 @@
-../../../roles/ \ No newline at end of file
diff --git a/roles/openstack-stack/test/stack-create-test.yml b/roles/openstack-stack/test/stack-create-test.yml
deleted file mode 100644
index 0fbf66f34..000000000
--- a/roles/openstack-stack/test/stack-create-test.yml
+++ /dev/null
@@ -1,16 +0,0 @@
----
-- hosts: localhost
- roles:
- - role: openstack-stack
- stack_name: test-stack
- dns_domain: "{{ public_dns_domain }}"
- dns_nameservers: "{{ public_dns_nameservers }}"
- subnet_prefix: "{{ openstack_subnet_prefix }}"
- ssh_public_key: "{{ openstack_ssh_public_key }}"
- openstack_image: "{{ openstack_default_image_name }}"
- etcd_flavor: "{{ openstack_default_flavor }}"
- master_flavor: "{{ openstack_default_flavor }}"
- node_flavor: "{{ openstack_default_flavor }}"
- infra_flavor: "{{ openstack_default_flavor }}"
- dns_flavor: "{{ openstack_default_flavor }}"
- external_network: "{{ openstack_external_network_name }}"