207 Commits

Author SHA1 Message Date
Zuul
845bc3e845 Merge "Remove MongoDB" 2019-01-07 18:39:49 +00:00
Zuul
0e68a0e30f Merge "L3 routed networks - subnet fixed_ips (3/3)" 2019-01-04 20:38:01 +00:00
Emilien Macchi
be07f991b6 Remove MongoDB
MongoDB support was stopped in Pike, it is not used anywhere now.
Therefore, in Stein are removing it to clean things up.

Change-Id: I4ec8f35b1dd71c25cfb41cc54105ac743ef67745
2019-01-04 15:17:00 +00:00
Harald Jensås
2f2d8183e6 L3 routed networks - subnet fixed_ips (3/3)
When using neutron routed networks we need to specify
either the subnet or a ip address in the fixed-ips-request
when creating neutron ports.

a) For the Vip's:

Adds VipSubnetMap and VipSubnetMapDefaults parameters in
service_net_map.yaml. The two maps are merged, so that the
operator can override the subnet where VIP port should be
hosted. For example:

parameter_defaults:
  VipSubnetMap:
    ctlplane: ctlplane-leaf1
    InternalApi: internal_api_leaf1
    Storage: storage_leaf1
    redis: internal_api_leaf1

b) For overcloud node ports:

Enrich 'networks' in roles defenition to include both
network and subnet data. Changes the list to a map
instead of a list of strings. New schema:

- name: <role_name>
  networks:
    <network_name>
      subnet: <subnet_name>

For backward compatibility a conditional is used to check
if the data is a map or not. In either case the internal
list of role networks is created as '_role_networks' in
the jinja2 templates.

When the data is a map, and the map contains the 'subnet'
key the subnet specified in roles_data.yaml is used as
the subnet in the fixed-ips-reqest when ports are created.
If subnet is not set (or role.networks is not a map) the
default will be {{network.name_lower}}_subnet.

Also, since the fixed_ips request passed to Vip ports are no
longer [] by default, the conditinal has been updated to
test for 'ip_address' entries in the request.

Partial: blueprint tripleo-routed-networks-templates
Depends-On: I773a38fd903fe287132151a4d178326a46890969
Change-Id: I77edc82723d00bfece6752b5dd2c79137db93443
2019-01-03 19:07:20 +01:00
Zuul
35f01e48c3 Merge "Process the templates even if j2_excludes file is not present" 2019-01-03 05:43:14 +00:00
Zuul
1201d46ee3 Merge "YAML NIC Config 2 script - fix comment indentation" 2018-12-12 05:50:32 +00:00
Alex Schultz
623924972f Update yaml-validate for deployment/ folders
Since we're looking at flattening the services into a deployment/
folder, we need to update the validation script to also handle this
directory structure. Additionally this change updates the service name
validation to ensure that the service name in matches the start of the
filename itself.

Change-Id: Ibb140a38b69a8780adf69362e0f437b3426f360d
Related-Blueprint: service-yaml-flattening
2018-12-06 08:06:10 -07:00
Saravanan KR
435e846779 Process the templates even if j2_excludes file is not present
It is possible to use the process_templates script to generate the
user's jinja templates based on role and network data. But the script
expects the presence of j2_excludes file. Making it as optional, allows
users to generate templates in user's template directory itself, like

  $ /usr/share/openstack-tripleo-heat-templates/tools/process-templates.py \
         -p ~/templates/ \
         -r ~/templates/roles_data.yaml \
         -n ~/templates/network_data.yaml

Closes-Bug: #1806351
Change-Id: I375cd9ff9b40bbdad34d0732ec8abd25fbdde46e
2018-12-03 15:02:39 +05:30
zhulingjie
5edaac5246 Python 3 compatibility: convert raw_input to input
Change-Id: I86699cc6d880c137e80183d7196874ec0f7893e7
Closes-Bug: #1797760
2018-11-12 16:03:47 +00:00
Zuul
90d022a129 Merge "Added all keystone log files to fluentd" 2018-11-09 06:42:08 +00:00
Martin André
306162694a Add network data for use with openshift deployments
Provide a network data file with only the External, InternalApi and the
Storage networks for use with OpenShift deployments.

Take out the IPv6 addresses from the network data until OpenShift can
be deployed in an IPv6 environment.

This also disables the validation for the network_data_openshift.yaml
since it expects network_data files to only add new networks to the
existing pre-defined overcloud networks and we're doing the opposite
here -- only keeping a subset of the networks.

Change-Id: I6d8c08c12ae9002e6386f26c5a8bcf70b8eda4b7
2018-11-05 09:42:10 +01:00
Harald Jensås
f7a359cd0e Merge new params - nic-config templates
Utility script to merge new parameters into existing nic-config
templates. Uses process-templates.py rendered 'single-nic-vlans'
templates as reference and appends any parameters that is not
already present in the existing NIC template.

New NIC template parameters were introduced in:
  https://review.openstack.org/#/c/580236/

When upgrading the existing NIC templates have to have these
new parameters merged.

Change-Id: I474e57878212d2cb7c2b392a5fdf4e449f783a66
2018-10-23 19:59:37 +02:00
Zuul
1bd8888d79 Merge "Rename no-tls environment" 2018-10-20 02:03:33 +00:00
Juan Badia Payno
69626cc3a6 Added all keystone log files to fluentd
Add all the keystone log files to fluentd, so
fluentd is aware of all the keystone log files

Added the new parameters to the exclusion ones

Depends-On: Ifd5fbf6509addf4a564ff83c4551525c9a139ff4
Depends-On: Id1d58637967ffb0e9bd0a83c3cbca699432f5378
Change-Id: I48c957496f7fb36d2128c545d5bcd1499e9e9bf6
2018-10-17 15:29:36 +02:00
Zuul
58f6604f47 Merge "Remove unused tls-cert-inject.yaml template" 2018-10-17 11:56:50 +00:00
Steven Hardy
b278f6c476 Remove unused tls-cert-inject.yaml template
This is no longer handled as the TLS handling tasks were converted
to ansible, and in the context of this series we need to remove it
because it references bootstrap_nodeid

Partial-Bug: #1792613
Change-Id: Ib32177b116f148f007574847320566e32240cf96
2018-10-12 11:12:25 +01:00
Juan Antonio Osorio Robles
3ecbf827ec Rename no-tls environment
It was using a wrong name, which came by accident since it was
introduced to the sample environment generator.

Change-Id: I154af6d0b7ebf5cd339d5d06eaaf9b1ab66814b0
Related-Bug: #1796022
2018-10-12 11:16:35 +03:00
Juan Antonio Osorio Robles
cb3c72f37d Remove references to logging_source
This has been unused for a while, and even deprecation was scheduled
(although the patch never merged [1]). So, in order to stop folks
getting confused with this, it's being removed.

[1] https://review.openstack.org/#/c/543871/

Change-Id: Iada64874432146ef311682f26af5990469790ed2
2018-10-08 13:43:47 +03:00
Harald Jensås
0b58798c8e YAML NIC Config 2 script - fix comment indentation
When translating comments into yaml the last_non_comment_spaces
must be set to the current spaces prior to insering the comment.

Change-Id: Ib5bbb47cfce7d6c0ac0990a3c9384f5143dd1263
2018-10-06 10:17:01 +00:00
Bob Fournier
47f47c1dea In process-templates script write output files to provided dir when using base path
When running the process-templates script with both the -o OUTPUT_DIR and
-p BASE_PATH options the output files were not being written to the output
directory.  This fix splits out the file path from the base path to properly
write the files.

Change-Id: I845e8a2cbd2b12a4a1552b2cfa3ac013466da6bd
Closes-Bug: #1794769
2018-09-28 15:06:44 +02:00
Juan Antonio Osorio Robles
90234f4f2a Remove references to logging_group
This has been unused for a while, and even deprecation was scheduled
(although the patch never merged [1]). So, in order to stop folks
getting confused with this, it's being removed.

[1] https://review.openstack.org/#/c/543871/

Change-Id: Icc6b51044ccc826f5b629eb1abd3342813ed84c0
2018-08-29 13:43:30 +03:00
Zuul
5100f950ef Merge "Fix logic around heat output exclusions handling" 2018-08-20 19:26:42 +00:00
Zuul
5fadfd093f Merge "Add host routes to subnets" 2018-08-14 19:40:21 +00:00
James Slagle
5710f5b35f Fix logic around heat output exclusions handling
The logic in the validation was incorrect in that it would actually
error (return 1) if args.quiet >= 2, even though the file was excluded.

This commit fixes that bug, as well as improves the message around
excluded files, which should not be a warning, only informative.

Change-Id: I2cd8cd84a7ebb952e3c39f99a460177b9be9c2e1
2018-08-13 14:15:07 -04:00
Jiri Stransky
6364f2286c Update and upgrade tasks for services deployed via external deploy tasks
Composable service templates can now define external_update_tasks and
external_upgrade_tasks. They are meant for update/upgrade logic of
services deployed via external_deploy_tasks. The external update
playbook first executes external_update_tasks and then
external_deploy_tasks, the procedure for upgrades works
analogously. All happens within a single playbook, so variables or
fact overrides exported from the update/upgrade tasks will be
available to the deploy tasks during the update/upgrade procedure.

Partial-Bug: #1783949
Change-Id: Ib2474e8f69711cd6610a78884d5032ffd19ad249
2018-08-02 15:04:15 +02:00
Martin Mágr
b76d7623ac QDR for metrics collection purposes
This patch adds composable new service (QDR) for containerized deployments.
Metrics QDR will run on each overcloud node in 'edge' mode. This basically
means that there is a possibility that there will be two QDRs running
on controllers in case that oslo messaging is deployed. This is a reason why
we need separate composable service for this use case.

Depends-On: If9e3658d304c3071f53ecb1c42796d2603875fcd
Depends-On: I68f39b6bda02ba3920f2ab1cf2df0bd54ad7453f
Depends-On: I73f988d05840eca44949f13f248f86d094a57c46
Change-Id: I1353020f874b348afd98e7ed3832033f85a5267f
2018-07-31 21:55:45 +00:00
Harald Jensås
4e44547533 Add host routes to subnets
This change adds a new routes field to the network
definition in network_data.yaml. This field contains
a list of network routes in JSON, e.g.
  [{'destination':'10.0.0.0/16','nexthop':'10.0.0.1'}].

This list is used to set the ``host_routes`` property
of each networks subnet.

Co-Authored-By: Dan Sneddon <dsneddon@redhat.com>
Partial: blueprint tripleo-routed-networks-templates
Depends-On: Ifc5aad7a154c33488a7613c8ee038c92ee6cb1a7
Change-Id: I33b34f1445f4203fbf25edeb093b37c7494c664f
2018-07-30 09:42:19 +02:00
Cédric Jeanneret
d37308d63c Fix python3 support in yaml-validate script.
Python3 drops the "iteritems" method for dict in favor to
"items".

Change-Id: I8d21233e917b5d36be385d59f1a7c9a0588aea2d
Closes-Bug: 1783988
2018-07-27 15:20:32 +02:00
Zuul
87c03bf6b8 Merge "Add a ComputePPC64LE role" 2018-07-23 00:33:07 +00:00
Zuul
8666a73d68 Merge "Remove the OVS-DPDK deprecated parameters" 2018-07-09 23:03:32 +00:00
Zuul
20de1eb34d Merge "yaml-validator - network_data validate show all errors" 2018-07-09 21:50:28 +00:00
Tony Breeds
40282174ea Add a ComputePPC64LE role
Create a new role for compute nodes running on ppc64le.  Ideally we
wouldn't need this but at least the overcloud image needs to differ
based on CPU architecture so having a separate role allows us to vary
other parameters.

As the intent is for the same services to run on moth Compute and
ComputePPC64LE add a validation check to ensure that the services stay
in sync.

Blueprint: multiarch-support
Change-Id: I9912139048fa11df447c0985e7d53fbcfee7e252
2018-07-08 08:49:34 +10:00
Zuul
a8393fa8a4 Merge "Handle roles w/o deprecated_nic_config_name during template cleanup" 2018-07-05 10:54:45 +00:00
Harald Jensås
b9f185c607 yaml-validator - network_data validate show all errors
Instead of exiting on the first error, set the return
value to 1 whenever an error is found and continue
validating the file. By doing this all errors are made
visible with a single run.

Change-Id: I0ecccf3113eeb511b77c447edce0c317f7642f80
2018-07-05 00:08:24 +02:00
Bob Fournier
f997e3da60 Handle blank lines followed by comment in nic conversion script
Currently if a blank line is followed by a comment the 'last_non_comment_spaces'
variable gets reset, which results in the comment line not being indented.
This just ignores blank lines so that 'last_non_comment_spaces' isn't reset
and the comment line is properly indented.

Closes-Bug: 1779191
Change-Id: I286da578c42df24242ba38df12d42c8a8fdd4a4f
2018-06-29 08:02:12 +00:00
Zuul
c7b10fe834 Merge "Fail yaml-validate.py on new deployments with outputs" 2018-06-28 06:16:06 +00:00
Zuul
ca5bc5f50e Merge "Add option to override confirmation in yaml-nic-config-2-script.py" 2018-06-27 10:50:50 +00:00
Saravanan KR
58b6034b24 Remove the OVS-DPDK deprecated parameters
Few of the OVS-DPDK prameteres has been deprecated in the
pike release, which are not required anymore. Removed those
parameters from the templates.

Change-Id: Iabb8002a9eb69321aa2d4aefac012dbe09dc80a6
2018-06-27 14:26:12 +05:30
James Slagle
fdeabe06e7 Handle roles w/o deprecated_nic_config_name during template cleanup
Don't assume the role dict has a deprecated_nic_config_name key during
cleanup of the process templates. This isn't a required field, so we
can't assume it exists, otherwise the script will traceback with a
KeyError.

Change-Id: I50eb4831c2b413e2253cb0c3dc9aba4c719f0f14
2018-06-20 15:27:17 -04:00
baiwenteng
66b8d58ee8 Fix typo
replace "configuation" with "configuration"
replace "assigment" with "assignment"

Change-Id: Icd4735ffbdea14997557f8db0566cb190027101b
2018-06-12 11:51:24 +08:00
James Slagle
82df65cdcc Fail yaml-validate.py on new deployments with outputs
Elevates the warning from yaml-validate.py about Heat deployment outputs
to an error now that config-download is the default. An exclusions list
is added to exclude those existing templates that use outputs, which
will be cleaned up in the Stein release.

Change-Id: I7249df36cb9391d8577432920a9bd33361a58f92
2018-06-04 16:02:38 -04:00
Zuul
161156d750 Merge "NFV: Support for config-download to deploy node with kernel args" 2018-05-29 18:52:58 +00:00
Cédric Jeanneret
3848713182 Correct log location in container environment for Fluentd
Since we moved services in containers, their logs aren't in the old location, but
in /var/log/containers/<service>. This patch fixes the generated Hiera hash used
by Fluentd for its configuration

Regarding Designate config service: some of the yaml doesn't use at all the
`service_config_settings` parameter - they will need to be updated accordingly
once it's supported

Co-Authored-By: Thomas Herve <therve@redhat.com>, Steven Hardy <shardy@redhat.com>
Change-Id: I1bc0930de4053dc1c34b50477e82d9ccdab7ae2e
Closes-Bug: 1769051
Related-Bug: 1674715
2018-05-18 10:18:43 +02:00
Saravanan KR
a3e4a90636 NFV: Support for config-download to deploy node with kernel args
For NFV deployments, specific kernel args should be applied and
the nodes should be restarted before running the NetworkDeployment.
It is supported in the heat deployment via PreNetworkConfig. In the
config-download mechanism, ansible steps need to be improved
to handle the reboot and wait for the node.

Change-Id: I43b383ad0e04b8be6c321f8c5b05e628b2520141
2018-05-15 11:01:06 +05:30
Zuul
a189f37216 Merge "yaml-validate: sets isn't python3" 2018-05-14 23:16:57 +00:00
Marius Cornea
553554ad72 Add option to override confirmation in yaml-nic-config-2-script.py
This change adds the option to override the user input confirmation
to overwrite the nic template file. This is required when the script
is used inside automated jobs.

Closes-bug: 1770296

Change-Id: Ic8275bb3a944e503c73ab06c3d5140ea3563c0a6
2018-05-09 21:52:14 -04:00
Emilien Macchi
af7a4ab5b8 yaml-validate: sets isn't python3
Run builtin "set" instead of python2 Sets module.

Change-Id: I2f3db189b23e5578f2f02a3a7189a7aa8323acb6
2018-05-09 15:42:43 +00:00
Carlos Camacho
44ef2a3ec1 Change template names to rocky
The new master branch should point now to rocky.

So, HOT templates should specify that they might contain features
for rocky release [1]

Also, this submission updates the yaml validation to use only latest
heat_version alias. There are cases in which we will need to set
the version for specific templates i.e. mixed versions, so there
is added a variable to assign specific templates to specific heat_version
aliases, avoiding the introductions of error by bulk replacing the
the old version in new releases.

[1]: https://docs.openstack.org/heat/latest/template_guide/hot_spec.html#rocky
Change-Id: Ib17526d9cc453516d99d4659ee5fa51a5aa7fb4b
2018-05-09 08:28:42 +02:00
Zuul
6fe62ce661 Merge "Fix sample env data" 2018-05-02 20:18:27 +00:00
Zuul
e24316c4ec Merge "Ensure tasks aren't empty dicts" 2018-05-02 05:05:47 +00:00