41 Commits

Author SHA1 Message Date
Dan Prince
c82b6cec10 Deprecate the old mergepy overcloud templates
This patch moves all the related mergepy templates for the
overcloud into a deprecated directory. The Makefile has
been updated so that overcloud.yaml is still generated
at the top level so this shouldn't break end users.

This is to reduce confusion for new users who are learning the
TripleO heat templates and find the fact that we have two full
implementations very confusing.

Change-Id: I0848aca4dee3e37cb4c6089c5f655ad22ac6c5fd
2015-02-23 20:50:59 -05:00
Giulio Fidente
874e07dee1 Add Ceph related templates needed to configure Cinder with Ceph
The new ceph-source.yaml file provides the config settings needed
by the elements which configure Ceph on controllers (monitors) and
storage nodes (OSDs) as well as the Cinder backend which uses it.

There is also a without-mergepy copy named ceph-storage.yaml

Change-Id: I954861536c41b2a7e6cbd86a0f0b55004eed4c70
2015-02-09 17:06:31 +01:00
Giulio Fidente
6674c39d80 Bring back (abandoned) support for Cinder/NFS
We used to have a YAML file providing a test setup for Cinder/NFS
which could be used via a special Makefile target; this was not
used in CI anymore though and overtime things broke.

This change aims at bringing that functionality back and also
make it easier to use it via a number of changes:

* delete unmaintained nfs-server-source (not working due to
  changes in the elements)
* delete (unneeded) block-storage-nfs
* remove the hidden block-storage-with-nfs target from Makefile
* add a some nfs-source which supports newer elements and
  newer template language as well
* improve existing comments in Makefile documeting how to use it

Change-Id: I96144ee2f4ca33bd7467f09ad960ea268c1250bf
2014-12-11 00:19:27 +01:00
Robert Collins
91e763f748 Expose public_interface_tag support.
Proper VLAN support requires adding the IP address to a new device,
rather than br-ex/br-ctlplane. This is added in the
tripleo-image-elements change https://review.openstack.org/103449
(I3f77f72ac623792e844dbb4d501b6ab269141f8e) and here we just expose
it with appropriate glue to get the IP address from Neutron.

With this we can now describe a VLAN public interface scenario
to the undercloud and overcloud control planes.

Change-Id: I4d2194fc813aebb0708d6fddf4f05bae5f091fd8
2014-08-28 13:34:38 -04:00
Giulio Fidente
24bdc7380f Fix BLOCKSTORAGESCALE and SWIFTSTORAGESCALE in Makefile
The BLOCKSTORAGESCALE and SWIFTSTORAGESCALE vars were incorrectly
ignored in the Makefile (and forcibly set to 0)

Change-Id: I37614153d8c87d25aa17e759fcd228a8a1fda4a4
2014-08-05 18:14:16 +02:00
Steve Baker
beca15dec5 Port all templates to HOT
This change was generated and validated by running the following:

    make hot clean all validate-all

This converts all templates to be valid HOT.

Fn::Select is not converted in this change but this will actually
work with heat_template_version 2013-05-23. Fn::Select is converted
manually in the next change in this series.

This change also sets the heat_template_version to 2014-10-16 which
includes the list_join intrinsic functions used throughout these
templates.

Partial-Blueprint: tripleo-juno-remove-mergepy
Change-Id: Ib3cbb83f6ae94adb7b793ab1b662bd5c55cbb5b3
2014-08-04 08:57:52 +12:00
Steve Baker
b127d38aa8 Make target to validate a template
This adds make targets to run heat template-validate against the
generated templates.

These targets assume that credentials to a valid heat endpoint
have been sourced.

The target validate-all will validate every template in
generated_templates, but there is also a target created for each
template, for example:

  make validate-overcloud.yaml

This is a useful aid for
Partial-Blueprint: tripleo-juno-remove-mergepy

Change-Id: Id101402b8b2fa0bc6058c5bc4b7474f0f6a158ad
2014-07-08 13:48:16 +12:00
Jenkins
6dcc9e1528 Merge "Remove the tuskar-source template" 2014-06-10 20:09:36 +00:00
Jenkins
35306f4095 Merge "Add Controller scale param to merge.py" 2014-06-06 15:13:50 +00:00
Tomas Sedovic
a3e83c8cff Remove the tuskar-source template
There is no need for a tuskar-specific undercloud template. Tuskar is
installed via elements just like any other undercloud service.

This template is not being used in devtest and I'm not sure it ever has
been.

Change-Id: I531d927b1984873b32f440d33a130788670f7cd9
2014-06-04 12:16:24 +02:00
Nicholas Randon
5771b71899 Move to software-config for the undercloud.
Change the undercloud deployment to use software-config similar to
that used by the overcloud.

Change-Id: I81bced2062e461fe10301969d856d709c0b573c3
2014-06-03 13:43:17 +01:00
Gregory Haynes
d44a3e2342 Add Controller scale param to merge.py
We need a paremeter to attempt scaling of the Controller resources in
merge.py.

Change-Id: I4a79059e72850da4a5a3fe30dbb9df92a9dca212
2014-05-28 15:08:47 +12:00
Clint Byrum
be5af1a35e Switch overcloud to software-config
This migrates the overcloud to using OS::Heat::StructuredConfig and
OS::Heat::StructuredDeployment. With those tools, we can decouple
servers from software configuration and begin to deprecate features in
tripleo_heat_merge.

Change-Id: Ice85f0711e90d0fabf1d1bc4698201c4d6758508
2014-04-16 14:10:48 +12:00
Robert Collins
2817287d36 Fix Ironic templates
The merge of ironic-source wasn't actually merging, leading to bad
templates. As part of this add the needed SSH virtual power key
(because like nova-bm, Ironic requires that for now).

We also need to set the compute_manager for nova with Ironic, so that
gets set too.

Change-Id: I0d7d535dbac3584b3eb12865259ee6403e20c98f
2014-03-25 14:04:52 +13:00
Ryan Brady
3ece9870f6 Merge Block Storage into Overcloud
This patch removes the seperate overcloud-with-block-storage.yaml
make target and merges the functionality into the main overcloud.yaml
target.  The default BLOCKSTORAGESCALE is 0. Change this number to add
additional block storage nodes.

This patch also updates the overcloud-with-block-storage-nfs target
to more closely resemble the overcloud.yaml target, including swift
and ssl templates as needed. The default BLOCKSTORAGESCALE is 1.
Change this number to add additional block storage nodes.

Change-Id: Ifcc733cfbf9f356393c3f6c72b2bbbb0214d3040
2014-03-11 11:56:29 -04:00
Richard Su
30301f322f Swift storage heat templates
Updated the existing swift-source template to properly list all
swift devices.

Created a new swift-storage-source template to add additional
swift-storage only nodes.

The default SWIFTSTORAGESCALE is 0. Change this number to add
additional swift storage nodes.

Change-Id: Ia05f4ad44593316430d60541106d23b032c3e760
2014-03-10 22:00:42 +00:00
Ryan Brady
a2602039fc Adds block-storage-nfs template
To support the changes to the cinder element to allow the nfs
backend to be utilized, this template has been added to show
the usage of the nfs_shares key in the cinder metadata.
The value is a list of strings containing share addresses.

This change is added to facilitate an example to test
the cinder element change: https://review.openstack.org/#/c/74563/

You may setup the nfs server manually or use the nfs-server
element at https://review.openstack.org/#/c/74712/.

Change-Id: I5b6cb118b34421ea07a81ed1fe68db24b1d4f19d
2014-03-07 14:58:02 -05:00
Robert Collins
9df35c186f Add a check target.
Just developer convenience - I'm used to autotools 'make check'
environments.

Change-Id: Idf5bb882f798d22d4513756b5273d4ae19caa5c0
2014-03-06 10:41:21 +13:00
Robert Collins
1fbf8ac0dc Make make overcloud.yaml DTRT always.
Change-Id: I3aebf49c87434026b9eea9de9a67cb3196bc48b2
2014-02-04 12:59:54 +13:00
Robert Collins
9ffb18af94 Update overcloud to support N compute hosts.
This uses the new merge feature earlier in this series.

Exporting COMPUTESCALE before running make will build a different
template. Note that since Make doesn't depend on variable values, you
need to delete overcloud.yaml between building with different scales.

Change-Id: If05b99ae3596bcc794e3a899ab1443aeb14ec754
2014-01-31 11:23:03 +13:00
Jenkins
01fe17fe1b Merge "Add SSL configuration metadata for overclouds." 2014-01-22 04:21:37 +00:00
Jenkins
6200c9f484 Merge "Add optional cinder storage node to overcloud" 2014-01-17 09:20:43 +00:00
Robert Collins
e5d4ce3c5f Add SSL configuration metadata for overclouds.
This passes SSL keys in via Heat which places a high cost on heat
compromises or the use of a non-SSL heat to do deploys. We'll want
to ensure that that is documented clearly.

Change-Id: I14d441460116fda91fbd1d2097c5598b57155a6d
2014-01-17 14:18:53 +13:00
Ryan Brady
d023604727 Add optional cinder storage node to overcloud
Mergeable block storage yaml template. Makefile updated to create a
overcloud-with-block-storage template to deploy an additional machine
as a block storage node.

Change-Id: I37c06cde114592507a4583f7ec53ffac123d66e3
2014-01-15 08:53:24 -05:00
Jenkins
9e75c7e460 Merge "Add undercloud-vm-ironic-source yaml file" 2014-01-14 18:06:50 +00:00
Mark McLoughlin
787418f73e Add all and clean targets to makefile
Just for convenience, particularly 'make clean'.

Change-Id: Ic9964ace7fb4c675e84b3b9343fc8239abca44ac
2014-01-14 14:02:34 +00:00
Mark McLoughlin
5ea44eb897 Avoid echoing comment from makefile recipe
We include a comment to explain why nova-compute-instance.yaml is
included in the prerequisite list for overcloud.yaml, but this comment
gets echoed by make before it executes the recipe using a shell.

  $> make overcloud.yaml
  # overcloud-source.yaml [..] won't work here because [..]
  # a prerequisite but don't want to pass it into merge.py
  python ./tripleo_heat_merge/merge.py overcloud-source.yaml [..]
  mv overcloud.yaml.tmp overcloud.yaml

Instead, maintain a list of files included by overcloud.yaml in a
variable and put a comment above that.

Change-Id: I1af69fbb33e1833170f086aec9b54c5c4e57138f
2014-01-14 13:57:10 +00:00
Devananda van der Veen
47cd2aeca9 Add undercloud-vm-ironic-source yaml file
Copies the undercloud-vm-source yaml file and removes portions which
were particular to nova-baremetal, replacing them and paving the way
for further Ironic-specific changes.

Change-Id: Ied49b0f8018291a0851cf2e10d83a174cb180479
2014-01-10 23:31:44 -08:00
marios
c9ce27c981 Make merge.py installable as a package using pbr
Now that merge.py is invokable from another script
(Ia6b6416fe10358d23f2b120283eecaf4c1178cfd) and from comments at that
review, it makes sense to offer a nicer way to consume the merge
functionality.

Once you git clone tripleo-heat-templates you can python setup.py
install and get /usr/bin/tripleo_heat_merge as well as a
tripleo_heat_merge package in python2.7/site-packages.

Makefile edits required because we moved merge.py into the
tripleo_heat_merge directory for the packaging.

Change-Id: I587fa7a826f93f89e8e5c266af7f5765438fe738
2013-12-17 15:53:08 +02:00
Dan Prince
e6afddb3ca Use merge.py for the undercloud templates.
This will require some changes to our devtest scripts
and TOCI to ensure we build the overcloud-vm template
before attempting to use it.

Change-Id: I14b5e4a0ccf5f18429bfc33e527bdb4760b8d1a3
2013-11-25 09:14:07 -05:00
Derek Higgins
378783f876 Add metadata to configure swift
o Adds the required swift metadata (in swift-source.yaml).
o Sets up glance to use the swift backend on the overcloud.
o Sets up glance to use the file backend on the undercloud and seed,
  i.e. maintain the Status quo.

Change-Id: I4a70ffbf9c51f1fea5cfc84d8718d3d30d36b3f2
2013-11-18 13:34:44 +00:00
Chris Krelle
2fcc443bf2 Add Ironic-source.yaml
Mergeable Ironic yaml template. Makefile updated to create a
undercloud-vm-ironic template. This patch will allow Ironic
developers to include Ironic in the undercloud vm.

Change-Id: Ie3998336a12f3509742634e59de5c9bee922d579
2013-10-23 14:41:58 -07:00
Roman Podolyaka
d3aa08dd5f Add tuskar API service configuration
Needed for I1d16e535ae50a06a8792e1613bb6b6c4647bf128 to
work properly.

Change-Id: Ib66e688bd7500f03dea7d4282607cd51078e9a51
2013-10-14 18:31:23 +03:00
Roman Podolyaka
6a898e9717 Remove an unsed target from Makefile
notcompute.yaml seems to be unsed for a while, but it's
still present in Makefile (its dependencies were removed
by change I952c630ca424d114feb643a6c34d182cad660f26).

Change-Id: If5d84bd822f748c962cdb2b95b6bbd5d5e1f11fa
2013-10-10 13:05:32 +03:00
Clint Byrum
0dbf2810a0 Add functional tests and examples for merge
merge.py is undocumented and untested, which is undesirable, as it does
not seem to be going away any time soon.

Change-Id: I7e4870e58a32c567e5947b9a48893b8210ad4d65
2013-09-19 13:02:03 -07:00
Clint Byrum
793dd12964 Generate overcloud.yaml using overcloud-source.
This new version does not need any nested stacks and correctly
references notcompute.

Change-Id: I16f846f7983a956b5159d17bef85cf6a87d69b45
2013-07-10 17:24:53 -07:00
Derek Higgins
36b4e49819 Quantum -> Neutron rename
Almost all references to quantum have been changed
neutron in tripleo-image-elements.

Change-Id: Ib17353d5834dd95d0348f62111074180c6e47181
2013-07-10 12:53:44 +01:00
Robert Collins
688a489021 Refine the Makefile rules.
The make rules in use were duplicative, which leads to maintenance
headaches.

Change-Id: Ic9e37796422caa2427c1575eb776c5d6a98516c3
2013-07-10 14:35:32 +12:00
Clint Byrum
6529485a2a Update bootstack-vm to match undercloud.
Also add Makefile stanza to produce overcoud.yaml from bootstack-vm
and nova-compute-group. This should allow independent usage of
nova-compute-group without having to manually update overcloud.

Change-Id: Id2bd20596e6be887b55019fdad31e6b0f4762eb7
2013-07-09 14:17:39 -07:00
Clint Byrum
a0246928c7 Use slave roles in Makefile. 2013-06-06 09:30:59 -07:00
Clint Byrum
022cc12afc Add a Makefile for regenerating common merges 2013-06-06 09:28:39 -07:00