From a14d2a554ef38c612cc8d744a289250e33ce3a1b Mon Sep 17 00:00:00 2001 From: Imre Farkas Date: Fri, 20 May 2016 16:57:44 +0200 Subject: Add base ironic profiles Co-Authored-By: Dmitry Tantsur Partially-implements: blueprint ironic-integration Change-Id: I4831789b31cf5df1e61fe3ec05994156e0afc054 --- manifests/profile/base/ironic.pp | 43 ++++++++++++++++++++++++++++++ manifests/profile/base/ironic/api.pp | 33 +++++++++++++++++++++++ manifests/profile/base/ironic/conductor.pp | 37 +++++++++++++++++++++++++ 3 files changed, 113 insertions(+) create mode 100644 manifests/profile/base/ironic.pp create mode 100644 manifests/profile/base/ironic/api.pp create mode 100644 manifests/profile/base/ironic/conductor.pp diff --git a/manifests/profile/base/ironic.pp b/manifests/profile/base/ironic.pp new file mode 100644 index 0000000..139654b --- /dev/null +++ b/manifests/profile/base/ironic.pp @@ -0,0 +1,43 @@ +# Copyright 2016 Red Hat, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +# == Class: tripleo::profile::base::ironic +# +# Ironic profile for TripleO +# +# === Parameters +# +# [*step*] +# (Optional) The current step of the deployment +# Defaults to hiera('step') +# +# [*sync_db*] +# (Optional) Whether to run db sync +# Defaults to true +# +class tripleo::profile::base::ironic ( + $step = hiera('step'), + $sync_db = true, +) { + + if $step >= 3 { + include ::ironic + + # Database is accessed by both API and conductor, hence it's here. + if $sync_db { + include ::ironic::db::mysql + include ::ironic::db::sync + } + } +} diff --git a/manifests/profile/base/ironic/api.pp b/manifests/profile/base/ironic/api.pp new file mode 100644 index 0000000..1406e2d --- /dev/null +++ b/manifests/profile/base/ironic/api.pp @@ -0,0 +1,33 @@ +# Copyright 2016 Red Hat, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +# == Class: tripleo::profile::base::ironic::conductor +# +# Ironic API profile for TripleO +# +# === Parameters +# +# [*step*] +# (Optional) The current step of the deployment +# Defaults to hiera('step') +# +class tripleo::profile::base::ironic::api ( + $step = hiera('step'), +) { + + include ::tripleo::profile::base::ironic + if $step >= 4 { + include ::ironic::api + } +} diff --git a/manifests/profile/base/ironic/conductor.pp b/manifests/profile/base/ironic/conductor.pp new file mode 100644 index 0000000..7a587a5 --- /dev/null +++ b/manifests/profile/base/ironic/conductor.pp @@ -0,0 +1,37 @@ +# Copyright 2016 Red Hat, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +# == Class: tripleo::profile::base::ironic::conductor +# +# Ironic conductor profile for TripleO +# +# === Parameters +# +# [*step*] +# (Optional) The current step of the deployment +# Defaults to hiera('step') +# +class tripleo::profile::base::ironic::conductor ( + $step = hiera('step'), +) { + + include ::tripleo::profile::base::ironic + + if $step >= 4 { + include ::ironic::drivers::deploy + include ::ironic::drivers::ipmi + include ::ironic::drivers::pxe + include ::ironic::conductor + } +} -- cgit 1.2.3-korg