aboutsummaryrefslogtreecommitdiffstats
path: root/patches/fuel-library
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2016-10-01 13:18:11 +0200
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2016-10-09 16:33:43 +0200
commit42f8585ebb8fffad19a89314659ab9129176c3e9 (patch)
treee2cf6a4797bcbd036e080541cc3925f8b209549b /patches/fuel-library
parent6f3a054fc95622f0c002f72c0fac6074bb36c36f (diff)
build: Rework patch mechanism for Fuel submodules
While refactoring the patching mechanism, take care of: - Sync submodule handling with Fuel@OPFNV; - build: Investigate/prepare for moving patches to Fuel@OPNFV; - build: Investigate divergent fuel-mirror; - ISO build: cacheid for Fuel comps should not depend on Armband git commit; CHANGE: Rename/shuffle patches while grouping them in "features", preparing for upstreaming them to Fuel@OPNFV and beyond. CHANGE: Allow linking patches for better representing the dependency between one patch and different features. e.g. 0001-Add-arch-to-nailgun-release-and-target-image.patch: - part of `multiarch-fuel`, because it extends Fuel; - part of `direct-kernel-boot`, as arch is required for that; - part of `cross-bootstrap`, target image is arch-dependent; NOTE: Patch links are not staged to Fuel@OPNFV, they only serve as markers that a specific patch is part of a feature. CHANGE: Kill all Fuel component submodules, now handled in Fuel@OPNFV: - fuel-agent - fuel-astute - fuel-library - fuel-mirror - fuel-nailgun-agent - fuel-web CHANGE: Move armband-fuel-config.mk to armband git root. FIXME: m1.micro-Increase-profile-RAM-size-to-128MB.patch is NOT part of `cross-bootstrap` feature, but patch context says so ... FIXME: 0001-Add-arm64-deb-repositories-setup.patch is broken at `make patches-export` by removing spaces at EOL. v2 -> v3: * Phony patch support (links to show a patch belongs to a feature); * Updated README.md v3 -> v7: * Re-export Fuel submodules & plugins patches (update patch context); * Update Cavium mail addresses (s/caviumnetworks.com/cavium.com/); * Ignore submodule changes; * Add armband git repo info to gitinfo_fuel.txt at build time; Implements: ARMBAND-136 Closes-bug: ARMBAND-95 Closes-bug: ARMBAND-93 Closes-bug: ARMBAND-92 Change-Id: I1a236d9f43b2e6dca22055911f696b43c22b5973 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Diffstat (limited to 'patches/fuel-library')
-rw-r--r--patches/fuel-library/0001-ceph-Fix-obsolete-XFS-mount-param-delaylog.patch (renamed from patches/fuel-library/0011-ceph-Fix-obsolete-XFS-mount-param-delaylog.patch)14
-rw-r--r--patches/fuel-library/0002-ceilometer-Fix-libvirt-bin-group-name-for-armband.patch (renamed from patches/fuel-library/0012-ceilometer-Fix-libvirt-bin-group-name-for-armband.patch)7
-rw-r--r--patches/fuel-library/0003-compute-Fix-virtlogd-not-started-after-install.patch (renamed from patches/fuel-library/0016-compute-Fix-virtlogd-not-started-after-install.patch)6
-rw-r--r--patches/fuel-library/arm64-bug-fixes/0001-nova-config-Disable-usb-tablet-for-aarch64.patch (renamed from patches/fuel-library/0005-Disable-usb-tablet-for-aarch64.patch)13
-rw-r--r--patches/fuel-library/arm64-bug-fixes/0002-Install-vgabios-and-link-for-aarch64.patch (renamed from patches/fuel-library/0007-Install-vgabios-and-link-for-aarch64.patch)15
-rw-r--r--patches/fuel-library/arm64-bug-fixes/0003-nova-Update-vga-console-defaults-for-armv7-aarch64.patch (renamed from patches/fuel-library/0008-nova-Update-vga-console-defaults-for-armv7-aarch64.patch)38
-rw-r--r--patches/fuel-library/arm64-bug-fixes/0004-nova-AArch64-enable-hugepage-support.patch (renamed from patches/fuel-library/0009-nova-AArch64-enable-hugepage-support.patch)14
-rw-r--r--patches/fuel-library/direct-kernel-boot/0001-upload_cirros-Add-direct-kernel-boot-support.patch (renamed from patches/fuel-library/0006-upload_cirros-Add-direct-kernel-boot-support.patch)25
-rw-r--r--patches/fuel-library/direct-kernel-boot/0002-nova-Fix-inject-for-direct-boot-with-part-table.patch (renamed from patches/fuel-library/0010-nova-Fix-inject-for-direct-boot-with-part-table.patch)14
-rw-r--r--patches/fuel-library/multiarch-efi/0001-Add-arm64-templates-to-cobbler-and-nailgun.patch (renamed from patches/fuel-library/0001-Add-arm64-templates-to-cobbler-and-nailgun.patch)26
-rw-r--r--patches/fuel-library/multiarch-efi/0002-Add-cobbler-grub-aarch64-to-cobbler-dependencies.patch (renamed from patches/fuel-library/0014-Add-cobbler-grub-aarch64-to-cobbler-dependencies.patch)0
-rw-r--r--patches/fuel-library/multiarch-fuel/0001-Make-qemu-kvm-architecture-aware.patch (renamed from patches/fuel-library/0003-Make-qemu-kvm-architecture-aware.patch)10
-rw-r--r--patches/fuel-library/multiarch-fuel/0002-Make-TestVM-creation-architecture-aware.patch (renamed from patches/fuel-library/0004-Make-TestVM-creation-architecture-aware.patch)13
-rw-r--r--patches/fuel-library/multiarch-mirrors/0001-Add-arm64-for-auxiliary-repos.patch (renamed from patches/fuel-library/0002-Add-arm64-for-auxiliary-repos.patch)8
-rw-r--r--patches/fuel-library/mysql-sst-provider/0001-Allow-configuring-MySQL-WSREP-SST-provider.patch (renamed from patches/fuel-library/0013-Allow-configuring-MySQL-WSREP-SST-provider.patch)22
-rw-r--r--patches/fuel-library/upstream-backports/0001-Set-net.ipv4.ip_nonlocal_bind-1-for-vrouter-namespac.patch (renamed from patches/fuel-library/0015-Set-net.ipv4.ip_nonlocal_bind-1-for-vrouter-namespace.patch)14
-rw-r--r--patches/fuel-library/upstream-backports/0002-Always-wait-for-MySQL-sync-on-service-refresh.patch (renamed from patches/fuel-library/0017-Always-wait-for-MySQL-sync-on-service-refresh.patch)20
-rw-r--r--patches/fuel-library/upstream-backports/0003-Fix-MySQL-logging-dir-permissions-for-syslog.patch (renamed from patches/fuel-library/0018-Fix-MySQL-logging-dir-permissions-for-syslog.patch)10
18 files changed, 145 insertions, 124 deletions
diff --git a/patches/fuel-library/0011-ceph-Fix-obsolete-XFS-mount-param-delaylog.patch b/patches/fuel-library/0001-ceph-Fix-obsolete-XFS-mount-param-delaylog.patch
index 0ddad114..facde8f2 100644
--- a/patches/fuel-library/0011-ceph-Fix-obsolete-XFS-mount-param-delaylog.patch
+++ b/patches/fuel-library/0001-ceph-Fix-obsolete-XFS-mount-param-delaylog.patch
@@ -16,12 +16,12 @@ older than 4.0.
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/deployment/puppet/osnailyfacter/manifests/ceph/ceph_osd.pp b/deployment/puppet/osnailyfacter/manifests/ceph/ceph_osd.pp
-index f7da80e..22aab33 100644
+index 2480f18..0957010 100644
--- a/deployment/puppet/osnailyfacter/manifests/ceph/ceph_osd.pp
+++ b/deployment/puppet/osnailyfacter/manifests/ceph/ceph_osd.pp
-@@ -50,4 +50,11 @@ class {'ceph':
+@@ -35,6 +35,13 @@ class osnailyfacter::ceph::ceph_osd {
}
-
+
if $ceph_tuning_settings_hash != {} {
+ if versioncmp($::kernelmajversion, '4.0') < 0 {
+ # FIXME(armband): XFS mount opt delaylog is deprecated in kernels >=4.0.
@@ -31,11 +31,13 @@ index f7da80e..22aab33 100644
+ ], ',')
+ }
ceph_conf {
-diff --git a/deployment/puppet/osnailyfacter/manifests/globals/globals.pp b/deployment/puppet/osnailyfacter/modular/globals/globals.pp
-index 268a5b1..69aed7b 100644
+ 'global/debug_default' : value => $debug;
+ 'global/max_open_files' : value => $ceph_tuning_settings_hash['max_open_files'];
+diff --git a/deployment/puppet/osnailyfacter/manifests/globals/globals.pp b/deployment/puppet/osnailyfacter/manifests/globals/globals.pp
+index 854d297..7345d66 100644
--- a/deployment/puppet/osnailyfacter/manifests/globals/globals.pp
+++ b/deployment/puppet/osnailyfacter/manifests/globals/globals.pp
-@@ -123,7 +123,7 @@ if ($storage_hash['volumes_ceph'] or $storage_hash['images_ceph'] or $storage_ha
+@@ -148,7 +148,7 @@ class osnailyfacter::globals::globals {
$ceph_tuning_settings = {
'max_open_files' => pick($storage_tuning_settings['max_open_files'], '131072'),
'osd_mkfs_type' => pick($storage_tuning_settings['osd_mkfs_type'], 'xfs'),
diff --git a/patches/fuel-library/0012-ceilometer-Fix-libvirt-bin-group-name-for-armband.patch b/patches/fuel-library/0002-ceilometer-Fix-libvirt-bin-group-name-for-armband.patch
index 36353a89..17700a9a 100644
--- a/patches/fuel-library/0012-ceilometer-Fix-libvirt-bin-group-name-for-armband.patch
+++ b/patches/fuel-library/0002-ceilometer-Fix-libvirt-bin-group-name-for-armband.patch
@@ -25,11 +25,12 @@ This patch extends the version checking introduced in [1]:
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/deployment/puppet/openstack_tasks/manifests/ceilometer/compute.pp b/deployment/puppet/openstack_tasks/manifests/ceilometer/compute.pp
-index 8311731..1d7af2b 100644
+index af4f0e5..e8dbfcf 100644
--- a/deployment/puppet/openstack_tasks/manifests/ceilometer/compute.pp
+++ b/deployment/puppet/openstack_tasks/manifests/ceilometer/compute.pp
-@@ -195,7 +195,13 @@ class openstack::ceilometer (
-
+@@ -93,8 +93,14 @@ class openstack_tasks::ceilometer::compute {
+ }
+
if $::operatingsystem == 'Ubuntu' and $::ceilometer::params::libvirt_group {
+ # Armband libvirt-bin deb package (1.3.2 version) creates 'libvirtd' group on Ubuntu
+ if (versioncmp($::libvirt_package_version, '1.3.2') >= 0) {
diff --git a/patches/fuel-library/0016-compute-Fix-virtlogd-not-started-after-install.patch b/patches/fuel-library/0003-compute-Fix-virtlogd-not-started-after-install.patch
index 752ef6f8..a9a49331 100644
--- a/patches/fuel-library/0016-compute-Fix-virtlogd-not-started-after-install.patch
+++ b/patches/fuel-library/0003-compute-Fix-virtlogd-not-started-after-install.patch
@@ -18,11 +18,11 @@ Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-index 33e851f..3647f9b 100644
+index 164bd70..211fefa 100644
--- a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
+++ b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-@@ -373,7 +373,8 @@ class openstack_tasks::roles::compute {
-
+@@ -337,7 +337,8 @@ class openstack_tasks::roles::compute {
+
# TODO(aschultz): work around until https://review.openstack.org/#/c/306677/
# lands.
- if $::os_package_type == 'ubuntu' {
diff --git a/patches/fuel-library/0005-Disable-usb-tablet-for-aarch64.patch b/patches/fuel-library/arm64-bug-fixes/0001-nova-config-Disable-usb-tablet-for-aarch64.patch
index 1109656c..f4e19229 100644
--- a/patches/fuel-library/0005-Disable-usb-tablet-for-aarch64.patch
+++ b/patches/fuel-library/arm64-bug-fixes/0001-nova-config-Disable-usb-tablet-for-aarch64.patch
@@ -1,16 +1,18 @@
-From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+From: Stanislaw Kardach <stanislaw.kardach@cavium.com>
Date: Tue, 15 Mar 2016 11:33:52 +0100
Subject: [PATCH] nova config: Disable usb tablet for aarch64
---
- deployment/puppet/openstack_tasks/manifests/roles/compute.pp | 12 ++++++++++++
- 1 file changed, 12 insertions(+)
+ deployment/puppet/openstack_tasks/manifests/roles/compute.pp | 4 ++++
+ 1 file changed, 4 insertions(+)
diff --git a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-index ca1b2c4..c0349dc 100644
+index 211fefa..4240126 100644
--- a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
+++ b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-@@ -316,3 +316,7 @@ class openstack::compute (
+@@ -379,6 +379,10 @@ class openstack_tasks::roles::compute {
+ }
+
nova_config {
+ 'libvirt/use_usb_tablet': value => $::architecture ? {
+ /(arm64|aarch64)/ => false,
@@ -18,3 +20,4 @@ index ca1b2c4..c0349dc 100644
+ };
'libvirt/live_migration_flag': value => 'VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST';
'libvirt/block_migration_flag': value => 'VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_NON_SHARED_INC';
+ 'DEFAULT/connection_type': value => 'libvirt';
diff --git a/patches/fuel-library/0007-Install-vgabios-and-link-for-aarch64.patch b/patches/fuel-library/arm64-bug-fixes/0002-Install-vgabios-and-link-for-aarch64.patch
index 04e2abf6..da152ead 100644
--- a/patches/fuel-library/0007-Install-vgabios-and-link-for-aarch64.patch
+++ b/patches/fuel-library/arm64-bug-fixes/0002-Install-vgabios-and-link-for-aarch64.patch
@@ -7,16 +7,18 @@ install it by default on AArch64 and create missing link
in </usr/share/qemu> to </usr/share/vgabios/vgabios.bin>.
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
-Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com>
---
- deployment/puppet/openstack_tasks/manifests/roles/compute.pp | 12 ++++++++++++
- 1 file changed, 12 insertions(+)
+ deployment/puppet/openstack_tasks/manifests/roles/compute.pp | 8 ++++++++
+ 1 file changed, 8 insertions(+)
diff --git a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-index ca1b2c4..c0349dc 100644
+index 4240126..b18fa7b 100644
--- a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
+++ b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-@@ -364,3 +368,11 @@ class openstack::compute (
+@@ -409,6 +409,14 @@ class openstack_tasks::roles::compute {
+ vncserver_listen => '0.0.0.0',
+ remove_unused_original_minimum_age_seconds => pick($nova_hash_real['remove_unused_original_minimum_age_seconds'], '86400'),
libvirt_service_name => $::nova::params::libvirt_service_name,
+ } ->
+ package { 'vgabios':
@@ -27,4 +29,5 @@ index ca1b2c4..c0349dc 100644
+ target => '/usr/share/vgabios/vgabios.bin',
+ replace => false,
}
-
+
+ class { '::nova::migration::libvirt':
diff --git a/patches/fuel-library/0008-nova-Update-vga-console-defaults-for-armv7-aarch64.patch b/patches/fuel-library/arm64-bug-fixes/0003-nova-Update-vga-console-defaults-for-armv7-aarch64.patch
index c289bd8d..9e9c3d53 100644
--- a/patches/fuel-library/0008-nova-Update-vga-console-defaults-for-armv7-aarch64.patch
+++ b/patches/fuel-library/arm64-bug-fixes/0003-nova-Update-vga-console-defaults-for-armv7-aarch64.patch
@@ -1,4 +1,4 @@
-From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+From: Stanislaw Kardach <stanislaw.kardach@cavium.com>
Date: Tue, 22 Mar 2016 12:05:09 +0100
Subject: [PATCH] nova: Update vga, console defaults for armv7, aarch64
@@ -7,18 +7,18 @@ armv7 and aarch64 VMs require video=vga, and since most applications
use PL011 serial driver for guests, adding console=ttyAMA0 is also
a nice UX addition.
---
- .../openstack/files/nova-libvirt-vga-console.patch | 39 ++++++++++++++++++++++
- deployment/puppet/openstack_tasks/manifests/roles/compute.pp | 19 +++++++++++
- 2 files changed, 58 insertions(+)
+ .../openstack/files/nova-libvirt-vga-console.patch | 40 ++++++++++++++++++++++
+ .../openstack_tasks/manifests/roles/compute.pp | 19 ++++++++++
+ 2 files changed, 59 insertions(+)
create mode 100644 deployment/puppet/openstack/files/nova-libvirt-vga-console.patch
diff --git a/deployment/puppet/openstack/files/nova-libvirt-vga-console.patch b/deployment/puppet/openstack/files/nova-libvirt-vga-console.patch
new file mode 100644
-index 0000000..c5f8e5a
+index 0000000..3594276
--- /dev/null
+++ b/deployment/puppet/openstack/files/nova-libvirt-vga-console.patch
@@ -0,0 +1,40 @@
-+From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
++From: Stanislaw Kardach <stanislaw.kardach@cavium.com>
+Date: Tue, 22 Mar 2016 12:05:09 +0100
+Subject: [PATCH] Update vga, console defaults for armv7 and aarch64
+
@@ -27,7 +27,7 @@ index 0000000..c5f8e5a
+use PL011 serial driver for guests, adding console=ttyAMA0 is also
+a nice UX addition.
+
-+Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
++Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com>
+Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+---
+
@@ -59,26 +59,31 @@ index 0000000..c5f8e5a
+ # so use 'vga' instead when running on Power hardware.
+ video.type = 'vga'
diff --git a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-index c0349dc..46b1801 100644
+index b18fa7b..2f0f2a8 100644
--- a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
+++ b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-@@ -157,4 +157,10 @@ class openstack::compute (
+@@ -158,6 +158,12 @@ class openstack_tasks::roles::compute {
include ::nova::params
-+
+
+ if ! defined(Package['patch']) {
+ package { 'patch':
+ ensure => 'present',
+ }
+ }
-
++
case $::osfamily {
-@@ -250,3 +256,4 @@ class openstack::compute (
-
+ 'RedHat': {
+ # From legacy libvirt.pp
+@@ -290,6 +296,7 @@ class openstack_tasks::roles::compute {
+ }
+
$notify_on_state_change = 'vm_and_task_state'
+ $nova_path = '/usr/lib/python2.7/dist-packages/nova'
-
-@@ -273,5 +280,17 @@ class openstack::compute (
+
+ class { '::nova':
+ rpc_backend => $rpc_backend_real,
+@@ -311,6 +318,18 @@ class openstack_tasks::roles::compute {
memcached_servers => $memcached_addresses,
cinder_catalog_info => pick($nova_hash_real['cinder_catalog_info'], 'volumev2:cinderv2:internalURL'),
rabbit_heartbeat_timeout_threshold => $::os_service_default,
@@ -95,4 +100,5 @@ index c0349dc..46b1801 100644
+ cwd => $nova_path,
+ require => [Package['patch']],
}
-
+
+ class { '::nova::availability_zone':
diff --git a/patches/fuel-library/0009-nova-AArch64-enable-hugepage-support.patch b/patches/fuel-library/arm64-bug-fixes/0004-nova-AArch64-enable-hugepage-support.patch
index 16e06ba8..ab0fb664 100644
--- a/patches/fuel-library/0009-nova-AArch64-enable-hugepage-support.patch
+++ b/patches/fuel-library/arm64-bug-fixes/0004-nova-AArch64-enable-hugepage-support.patch
@@ -17,7 +17,7 @@ Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
diff --git a/deployment/puppet/openstack/files/nova-AArch64-enable-hugepage-support.patch b/deployment/puppet/openstack/files/nova-AArch64-enable-hugepage-support.patch
new file mode 100644
-index 0000000..847cab6
+index 0000000..72d6bfc
--- /dev/null
+++ b/deployment/puppet/openstack/files/nova-AArch64-enable-hugepage-support.patch
@@ -0,0 +1,47 @@
@@ -39,13 +39,13 @@ index 0000000..847cab6
+@@ -156,6 +156,9 @@ def canonicalize(name):
+ if newname == "amd64":
+ newname = X86_64
-+
++
++ if newname == "aarch64":
++ newname = AARCH64
++
+ if not is_valid(newname):
+ raise exception.InvalidArchitectureName(arch=name)
-+
++
+diff --git a/virt/libvirt/driver.py a/virt/libvirt/driver.py
+index bac17cf..0e0bcae 100644
+--- a/virt/libvirt/driver.py
@@ -53,7 +53,7 @@ index 0000000..847cab6
+@@ -5206,7 +5206,7 @@ class LibvirtDriver(driver.ComputeDriver):
+ self._bad_libvirt_numa_version_warn = True
+ return False
-+
++
+- support_matrix = {(arch.I686, arch.X86_64): MIN_LIBVIRT_NUMA_VERSION,
++ support_matrix = {(arch.I686, arch.X86_64, arch.AARCH64): MIN_LIBVIRT_NUMA_VERSION,
+ (arch.PPC64,
@@ -69,10 +69,10 @@ index 0000000..847cab6
+ return ((caps.host.cpu.arch in supported_archs) and
+ self._host.has_min_version(MIN_LIBVIRT_HUGEPAGE_VERSION,
diff --git a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-index 3647f9b..c53409c 100644
+index 2f0f2a8..dc61033 100644
--- a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
+++ b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-@@ -347,6 +347,18 @@ class openstack_tasks::roles::compute {
+@@ -330,6 +330,18 @@ class openstack_tasks::roles::compute {
unless => "patch -p1 -R -N --dry-run < ${nova_path}/libvirt-vga-console.patch",
cwd => $nova_path,
require => [Package['patch']],
@@ -89,5 +89,5 @@ index 3647f9b..c53409c 100644
+ cwd => $nova_path,
+ require => [Package['patch']],
}
-
+
class { '::nova::availability_zone':
diff --git a/patches/fuel-library/0006-upload_cirros-Add-direct-kernel-boot-support.patch b/patches/fuel-library/direct-kernel-boot/0001-upload_cirros-Add-direct-kernel-boot-support.patch
index ab4100c6..f3eb0748 100644
--- a/patches/fuel-library/0006-upload_cirros-Add-direct-kernel-boot-support.patch
+++ b/patches/fuel-library/direct-kernel-boot/0001-upload_cirros-Add-direct-kernel-boot-support.patch
@@ -1,4 +1,4 @@
-From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+From: Stanislaw Kardach <stanislaw.kardach@cavium.com>
Date: Tue, 15 Mar 2016 15:01:34 +0100
Subject: [PATCH] upload_cirros: Add direct kernel boot support.
@@ -8,14 +8,15 @@ images (disk formats `AKI` and `ARI`).
Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com>
---
- .../osnailyfacter/modular/astute/upload_cirros.rb | 52 +++++++++++++++++++++-
- 1 file changed, 50 insertions(+), 2 deletions(-)
+ .../osnailyfacter/modular/astute/upload_cirros.rb | 55 ++++++++++++++++++++--
+ 1 file changed, 51 insertions(+), 4 deletions(-)
diff --git a/deployment/puppet/osnailyfacter/modular/astute/upload_cirros.rb b/deployment/puppet/osnailyfacter/modular/astute/upload_cirros.rb
-index f0441b0..a619f3f 100755
+index f0441b0..371d051 100755
--- a/deployment/puppet/osnailyfacter/modular/astute/upload_cirros.rb
+++ b/deployment/puppet/osnailyfacter/modular/astute/upload_cirros.rb
-@@ -52,11 +52,11 @@ def image_list
+@@ -51,12 +51,12 @@ end
+ def image_list
stdout = `glance --verbose image-list`
return_code = $?.exitstatus
- images = []
@@ -32,7 +33,7 @@ index f0441b0..a619f3f 100755
@@ -78,6 +78,16 @@ EOF
[ stdout, return_code ]
end
-
+
+# Calls glance update-image with a given property and value
+# Supported properties: 'kernel-id', 'ramdisk-id'
+def update_image(image_id, property, value)
@@ -46,7 +47,7 @@ index f0441b0..a619f3f 100755
# check if Glance is online
# waited until the glance is started because when vCenter used as a glance
# backend launch may takes up to 1 minute.
-@@ -133,7 +142,7 @@ end
+@@ -133,7 +143,7 @@ end
# return true if image has been uploaded and active
def check_image(image)
list_of_images = image_list
@@ -55,7 +56,7 @@ index f0441b0..a619f3f 100755
return true
end
return false
-@@ -142,7 +151,7 @@ end
+@@ -144,7 +154,7 @@ end
# the first one
def cleanup_image(image)
list_of_images = image_list
@@ -64,10 +65,10 @@ index f0441b0..a619f3f 100755
delete_image(image['img_name'])
end
end
-@@ -157,6 +166,41 @@ def delete_image(image_name)
+@@ -157,6 +167,41 @@ def delete_image(image_name)
[ stdout, return_code ]
end
-
+
+# For each disk image try to find a kernel and initramfs images and
+# attach then to it via kernel_id and ramdisk_id glance properties.
+def connect_dependant_images(images)
@@ -104,9 +105,9 @@ index f0441b0..a619f3f 100755
+end
+
########################
-
+
wait_for_glance
-@@ -180,6 +226,8 @@ if errors > 0
+@@ -180,6 +225,8 @@ if errors > 0
cleanup_image(image)
end
exit 1
diff --git a/patches/fuel-library/0010-nova-Fix-inject-for-direct-boot-with-part-table.patch b/patches/fuel-library/direct-kernel-boot/0002-nova-Fix-inject-for-direct-boot-with-part-table.patch
index 372386a3..7cc743af 100644
--- a/patches/fuel-library/0010-nova-Fix-inject-for-direct-boot-with-part-table.patch
+++ b/patches/fuel-library/direct-kernel-boot/0002-nova-Fix-inject-for-direct-boot-with-part-table.patch
@@ -10,16 +10,16 @@ to a partition (instead of the whole disk).
[1] https://bugs.launchpad.net/nova/+bug/1290455
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
-Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com>
---
.../openstack/files/nova-libvirt-inject.patch | 44 ++++++++++++++++++++++
- deployment/puppet/openstack_tasks/manifests/roles/compute.pp | 12 ++++++
+ .../openstack_tasks/manifests/roles/compute.pp | 12 ++++++
2 files changed, 56 insertions(+)
create mode 100644 deployment/puppet/openstack/files/nova-libvirt-inject.patch
diff --git a/deployment/puppet/openstack/files/nova-libvirt-inject.patch b/deployment/puppet/openstack/files/nova-libvirt-inject.patch
new file mode 100644
-index 0000000..9cbfe5f
+index 0000000..b86927e
--- /dev/null
+++ b/deployment/puppet/openstack/files/nova-libvirt-inject.patch
@@ -0,0 +1,44 @@
@@ -35,7 +35,7 @@ index 0000000..9cbfe5f
+[1] https://bugs.launchpad.net/nova/+bug/1290455
+
+Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
-+Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
++Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com>
+---
+
+diff --git a/virt/libvirt/driver.py b/virt/libvirt/driver.py
@@ -68,10 +68,12 @@ index 0000000..9cbfe5f
+ if target_partition == 0:
+ target_partition = None
diff --git a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-index 46b1801..d42d6a1 100644
+index dc61033..3fcfb51 100644
--- a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
+++ b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-@@ -281,4 +281,16 @@ class openstack::compute (
+@@ -319,6 +319,18 @@ class openstack_tasks::roles::compute {
+ cinder_catalog_info => pick($nova_hash_real['cinder_catalog_info'], 'volumev2:cinderv2:internalURL'),
+ rabbit_heartbeat_timeout_threshold => $::os_service_default,
} ->
+ # FIXME(armband): Fix inject for part image direct boot (bug LP #1469308)
+ file { "${nova_path}/libvirt-inject.patch":
diff --git a/patches/fuel-library/0001-Add-arm64-templates-to-cobbler-and-nailgun.patch b/patches/fuel-library/multiarch-efi/0001-Add-arm64-templates-to-cobbler-and-nailgun.patch
index 963356b2..262bd994 100644
--- a/patches/fuel-library/0001-Add-arm64-templates-to-cobbler-and-nailgun.patch
+++ b/patches/fuel-library/multiarch-efi/0001-Add-arm64-templates-to-cobbler-and-nailgun.patch
@@ -1,4 +1,4 @@
-From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+From: Stanislaw Kardach <stanislaw.kardach@cavium.com>
Date: Sun, 21 Feb 2016 16:29:52 +0100
Subject: [PATCH] Add arm64 templates to cobbler and nailgun
@@ -11,7 +11,7 @@ Limitation: grub2 needs to be installed directly on the
root (/) of a device or partition, as the MAC-files will
search for /grub/grub.cfg on the available partitions
-Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com>
Signed-off-by: Matei Valeanu <Matei.Valeanu@enea.com>
---
deployment/puppet/cobbler/manifests/server.pp | 36 ++++++++++++++++++++++
@@ -38,7 +38,7 @@ index 891dff7..52936d5 100644
@@ -297,6 +297,42 @@ class cobbler::server (
notify => [Service[$cobbler_service], Exec['cobbler_sync']],
}
-
+
+ file { '/etc/cobbler/pxe/efidefault.template':
+ content => template('cobbler/efidefault.template.erb'),
+ owner => 'root',
@@ -85,7 +85,7 @@ index d70f8de..98278e9 100644
@@ -41,5 +41,7 @@ dhcp-no-override
# by assigning IPs one by one instead of using hash algorithm.
dhcp-sequential-ip
-
+
+dhcp-match=set:arm64,93,11
+dhcp-boot=net:arm64,grub/grub-aarch64.efi,boothost,<%= @next_server %>
dhcp-option=6,<%= @name_server %>
@@ -156,13 +156,13 @@ index 6762153..25f8067 100644
@@ -66,9 +66,11 @@ d-i apt-setup/mirror/error select Retry
# Use network mirror
d-i apt-setup/use_mirror boolean true
-
+
+<% if @arch == 'amd64' %>
# Select architecture to amd64. That's very important to dpkg, since
# by default we have both amd64 and i386.
d-i apt-setup/multiarch string amd64
+<% end %>
-
+
# You can choose to install restricted and universe software, or to install
# software from the backports repository.
diff --git a/deployment/puppet/fuel/manifests/auxiliaryrepos.pp b/deployment/puppet/fuel/manifests/auxiliaryrepos.pp
@@ -170,7 +170,7 @@ index 493ffc6..909fc92 100644
--- a/deployment/puppet/fuel/manifests/auxiliaryrepos.pp
+++ b/deployment/puppet/fuel/manifests/auxiliaryrepos.pp
@@ -53,17 +53,21 @@ class fuel::auxiliaryrepos(
-
+
exec { 'create_ubuntu_repo_dirs':
path => '/bin:/sbin:/usr/bin:/usr/sbin',
- command => "bash -c \"mkdir -p ${ubuntu_dir}/pool/{main,restricted} ${ubuntu_dir}/dists/auxiliary/{main,restricted}/binary-amd64/\"",
@@ -182,7 +182,7 @@ index 493ffc6..909fc92 100644
+ test -d ${ubuntu_dir}/dists/auxiliary/main/binary-arm64 && \
+ test -d ${ubuntu_dir}/dists/auxiliary/restricted/binary-arm64",
}
-
+
exec { 'create_ubuntu_repo_Packages':
path => '/bin:/sbin:/usr/bin:/usr/sbin',
- command => "bash -c \"touch ${ubuntu_dir}/dists/auxiliary/{main,restricted}/binary-amd64/Packages\"",
@@ -193,7 +193,7 @@ index 493ffc6..909fc92 100644
+ test -f ${ubuntu_dir}/dists/auxiliary/main/binary-arm64/Packages && \
+ test -f ${ubuntu_dir}/dists/auxiliary/restricted/binary-arm64/Packages",
}
-
+
file { $release_files:
diff --git a/deployment/puppet/fuel/manifests/cobbler.pp b/deployment/puppet/fuel/manifests/cobbler.pp
index b403733..c89027d 100644
@@ -202,7 +202,7 @@ index b403733..c89027d 100644
@@ -114,12 +114,9 @@ class fuel::cobbler(
require => Class['::cobbler::server'],
}
-
+
- file { '/var/lib/cobbler/kickstarts/ubuntu-amd64.preseed':
- content => template('cobbler/preseed/ubuntu-1404.preseed.erb'),
- owner => 'root',
@@ -213,12 +213,12 @@ index b403733..c89027d 100644
+ path =>'/var/lib/cobbler/kickstarts/ubuntu-amd64.preseed',
+ arch => "amd64",
} ->
-
+
cobbler_distro { 'ubuntu_1404_x86_64':
@@ -132,6 +129,21 @@ class fuel::cobbler(
require => Class['::cobbler::server'],
}
-
+
+ fuel::cobbler::preseed { 'ubuntu_1404_arm64.preseed':
+ path => '/var/lib/cobbler/kickstarts/ubuntu-arm64.preseed',
+ arch => "arm64",
@@ -240,7 +240,7 @@ index b403733..c89027d 100644
@@ -152,6 +164,16 @@ class fuel::cobbler(
require => Cobbler_distro['ubuntu_1404_x86_64'],
}
-
+
+ cobbler_profile { 'ubuntu_1404_arm64':
+ kickstart => '/var/lib/cobbler/kickstarts/ubuntu-arm64.preseed',
+ kopts => 'console=ttyAMA0,115200 console=ttyS0,115200 net.ifnames=0 biosdevname=0 netcfg/choose_interface=eth0 netcfg/dhcp_timeout=120 netcfg/link_detection_timeout=20',
diff --git a/patches/fuel-library/0014-Add-cobbler-grub-aarch64-to-cobbler-dependencies.patch b/patches/fuel-library/multiarch-efi/0002-Add-cobbler-grub-aarch64-to-cobbler-dependencies.patch
index 14d06ef5..14d06ef5 100644
--- a/patches/fuel-library/0014-Add-cobbler-grub-aarch64-to-cobbler-dependencies.patch
+++ b/patches/fuel-library/multiarch-efi/0002-Add-cobbler-grub-aarch64-to-cobbler-dependencies.patch
diff --git a/patches/fuel-library/0003-Make-qemu-kvm-architecture-aware.patch b/patches/fuel-library/multiarch-fuel/0001-Make-qemu-kvm-architecture-aware.patch
index 25ec082e..ef1b8554 100644
--- a/patches/fuel-library/0003-Make-qemu-kvm-architecture-aware.patch
+++ b/patches/fuel-library/multiarch-fuel/0001-Make-qemu-kvm-architecture-aware.patch
@@ -1,4 +1,4 @@
-From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+From: Stanislaw Kardach <stanislaw.kardach@cavium.com>
Date: Wed, 24 Feb 2016 20:07:06 +0100
Subject: [PATCH] Make qemu-kvm architecture aware
@@ -7,10 +7,12 @@ Subject: [PATCH] Make qemu-kvm architecture aware
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-index b2339bc..ca1b2c4 100644
+index 3fcfb51..c53409c 100644
--- a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
+++ b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-@@ -169,7 +169,12 @@ class openstack_tasks::compute (
+@@ -167,9 +167,14 @@ class openstack_tasks::roles::compute {
+ case $::osfamily {
+ 'RedHat': {
# From legacy libvirt.pp
+ # Guard against some exotic distros with their `uname -m`
+ $arch = $::architecture ? {
@@ -23,5 +25,5 @@ index b2339bc..ca1b2c4 100644
+ command => "/bin/ln -sf /usr/libexec/qemu-kvm /usr/bin/qemu-system-${arch}",
+ creates => "/usr/bin/qemu-system-${arch}",
}
-
+
package { 'avahi':
diff --git a/patches/fuel-library/0004-Make-TestVM-creation-architecture-aware.patch b/patches/fuel-library/multiarch-fuel/0002-Make-TestVM-creation-architecture-aware.patch
index 417727ec..325b51d4 100644
--- a/patches/fuel-library/0004-Make-TestVM-creation-architecture-aware.patch
+++ b/patches/fuel-library/multiarch-fuel/0002-Make-TestVM-creation-architecture-aware.patch
@@ -1,7 +1,6 @@
-From ec3299c72eae195106092a646409564b5b3eb560 Mon Sep 17 00:00:00 2001
-From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+From: Stanislaw Kardach <stanislaw.kardach@cavium.com>
Date: Wed, 24 Feb 2016 20:08:24 +0100
-Subject: [PATCH 10/20] Make TestVM creation architecture aware
+Subject: [PATCH] Make TestVM creation architecture aware
This depends on cirros-testvm package to contain both amd64 and arm64
images.
@@ -24,7 +23,7 @@ index 84e202e..cff06e0 100644
+ /(arm64|aarch64)/ => 'aarch64',
+ default => 'x86_64',
+ }
-
+
package { 'cirros-testvm':
ensure => "present"
@@ -17,14 +21,14 @@ class openstack::img::cirros (
@@ -34,7 +33,7 @@ index 84e202e..cff06e0 100644
- command => "/usr/bin/glance -N ${os_auth_url} -T ${os_tenant_name} -I ${os_username} -K ${os_password} add name=${img_name} is_public=${public} container_format=${container_format} disk_format=${disk_format} distro=${os_name} < /opt/vm/cirros-x86_64-disk.img",
+ command => "/usr/bin/glance -N ${os_auth_url} -T ${os_tenant_name} -I ${os_username} -K ${os_password} add name=${img_name} is_public=${public} container_format=${container_format} disk_format=${disk_format} distro=${os_name} < /opt/vm/cirros-${arch}-disk.img",
unless => "/usr/bin/glance -N ${os_auth_url} -T ${os_tenant_name} -I ${os_username} -K ${os_password} index && (/usr/bin/glance -N ${os_auth_url} -T ${os_tenant_name} -I ${os_username} -K ${os_password} index | grep ${img_name})",
-
+
}
}
'Debian': {
@@ -42,7 +41,7 @@ index 84e202e..cff06e0 100644
- command => "/usr/bin/glance -N ${os_auth_url} -T ${os_tenant_name} -I ${os_username} -K ${os_password} add name=${img_name} is_public=${public} container_format=${container_format} disk_format=${disk_format} distro=${os_name} < /usr/share/cirros-testvm/cirros-x86_64-disk.img",
+ command => "/usr/bin/glance -N ${os_auth_url} -T ${os_tenant_name} -I ${os_username} -K ${os_password} add name=${img_name} is_public=${public} container_format=${container_format} disk_format=${disk_format} distro=${os_name} < /usr/share/cirros-testvm/cirros-${arch}-disk.img",
unless => "/usr/bin/glance -N ${os_auth_url} -T ${os_tenant_name} -I ${os_username} -K ${os_password} index && (/usr/bin/glance -N ${os_auth_url} -T ${os_tenant_name} -I ${os_username} -K ${os_password} index | grep ${img_name})",
-
+
}
diff --git a/deployment/puppet/osnailyfacter/manifests/generate_vms/vm_config.pp b/deployment/puppet/osnailyfacter/manifests/generate_vms/vm_config.pp
index 70fef32..dfefcbe 100644
@@ -51,7 +50,7 @@ index 70fef32..dfefcbe 100644
@@ -4,6 +4,17 @@ define osnailyfacter::generate_vms::vm_config(
$details = $name
$id = $details['id']
-
+
+ case $::architecture {
+ 'arm64', 'aarch64': {
+ $machine_arch = 'aarch64'
diff --git a/patches/fuel-library/0002-Add-arm64-for-auxiliary-repos.patch b/patches/fuel-library/multiarch-mirrors/0001-Add-arm64-for-auxiliary-repos.patch
index 2edabc66..6d8b0248 100644
--- a/patches/fuel-library/0002-Add-arm64-for-auxiliary-repos.patch
+++ b/patches/fuel-library/multiarch-mirrors/0001-Add-arm64-for-auxiliary-repos.patch
@@ -1,4 +1,4 @@
-From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+From: Stanislaw Kardach <stanislaw.kardach@cavium.com>
Date: Wed, 24 Feb 2016 20:05:25 +0100
Subject: [PATCH] Add arm64 for auxiliary repos
@@ -20,10 +20,10 @@ index 2d5ce58..03f84b8 100644
Components: main restricted
Description: Auxiliary
diff --git a/deployment/puppet/fuel/manifests/auxiliaryrepos.pp b/deployment/puppet/fuel/manifests/auxiliaryrepos.pp
-index 720943d..91adb3e 100644
+index 909fc92..4ec5d05 100644
--- a/deployment/puppet/fuel/manifests/auxiliaryrepos.pp
+++ b/deployment/puppet/fuel/manifests/auxiliaryrepos.pp
-@@ -40,7 +40,9 @@ class nailgun::auxiliaryrepos(
+@@ -45,7 +45,9 @@ class fuel::auxiliaryrepos(
$release_files = [
"${ubuntu_dir}/dists/auxiliary/Release",
"${ubuntu_dir}/dists/auxiliary/main/binary-amd64/Release",
@@ -31,6 +31,6 @@ index 720943d..91adb3e 100644
+ "${ubuntu_dir}/dists/auxiliary/restricted/binary-amd64/Release",
+ "${ubuntu_dir}/dists/auxiliary/main/binary-arm64/Release",
+ "${ubuntu_dir}/dists/auxiliary/restricted/binary-arm64/Release"]
-
+
Exec['create_ubuntu_repo_dirs'] ->
Exec['create_ubuntu_repo_Packages'] ->
diff --git a/patches/fuel-library/0013-Allow-configuring-MySQL-WSREP-SST-provider.patch b/patches/fuel-library/mysql-sst-provider/0001-Allow-configuring-MySQL-WSREP-SST-provider.patch
index 6d9bc8c7..632aa8f3 100644
--- a/patches/fuel-library/0013-Allow-configuring-MySQL-WSREP-SST-provider.patch
+++ b/patches/fuel-library/mysql-sst-provider/0001-Allow-configuring-MySQL-WSREP-SST-provider.patch
@@ -1,4 +1,4 @@
-From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+From: Stanislaw Kardach <stanislaw.kardach@cavium.com>
Date: Wed, 20 Apr 2016 14:54:42 -0700
Subject: [PATCH] Allow configuring MySQL WSREP SST provider
@@ -15,30 +15,32 @@ This patch is tied to a patch in fuel-web that introduces configuration
options for WSREP SST provider and in case nothing is specified, it
will choose `xtrabackup-v2`.
-Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
+Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com>
---
deployment/puppet/osnailyfacter/manifests/database/database.pp | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/deployment/puppet/osnailyfacter/manifests/database/database.pp b/deployment/puppet/osnailyfacter/manifests/database/database.pp
-index 1755c34..0cfbc8c 100644
+index e741ff8..be19eb5 100644
--- a/deployment/puppet/osnailyfacter/manifests/database/database.pp
+++ b/deployment/puppet/osnailyfacter/manifests/database/database.pp
-@@ -8,4 +8,5 @@ class osnailyfacter::database::database {
+@@ -8,6 +8,7 @@ class osnailyfacter::database::database {
$use_syslog = hiera('use_syslog', true)
$primary_controller = hiera('primary_controller')
$mysql_hash = hiera_hash('mysql', {})
+ $wsrep_hash = hiera_hash('mysql_wsrep', {})
$debug = pick($mysql_hash['debug'], hiera('debug', false))
-@@ -22,6 +23,7 @@ class osnailyfacter::database::database {
-
+
+ $mgmt_iface = get_network_role_property('mgmt/database', 'interface')
+@@ -17,6 +18,7 @@ class osnailyfacter::database::database {
+
$mysql_root_password = $mysql_hash['root_password']
$enabled = pick($mysql_hash['enabled'], true)
+ $wsrep_sst_method = pick($wsrep_hash['wsrep_method'], 'xtrabackup-v2')
-
+
$galera_node_address = get_network_role_property('mgmt/database', 'ipaddr')
$galera_nodes = values(get_node_to_ipaddr_map_by_network_role(hiera_hash('database_nodes'), 'mgmt/database'))
-@@ -216,7 +218,7 @@ class osnailyfacter::database::database {
+@@ -211,7 +213,7 @@ class osnailyfacter::database::database {
'wsrep_cluster_name' => $galera_cluster_name,
'wsrep_provider_options' => $wsrep_provider_options,
'wsrep_slave_threads' => $wsrep_slave_threads,
@@ -47,7 +49,7 @@ index 1755c34..0cfbc8c 100644
#TODO (sgolovatiuk): fix this, should be a specific user not root
'wsrep_sst_auth' => "\"root:${mysql_root_password}\"",
'wsrep_node_address' => $galera_node_address,
-@@ -269,7 +271,7 @@ class osnailyfacter::database::database {
+@@ -264,7 +266,7 @@ class osnailyfacter::database::database {
wsrep_group_comm_port => $wsrep_group_comm_port,
bind_address => $galera_node_address,
local_ip => $galera_node_address,
@@ -55,4 +57,4 @@ index 1755c34..0cfbc8c 100644
+ wsrep_sst_method => $wsrep_sst_method,
override_options => $override_options,
}
-
+
diff --git a/patches/fuel-library/0015-Set-net.ipv4.ip_nonlocal_bind-1-for-vrouter-namespace.patch b/patches/fuel-library/upstream-backports/0001-Set-net.ipv4.ip_nonlocal_bind-1-for-vrouter-namespac.patch
index 86318bb0..281ef231 100644
--- a/patches/fuel-library/0015-Set-net.ipv4.ip_nonlocal_bind-1-for-vrouter-namespace.patch
+++ b/patches/fuel-library/upstream-backports/0001-Set-net.ipv4.ip_nonlocal_bind-1-for-vrouter-namespac.patch
@@ -15,21 +15,21 @@ index cdd814c..49cbd17 100644
--- a/files/fuel-ha-utils/ocf/ns_dns
+++ b/files/fuel-ha-utils/ocf/ns_dns
@@ -140,7 +140,7 @@ exit $OCF_SUCCESS
-
+
check_ns() {
local ns=`ip netns list | grep "$OCF_RESKEY_ns"`
- [ $ns != $OCF_RESKEY_ns ] && return $OCF_ERR_GENERIC
+ [ "$ns" != $OCF_RESKEY_ns ] && return $OCF_ERR_GENERIC
return $OCF_SUCCESS
}
-
+
@@ -150,6 +150,7 @@ get_ns() {
-
+
ocf_run ip netns add $OCF_RESKEY_ns
rc=$?
+ ocf_run $RUN_IN_NS /sbin/sysctl -w net.ipv4.ip_nonlocal_bind=1
ocf_run $RUN_IN_NS ip link set up dev lo
-
+
return $rc
diff --git a/files/fuel-ha-utils/ocf/ns_vrouter b/files/fuel-ha-utils/ocf/ns_vrouter
index a65e9cf..5cc6c98 100644
@@ -43,12 +43,12 @@ index a65e9cf..5cc6c98 100644
+ [[ "$ns" != $OCF_RESKEY_ns ]] && return $OCF_ERR_GENERIC
return $OCF_SUCCESS
}
-
+
@@ -197,6 +197,7 @@ get_ns() {
-
+
ocf_run ip netns add $OCF_RESKEY_ns
rc=$?
+ ocf_run $RUN_IN_NS /sbin/sysctl -w net.ipv4.ip_nonlocal_bind=1
ocf_run $RUN_IN_NS ip link set up dev lo
ocf_log debug "${LH} added netns ${OCF_RESKEY_ns} and set up lo"
-
+
diff --git a/patches/fuel-library/0017-Always-wait-for-MySQL-sync-on-service-refresh.patch b/patches/fuel-library/upstream-backports/0002-Always-wait-for-MySQL-sync-on-service-refresh.patch
index e0704110..d7fac948 100644
--- a/patches/fuel-library/0017-Always-wait-for-MySQL-sync-on-service-refresh.patch
+++ b/patches/fuel-library/upstream-backports/0002-Always-wait-for-MySQL-sync-on-service-refresh.patch
@@ -1,6 +1,6 @@
From: dmburmistrov <dmburmistrov@mirantis.com>
Date: Thu, 18 Aug 2016 21:30:26 +0300
-Subject: Always wait for MySQL sync on service refresh
+Subject: [PATCH] Always wait for MySQL sync on service refresh
Always trigger Exec['wait-for-sync'] on
MySQL service refresh.
@@ -14,21 +14,21 @@ Change-Id: I82ec0d46eff217daedc1bd07c67069498c515c44
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/deployment/puppet/cluster/manifests/mysql.pp b/deployment/puppet/cluster/manifests/mysql.pp
-index 0b766c5..055b931 100644
+index c36b65d..f483cf6 100644
--- a/deployment/puppet/cluster/manifests/mysql.pp
+++ b/deployment/puppet/cluster/manifests/mysql.pp
-@@ -111,7 +111,7 @@ class cluster::mysql (
+@@ -104,7 +104,7 @@ class cluster::mysql (
require => Package['mysql-server'],
} ~>
-
+
- exec { 'wait-initial-sync':
+ exec { 'wait-for-sync':
path => '/bin:/sbin:/usr/bin:/usr/sbin',
command => "mysql ${user_password_string} -Nbe \"show status like 'wsrep_local_state_comment'\" | grep -q -e Synced && sleep 10",
try_sleep => 10,
-@@ -126,7 +126,7 @@ class cluster::mysql (
+@@ -119,7 +119,7 @@ class cluster::mysql (
}
-
+
Exec['create-init-file'] ->
- Service<| title == $service_name |> ->
- Exec['wait-initial-sync'] ->
@@ -37,17 +37,17 @@ index 0b766c5..055b931 100644
Exec['rm-init-file']
}
diff --git a/deployment/puppet/cluster/spec/classes/cluster_mysql_spec.rb b/deployment/puppet/cluster/spec/classes/cluster_mysql_spec.rb
-index be00056..e4d62c4 100644
+index cf2c719..72c8c2f 100644
--- a/deployment/puppet/cluster/spec/classes/cluster_mysql_spec.rb
+++ b/deployment/puppet/cluster/spec/classes/cluster_mysql_spec.rb
-@@ -39,12 +39,16 @@ describe 'cluster::mysql' do
+@@ -34,12 +34,16 @@ describe 'cluster::mysql' do
/'username'@'localhost' IDENTIFIED BY 'password'/
)
should contain_exec('create-init-file').that_comes_before('Service[mysqld]')
- should contain_exec('create-init-file').that_notifies('Exec[wait-initial-sync]')
+ should contain_exec('create-init-file').that_notifies('Exec[wait-for-sync]')
end
-
+
it 'creates exec to remove init-file' do
should contain_exec('rm-init-file')
end
@@ -56,5 +56,5 @@ index be00056..e4d62c4 100644
+ should contain_exec('wait-for-sync').that_subscribes_to('Service[mysqld]')
+ end
end
-
+
end
diff --git a/patches/fuel-library/0018-Fix-MySQL-logging-dir-permissions-for-syslog.patch b/patches/fuel-library/upstream-backports/0003-Fix-MySQL-logging-dir-permissions-for-syslog.patch
index da6acac8..7dfede1b 100644
--- a/patches/fuel-library/0018-Fix-MySQL-logging-dir-permissions-for-syslog.patch
+++ b/patches/fuel-library/upstream-backports/0003-Fix-MySQL-logging-dir-permissions-for-syslog.patch
@@ -1,6 +1,6 @@
From: Maksim Malchuk <mmalchuk@mirantis.com>
Date: Wed, 24 Aug 2016 00:15:02 +0300
-Subject: Fix MySQL logging dir permissions for syslog
+Subject: [PATCH] Fix MySQL logging dir permissions for syslog
This change fixes permissions for MySQL logging directory to enable
syslogd create and write logs files into it.
@@ -22,7 +22,7 @@ index f483cf6..7bc8874 100644
@@ -118,8 +118,16 @@ class cluster::mysql (
onlyif => 'test -f /tmp/wsrep-init-file',
}
-
+
+ file { 'fix-log-dir':
+ ensure => directory,
+ path => '/var/log/mysql',
@@ -51,11 +51,11 @@ index 72c8c2f..ad3fc1b 100644
+ should contain_exec('create-init-file').that_comes_before('File[fix-log-dir]')
should contain_exec('create-init-file').that_notifies('Exec[wait-for-sync]')
end
-
+
@@ -41,6 +41,15 @@ describe 'cluster::mysql' do
should contain_exec('rm-init-file')
end
-
+
+ it 'should have correct permissions for logging directory' do
+ should contain_file('fix-log-dir').with(
+ :ensure => 'directory',
@@ -75,7 +75,7 @@ index d4ad8d0..2c4c5c5 100644
@@ -261,6 +261,15 @@ describe manifest do
)
end
-
+
+ it 'should have correct permissions for logging directory' do
+ should contain_file('fix-log-dir').with(
+ :ensure => 'directory',