24 Commits

Author SHA1 Message Date
Lukas Bezdicka
0cb5c847f3 Always evaluate step first in conditional
If we use variables defined in later step in conditional before
checking which step are we on we will fail.

Resolves: rhbz#1535457
Closes-Bug: #1743764
Change-Id: Ic21f6eb5c4101f230fa894cd0829a11e2f0ef39b
2018-02-09 17:12:29 +01:00
marios
dec003def8 Convert tags to when statements for Q major upgrade workflow
This converts "tags: stepN" to "when: step|int == N" for the direct
execution as an ansible playbook, with a loop variable 'step'.
The tasks all include the explicit cast |int.

This also adds a set_fact task for handling of the package removal
with the UpgradeRemovePackages parameter (no change to the interface)

The yaml-validate also now checks for duplicate 'when:' statements

Q upgrade spec @ Ibde21e6efae3a7d311bee526d63c5692c4e27b28
Related Blueprint: major-upgrade-workflow
[0]: 394a92f761/tripleo_common/utils/config.py (L141)
Change-Id: I6adc5619a28099f4e241351b63377f1e96933810
2018-01-08 13:57:47 +02:00
dongwenjuan
13afaf0db2 fix the description of CongressDebug
Change-Id: I7287e5425b44e922b07f6a8d9ad211ad61ac3910
Signed-off-by: dongwenjuan <dong.wenjuan@zte.com.cn>
2017-12-19 10:30:46 +08:00
Carlos Camacho
927495fe3d Change template names to queens
The new master branch should point now to queens instead of pike.

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

[1]: https://docs.openstack.org/heat/latest/template_guide/hot_spec.html#queens

Change-Id: I7654d1c59db0c4508a9d7045f452612d22493004
2017-11-23 10:15:32 +01:00
Juan Antonio Osorio Robles
2f7888c2c5 Add constraints to service Debug flags
The service debug flags (e.g. BarbicanDebug), allow the deployer to set
the verbose logging for a specific service. They are strings to allow
folks to set it up regardless of the global Debug flag being set.

This commit adds a constraint to set the allowed values for these
parameters. It is based on a subset of the underlying implementation
that sets this flag (which uses any2bool).

Change-Id: I35e7a7ee35aefb7108ec6b0bb8f3124610fb97ee
2017-11-06 08:23:21 +02:00
Ade Lee
c9b7091536 Ensure Debug is a boolean
Oslo does not like it when Debug is not a proper python boolean
Closes-Bug: 1719929

Change-Id: Ib6c3969d4dd75d5fb2cc274266c060acff8d5571
2017-09-27 13:22:07 -04:00
Ben Nemec
8fb3da3c60 Make EnablePackageInstall and Debug descriptions consistent
Change-Id: I3ea7c0c7ea049043668e68c6e637fd2aaf992622
Partial-Bug: 1700664
2017-07-21 18:38:58 +00:00
Giulio Fidente
baf6eee501 Adds network/cidr mapping into a new service property
Makes it possible to resolve network subnets within a service
template; the data is transported into a new property ServiceData
wired into every service which hopefully is generic enough to
be extended in the future and transport more data.

Data can be consumed in service templates to set config values
which need to know what is the subnet where a deamon operates (for
example the Ceph Public vs Cluster network).

Change-Id: I28e21c46f1ef609517175f7e7ee19e28d1c0cba2
2017-07-14 13:44:04 +02:00
Emilien Macchi
d5145167cb Allow to set Notification Driver to 'noop'
This patch does 2 things:
* Configure messagingv2 as default driver for Oslo Notifications sent on
  RPC.
* Allow users to choose between messagingv2 (default) and noop when we
  want to disable notifications (for example, when Telemetry is disabled).
* Deprecate KeystoneNotificationDriver in favor of NotificationDriver.

Change-Id: Ia547d7f4bfb51e7c45246b097b48fd86da231bd3
Related-Bug: #1701357
2017-07-11 13:57:48 -07:00
Emilien Macchi
1e899703cc Ability to enable/disable debug mode per OpenStack service
Add ServiceDebug parameters for each services that will allow operators
to enable/disable Debug for specific services.

We keep the Debug parameters for backward compatibility.

Operators want to enable Debug everywhere:
  Debug: true
Operators want to disable Debug everywhere:
  Debug: false
Operators want to disable Debug everywhere except Glance:
  GlanceDebug: true
Operators want to enable Debug everywhere except Glance:
  Debug: true
  GlanceDebug: false

New parameters: AodhDebug, BarbicanDebug, CeilometerDebug, CinderDebug,
CongressDebug, GlanceDebug, GnocchiDebug, HeatDebug, HorizonDebug,
IronicDebug, KeystoneDebug, ManilaDebug, MistralDebug, NeutronDebug,
NovaDebug, OctaviaDebug, PankoDebug, SaharaDebug, TackerDebug,
ZaqarDebug.

Note: for backward compatibility in Horizon, HorizonDebug is set to
false, so we maintain previous behavior.

Change-Id: Icbf4a38afcdbd8471d1afc11743df9705451db52
Implement-blueprint: composable-debug
Closes-Bug: #1634567
2017-06-07 11:26:30 +02:00
Saravanan KR
a096ddab34 Add role specific information to the service template
When a service is enabled on multiple roles, the parameters for the
service will be global. This change enables an option to provide
role specific parameter to services and other templates.

Two new parameters - RoleName and RoleParameters, are added to the
service template. RoleName provides the role name of on which the
current instance of the service is being applied on. RoleParameters
provides the list of parameters which are configured specific to the
role in the environment file, like below:

  parameters_default:
      # Default value for applied to all roles
      NovaReservedHostMemory: 2048
      ComputeDpdkParameters:
          # Applied only to ComputeDpdk role
          NovaReservedHostMemory: 4096

In above sample, the cluster contains 2 roles - Compute, ComputeDpdk.
The values of ComputeDpdkParameters will be passed on to the templates
as RoleParameters while creating the stack for ComputeDpdk role. The
parameter which supports role specific configuration, should find the
parameter first in in the RoleParameters list, if not found, then the
default (for all roles) should be used.
Implements: blueprint tripleo-derive-parameters

Change-Id: I72376a803ec6b2ed93903cc0c95a6ffce718b6dc
2017-05-15 10:06:46 +05:30
Zane Bitter
b26fe7d164 Use the make_url function to build URLs
Change-Id: I2b23d92c85d5ecc889a7ee597b90e930bde9028e
Depends-On: I72f84e737b042ecfaabf5639c6164d46a072b423
2017-05-05 14:43:11 -04:00
Tomofumi Hayashi
09be1e1c6a Add password to authtoken section in congress.conf
Current puppet module miss password section hence congress is not
available due to missing password in congress.conf. This fix is to
add password.

Change-Id: I277c03ca93130a0337d5085f09c375fb0ac9331d
Signed-off-by: Tomofumi Hayashi <s1061123@gmail.com>
2017-04-07 18:38:21 +09:00
Emilien Macchi
91053af09d Allow to configure policy.json for OpenStack projects
For both containers and classic deployments, allow to configure
policy.json for all OpenStack APIs with new parameters (hash,
empty by default).

Example of new parameter: NovaApiPolicies.
See environments/nova-api-policy.yaml for how the feature can be used.

Note: use it with extreme caution.

Partial-implement: blueprint modify-policy-json
Change-Id: I1144f339da3836c3e8c8ae4e5567afc4d1a83e95
2017-03-28 22:21:28 +00:00
Jenkins
b32d48f2a4 Merge "Setting keystone region for congress" 2017-03-26 08:11:47 +00:00
Dan Radez
32be46f508 Setting keystone region for congress
Change-Id: I4958b886cbd6c2b34da0c265e8774105474ace13
2017-03-20 11:39:13 -04:00
Emilien Macchi
20003d6deb congress/tacker: switch auth_uri to use uri_no_suffix
Switch Congress and Tacker to use auth_uri with keystone versionless
endpoint.

Change-Id: I7e17d061344849b0421f3a6c9571f1609e8861fb
Partial-Implement: blueprint keystone-v3
2017-03-13 10:56:24 -04:00
Emilien Macchi
7c84a9b390 upgrades/validation: only run validation when services exist
During upgrades, validation test if a service is running before the
upgrade process starts.
In some cases, servies doesn't exist yet so we don't want to run the
validation.

This patch makes sure we check if the service is actually present on the
system before validating it's running correctly.

Also it makes sure that services are enabled before trying to stop them.
It allows use-cases where we want to add new services during an upgrade.
Also install new packages of services added in Ocata, so we can validate
upgrades on scenarios jobs.

Change-Id: Ib48fb6b1557be43956557cbde4cbe26b53a50bd8
2017-03-01 19:49:00 +00:00
Jenkins
6c8f5017d7 Merge "Put service stop at step1 and quiesce at step2." 2017-03-01 10:09:53 +00:00
Sofer Athlan-Guyot
fb78213782 Put service stop at step1 and quiesce at step2.
In the previous release[1], the services were stopped before the
pacemaker services, so that they get a chance to send last message to
the database/rabbitmq queue:

Let's do the upgrade in the same order.

[1] https://github.com/openstack/tripleo-heat-templates/blob/stable/newton/extraconfig/tasks/major_upgrade_controller_pacemaker_2.sh#L13-L71

Change-Id: I1c4045e8b9167396c9dfa4da99973102f1af1218
2017-02-28 19:20:13 +01:00
Dan Radez
242fd3072d Adding keystone parameters for Congress
Change-Id: Ic50aee9e635f62f06fa757fa3d88d9d8c5b28fcb
2017-02-28 09:17:37 -05:00
Dan Radez
bbe274862d Adding upgrade steps to congress service
Change-Id: I79169baf4c59e9325355992288de2e9ad8088e3b
2017-02-20 23:59:04 +00:00
Michele Baldessari
90431683b5 Make the DB URIs host-independent for all services
When fixing LP#1643487 we added ?bind_address to all DB URIs.
Since this clashes with Cellsv2 due to the URIs becoming host
dependent, we need a new approach to pass bind_address to pymysql
that leaves the DB URIs host-independent.

In change Iff8bd2d9ee85f7bb1445aa2e1b3cfbff1f397b18 we first create a
/etc/my.cnf.d/tripleo.cnf file with a [tripleo] section with the correct
bind-address option.

In this change we make sure that the DB URIs will point to the added
file and to the specific section containing the necessary bind-address
option. We do introduce a new MySQLClient profile which will hold all
this more client-specific configuration so that this change can fit
better in the composable roles work. Also, in the future it might
contain the necessary configuration for SSL for example.

Note that in case the /etc/my.cnf.d/tripleo.cnf file does not exist
(because it is created via the mysqlclient profile), things keep on
working as usual and the bind-address option simply won't be set, which
has no impact on hosts where there are no VIPs.

Co-Authored-By: Damien Ciabrini <dciabrin@redhat.com>

Change-Id: Ieac33efe38f32e949fd89545eb1cd8e0fe114a12
Related-Bug: #1643487
Closes-Bug: #1663181
Closes-Bug: #1664524
Depends-On: Iff8bd2d9ee85f7bb1445aa2e1b3cfbff1f397b18
2017-02-17 17:22:42 +01:00
Dan Radez
f666228678 adding Congress Support
Depends-On: Ic74ccd5fa7b3b04ca810416e5160463252f17474

Implements: blueprint congress-service-integration

Change-Id: Ie60540c340c0eb71ff376aba65507a8bb3e909b6
Signed-off-by: Dan Radez <dradez@redhat.com>
2017-02-10 09:59:38 -05:00