diff options
Diffstat (limited to 'patches')
14 files changed, 96 insertions, 807 deletions
diff --git a/patches/fuel-library/0013-Allow-configuring-MySQL-WSREP-SST-provider.patch b/patches/fuel-library/0013-Allow-configuring-MySQL-WSREP-SST-provider.patch deleted file mode 100644 index 6d9bc8c7..00000000 --- a/patches/fuel-library/0013-Allow-configuring-MySQL-WSREP-SST-provider.patch +++ /dev/null @@ -1,58 +0,0 @@ -From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com> -Date: Wed, 20 Apr 2016 14:54:42 -0700 -Subject: [PATCH] Allow configuring MySQL WSREP SST provider - -On some arm64 platforms xtrabackup is broken due to an outdated -MySQL/InnoDB code that it uses which is missing. To work around that -this patch allows choosing which WSREP SST provider to use. Aside of -already supported `xtrabackup-v2` and `mysqldump`, the `rsync` method -has been added as it is comparable to xtrabackup in terms of speed (or -is faster), has been validated to work on arm64 platforms where -xtrabackup is broken and it doesn't rely on db mechanisms to perform the -state transfer. - -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> ---- - 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 ---- a/deployment/puppet/osnailyfacter/manifests/database/database.pp -+++ b/deployment/puppet/osnailyfacter/manifests/database/database.pp -@@ -8,4 +8,5 @@ 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 { - - $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 { - 'wsrep_cluster_name' => $galera_cluster_name, - 'wsrep_provider_options' => $wsrep_provider_options, - 'wsrep_slave_threads' => $wsrep_slave_threads, -- 'wsrep_sst_method' => 'xtrabackup-v2', -+ 'wsrep_sst_method' => $wsrep_sst_method, - #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 { - wsrep_group_comm_port => $wsrep_group_comm_port, - bind_address => $galera_node_address, - local_ip => $galera_node_address, -- wsrep_sst_method => 'xtrabackup-v2', -+ wsrep_sst_method => $wsrep_sst_method, - override_options => $override_options, - } - diff --git a/patches/fuel-web/0006-Add-configuration-item-for-WSREP-SST-provider.patch b/patches/fuel-web/0006-Add-configuration-item-for-WSREP-SST-provider.patch deleted file mode 100644 index 87f0a2fd..00000000 --- a/patches/fuel-web/0006-Add-configuration-item-for-WSREP-SST-provider.patch +++ /dev/null @@ -1,45 +0,0 @@ -From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com> -Date: Wed, 20 Apr 2016 15:05:15 -0700 -Subject: [PATCH] Add configuration item for WSREP SST provider - -This patch adds a radio button in "OpenStack Services" tab of the -environment settings to configure which WSREP SST provider to use for -MySQL. - -Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com> ---- - nailgun/nailgun/fixtures/openstack.yaml | 21 +++++++++++++++++++++ - 1 file changed, 21 insertions(+) - -diff --git a/nailgun/nailgun/fixtures/openstack.yaml b/nailgun/nailgun/fixtures/openstack.yaml -index 62e6b73..4b123b9 100644 ---- a/nailgun/nailgun/fixtures/openstack.yaml -+++ b/nailgun/nailgun/fixtures/openstack.yaml -@@ -918,6 +918,27 @@ - description: "Name for Mongo replication set" - weight: 30 - type: "text" -+ mysql_wsrep: -+ metadata: -+ label: "Database configuration" -+ weight: 15 -+ group: "openstack_services" -+ wsrep_method: -+ value: "xtrabackup-v2" -+ label: "WSREP SST provider" -+ description: "This setting changes the wsrep_sst_method switch in the MySQL Galera cluster configuration." -+ weight: 10 -+ type: "radio" -+ values: -+ - data: "xtrabackup-v2" -+ label: "xtrabackup-v2" -+ description: "Use Percona xtrabackup v2 provider. This is broken on some ARM64 platforms due to outdated MySQL/InnoDB code used by xtrabackup." -+ - data: "rsync" -+ label: "rsync" -+ description: "Use rsync provider. Use if xtrabackup is broken on your platform." -+ - data: "mysqldump" -+ label: "mysqldump" -+ description: "Use mysqldump provider (untested)." - additional_components: - metadata: - label: "Additional Components" diff --git a/patches/opnfv-fuel/0002-deploy-Delete-old-Fuel-env-if-present.patch b/patches/opnfv-fuel/0002-deploy-Delete-old-Fuel-env-if-present.patch deleted file mode 100644 index e7867d48..00000000 --- a/patches/opnfv-fuel/0002-deploy-Delete-old-Fuel-env-if-present.patch +++ /dev/null @@ -1,58 +0,0 @@ -From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> -Date: Mon, 18 Jul 2016 17:42:48 +0200 -Subject: [PATCH] deploy: Delete old Fuel env if present - -In order to clean up old partitioning and boot entries on target -nodes, before removing the Fuel Master, try ssh-ing into it and -removing all environments/nodes. - -This is especially important for EFI systems, where old boot -entries are left behind without a proper env delete, leading to -target nodes failing to PXE boot on Fuel Master re-install. - -This change assumes that: -- all Fuel Master information is unchanged between old and new - deploy (fuel IP, password etc.); -- Fuel Master is up and running, in a sane state (target nodes - are also online), when deploy starts; - -Closes: ARMBAND-51 - -Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> ---- - deploy/deploy.py | 15 +++++++++++++++ - 1 file changed, 15 insertions(+) - -diff --git a/deploy/deploy.py b/deploy/deploy.py -index 48a53c3..184510f 100755 ---- a/deploy/deploy.py -+++ b/deploy/deploy.py -@@ -110,6 +110,20 @@ class AutoDeploy(object): - self.iso_file = new_iso - self.install_iso() - -+ def delete_old_fuel_env(self): -+ log('Delete old Fuel Master environments if present') -+ try: -+ old_dep = CloudDeploy(self.dea, self.dha, self.fuel_conf['ip'], -+ self.fuel_username, self.fuel_password, -+ self.dea_file, self.fuel_plugins_conf_dir, -+ WORK_DIR, self.no_health_check, -+ self.deploy_timeout, -+ self.no_deploy_environment, self.deploy_log) -+ with old_dep.ssh: -+ old_dep.check_previous_installation() -+ except Exception as e: -+ log('Could not delete old env: %s' % str(e)) -+ - def install_iso(self): - fuel = InstallFuelMaster(self.dea_file, self.dha_file, - self.fuel_conf['ip'], self.fuel_username, -@@ -227,6 +241,7 @@ class AutoDeploy(object): - def deploy(self): - self.collect_fuel_info() - if not self.no_fuel: -+ self.delete_old_fuel_env() - self.setup_execution_environment() - self.create_tmp_dir() - self.install_fuel_master() diff --git a/patches/opnfv-fuel/0003-deploy.sh-accept-a-timeout-flag-T.patch b/patches/opnfv-fuel/0003-deploy.sh-accept-a-timeout-flag-T.patch deleted file mode 100644 index 641891bb..00000000 --- a/patches/opnfv-fuel/0003-deploy.sh-accept-a-timeout-flag-T.patch +++ /dev/null @@ -1,86 +0,0 @@ -From 0ca4dada5b3528c84f2edcb7f1a2df8f0a18779d Mon Sep 17 00:00:00 2001 -From: Josep Puigdemont <josep.puigdemont@enea.com> -Date: Mon, 9 May 2016 11:05:58 +0200 -Subject: [PATCH] deploy.sh: accept a timeout flag (-T) - -Change-Id: I58a7b9bc639bb03b994ea34fc317f5679140d9fd -Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com> ---- - ci/deploy.sh | 19 +++++++++++++++---- - 1 file changed, 15 insertions(+), 4 deletions(-) - -diff --git a/ci/deploy.sh b/ci/deploy.sh -index 4e4586c..8411714 100755 ---- a/ci/deploy.sh -+++ b/ci/deploy.sh -@@ -29,7 +29,7 @@ cat << EOF - xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx - `basename $0`: Deploys the Fuel@OPNFV stack - --usage: `basename $0` -b base-uri [-B PXE Bridge] [-f] [-F] [-H] -l lab-name -p pod-name -s deploy-scenario [-S image-dir] -i iso -+usage: `basename $0` -b base-uri [-B PXE Bridge] [-f] [-F] [-H] -l lab-name -p pod-name -s deploy-scenario [-S image-dir] [-T timeout] -i iso - -s deployment-scenario [-S optional Deploy-scenario path URI] - [-R optional local relen repo (containing deployment Scenarios] - -@@ -47,6 +47,7 @@ OPTIONS: - -p Pod-name - -s Deploy-scenario short-name/base-file-name - -S Storage dir for VM images -+ -T Timeout, in minutes, for the deploy. - -i iso url - - Description: -@@ -78,6 +79,8 @@ Input parameters to the build script is: - or a deployment short-name as defined by scenario.yaml in the deployment - scenario path. - -S Storage dir for VM images, default is fuel/deploy/images -+-T Timeout, in minutes, for the deploy. It defaults to using the DEPLOY_TIMEOUT -+ environment variable when defined, or to the default in deploy.py otherwise - -i .iso image to be deployed (needs to be provided in a URI - style, it can be a local resource: file:// or a remote resource http(s)://) - -@@ -116,6 +119,11 @@ FUEL_CREATION_ONLY='' - NO_DEPLOY_ENVIRONMENT='' - STORAGE_DIR='' - DRY_RUN=0 -+if ! [ -z $DEPLOY_TIMEOUT ]; then -+ DEPLOY_TIMEOUT="-dt $DEPLOY_TIMEOUT" -+else -+ DEPLOY_TIMEOUT="" -+fi - # - # END of variables to customize - ############################################################################ -@@ -123,7 +131,7 @@ DRY_RUN=0 - ############################################################################ - # BEGIN of main - # --while getopts "b:B:dfFHl:L:p:s:S:i:he" OPTION -+while getopts "b:B:dfFHl:L:p:s:S:T:i:he" OPTION - do - case $OPTION in - b) -@@ -174,6 +182,9 @@ do - STORAGE_DIR="-s ${OPTARG}" - fi - ;; -+ T) -+ DEPLOY_TIMEOUT="-dt ${OPTARG}" -+ ;; - i) - ISO=${OPTARG} - if [[ ! $ISO == file://* ]] && \ -@@ -243,8 +254,8 @@ if [ $DRY_RUN -eq 0 ]; then - ISO=${SCRIPT_PATH}/ISO/image.iso - fi - # Start deployment -- echo "python deploy.py $DEPLOY_LOG $STORAGE_DIR $PXE_BRIDGE $USE_EXISTING_FUEL $FUEL_CREATION_ONLY $NO_HEALTH_CHECK $NO_DEPLOY_ENVIRONMENT -dea ${SCRIPT_PATH}/config/dea.yaml -dha ${SCRIPT_PATH}/config/dha.yaml -iso $ISO" -- python deploy.py $DEPLOY_LOG $STORAGE_DIR $PXE_BRIDGE $USE_EXISTING_FUEL $FUEL_CREATION_ONLY $NO_HEALTH_CHECK $NO_DEPLOY_ENVIRONMENT -dea ${SCRIPT_PATH}/config/dea.yaml -dha ${SCRIPT_PATH}/config/dha.yaml -iso $ISO -+ echo "python deploy.py $DEPLOY_LOG $STORAGE_DIR $PXE_BRIDGE $USE_EXISTING_FUEL $FUEL_CREATION_ONLY $NO_HEALTH_CHECK $NO_DEPLOY_ENVIRONMENT -dea ${SCRIPT_PATH}/config/dea.yaml -dha ${SCRIPT_PATH}/config/dha.yaml -iso $ISO $DEPLOY_TIMEOUT" -+ python deploy.py $DEPLOY_LOG $STORAGE_DIR $PXE_BRIDGE $USE_EXISTING_FUEL $FUEL_CREATION_ONLY $NO_HEALTH_CHECK $NO_DEPLOY_ENVIRONMENT -dea ${SCRIPT_PATH}/config/dea.yaml -dha ${SCRIPT_PATH}/config/dha.yaml -iso $ISO $DEPLOY_TIMEOUT - fi - popd > /dev/null - --- -2.5.5 - diff --git a/patches/opnfv-fuel/0005-transplant-Generate-extra-interfaces-config-file.patch b/patches/opnfv-fuel/0005-transplant-Generate-extra-interfaces-config-file.patch deleted file mode 100644 index 76c27163..00000000 --- a/patches/opnfv-fuel/0005-transplant-Generate-extra-interfaces-config-file.patch +++ /dev/null @@ -1,108 +0,0 @@ -From: Josep Puigdemont <josep.puigdemont@enea.com> -Date: Wed, 4 May 2016 17:58:56 +0200 -Subject: [PATCH] transplant: Generate extra interfaces config file - -The DEA override may contain a IFCGF_<interface> section in its 'fuel:' -section, containing the necessary keys to produce a ifcfg-<interface> -file, like in this example: - -fuel: - IFCFG_ETH1: - device: eth1 - ipaddress: 10.0.1.10 - netmask: 255.255.255.0 - gateway: 10.0.1.254 - -FIXME: In order for Network Manager to use the newly added interfaces -for outgoing traffic and honor their GATEWAY setting (e.g. if we just -added one public interface), the default route on admin iface (most of -the time called eth0) should be disabled. For now, we assume the admin -interface is always "eth0". - -Change-Id: I0457dc9a0d49e46b8ca85cfe7a4435c2b15f5238 -Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com> -Signed-off-by: Alexandu Avadanii <alexandru.avadanii@enea.com> ---- - deploy/transplant_fuel_settings.py | 37 +++++++++++++++++++++++++++++++++++++ - 1 file changed, 37 insertions(+) - -diff --git a/deploy/transplant_fuel_settings.py b/deploy/transplant_fuel_settings.py -index e57a4fb..9a65cf6 100644 ---- a/deploy/transplant_fuel_settings.py -+++ b/deploy/transplant_fuel_settings.py -@@ -11,10 +11,14 @@ - import sys - import io - import yaml -+import re -+import os - from dea import DeploymentEnvironmentAdapter - - from common import ( - check_file_exists, -+ exec_cmd, -+ log, - ) - - ASTUTE_YAML = '/etc/fuel/astute.yaml' -@@ -35,15 +39,45 @@ def parse_arguments(): - check_file_exists(dea_file) - return dea_file - -+def write_ifcfg_file(key, fuel_conf): -+ config = ('BOOTPROTO=none\n' -+ 'ONBOOT=yes\n' -+ 'TYPE=Ethernet\n' -+ 'NM_CONTROLLED=yes\n') -+ for skey in ('ipaddress', 'device', 'netmask', 'gateway'): -+ if not fuel_conf[key].get(skey): -+ log('Warning: missing key %s for %s' % (skey, key)) -+ config += '%s=\n' % skey.upper() -+ elif skey == 'ipaddress': -+ config += 'IPADDR=%s\n' % fuel_conf[key][skey] -+ else: -+ config += '%s=%s\n' % (skey.upper(), fuel_conf[key][skey]) -+ -+ fname = os.path.join('/etc/sysconfig/network-scripts/', -+ key.lower().replace('_','-')) -+ with open(fname, 'wc') as f: -+ f.write(config) - - def transplant(dea, astute): - fuel_conf = dea.get_fuel_config() -+ require_network_restart = False - for key in fuel_conf.iterkeys(): - if key == 'ADMIN_NETWORK': - for skey in fuel_conf[key].iterkeys(): - astute[key][skey] = fuel_conf[key][skey] -+ elif re.match('^IFCFG', key): -+ log('Adding interface configuration for: %s' % key.lower()) -+ require_network_restart = True -+ write_ifcfg_file(key, fuel_conf) -+ if astute.has_key(key): -+ astute.pop(key, None) - else: - astute[key] = fuel_conf[key] -+ if require_network_restart: -+ admin_ifcfg = '/etc/sysconfig/network-scripts/ifcfg-eth0' -+ exec_cmd('echo "DEFROUTE=no" >> %s' % admin_ifcfg) -+ log('At least one interface was reconfigured, restart network manager') -+ exec_cmd('systemctl restart network') - return astute - - -@@ -51,11 +85,14 @@ def main(): - check_file_exists(ASTUTE_YAML) - check_file_exists(FUEL_BOOTSTRAP_CLI_YAML) - dea = DeploymentEnvironmentAdapter(dea_file) -+ log('Reading astute file %s' % ASTUTE_YAML) - with io.open(ASTUTE_YAML) as stream: - astute = yaml.load(stream) -+ log('Initiating transplant') - transplant(dea, astute) - with io.open(ASTUTE_YAML, 'w') as stream: - yaml.dump(astute, stream, default_flow_style=False) -+ log('Transplant done') - # Update bootstrap config yaml with info from DEA/astute.yaml - with io.open(FUEL_BOOTSTRAP_CLI_YAML) as stream: - fuel_bootstrap_cli = yaml.load(stream) diff --git a/patches/opnfv-fuel/0008-deploy-reap.py-Dump-extra-interfaces-information.patch b/patches/opnfv-fuel/0008-deploy-reap.py-Dump-extra-interfaces-information.patch deleted file mode 100644 index 9ed79cc4..00000000 --- a/patches/opnfv-fuel/0008-deploy-reap.py-Dump-extra-interfaces-information.patch +++ /dev/null @@ -1,97 +0,0 @@ -From e8232eca62d67c2bac1d34f5b2adfeba1a580634 Mon Sep 17 00:00:00 2001 -From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> -Date: Wed, 4 May 2016 18:31:09 +0200 -Subject: [PATCH] deploy/reap.py: Dump extra interfaces information. - -Since on AArch64, Ubuntu local mirror lacks arm64 packages (see [1]), -Fuel master requires internet connectivity during deploy, and hence -a way to setup such a public (extra) interface automatically. - -Previous commit "transplant: Generate extra interfaces config file" -introduced support for passing this information via DEA (override), -which may define a IFCGF_<interface> section in its 'fuel:' -section, containing the necessary keys to produce a ifcfg-<interface> -file, like in this example: - -fuel: - IFCFG_ETH1: - device: eth1 - ipaddress: 10.0.1.10 - netmask: 255.255.255.0 - gateway: 10.0.1.254 - -In order for Network Manager to use the newly added interfaces -for outgoing traffic and honor their GATEWAY setting (e.g. if we just -added one public interface), the default route on admin iface (most of -the time called eth0) is disabled when extra interfaces are present. - -FIXME: Only supports lowercase interface names, but so does Fuel, -see related bug report [2]. - -[1] https://jira.opnfv.org/browse/ARMBAND-35 -[2] https://jira.opnfv.org/browse/FUEL-136 - -Change-Id: I6f0a759c65a435ec8bd883a04c8d1adca109cc13 -Signed-off-by: Alexandu Avadanii <alexandru.avadanii@enea.com> -Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com> ---- - deploy/reap.py | 34 ++++++++++++++++++++++++++++++++++ - 1 file changed, 34 insertions(+) - -diff --git a/deploy/reap.py b/deploy/reap.py -index ed5bc99..9f14e35 100644 ---- a/deploy/reap.py -+++ b/deploy/reap.py -@@ -15,6 +15,8 @@ import yaml - import glob - import shutil - import tempfile -+import re -+import netaddr - - from common import ( - N, -@@ -248,6 +250,40 @@ class Reap(object): - if key not in ['ipaddress', 'netmask', - 'dhcp_pool_start', 'dhcp_pool_end', 'ssh_network']: - del fuel['ADMIN_NETWORK'][key] -+ -+ ## FIXME(armband): Factor in support for adding public/other interfaces. -+ ## TODO: Following block expects interface name(s) to be lowercase only -+ interfaces_list = exec_cmd('ip -o -4 a | grep -e "e[nt][hopsx].*"') -+ for interface in re.split('\n', interfaces_list): -+ # Sample output line from above cmd: -+ # 3: eth1 inet 10.0.2.10/24 scope global eth1 valid_lft forever ... -+ ifcfg = re.split(r'\s+', interface) -+ ifcfg_name = ifcfg[1] -+ ifcfg_ipaddr = ifcfg[3] -+ -+ # Filter out admin interface (device name is not known, match IP) -+ current_network = netaddr.IPNetwork(ifcfg_ipaddr) -+ if str(current_network.ip) == fuel['ADMIN_NETWORK']['ipaddress']: -+ continue -+ -+ # Read ifcfg-* network interface config file, write IFCFG_<IFNAME> -+ ifcfg_sec = 'IFCFG_%s' % ifcfg_name.upper() -+ fuel[ifcfg_sec] = {} -+ ifcfg_data = {} -+ ifcfg_f = ('/etc/sysconfig/network-scripts/ifcfg-%s' % ifcfg_name) -+ with open(ifcfg_f) as f: -+ for line in f: -+ if line.startswith('#'): -+ continue -+ (key, val) = line.split('=') -+ ifcfg_data[key.lower()] = val.rstrip() -+ -+ # Keep only needed info (e.g. filter-out type=Ethernet). -+ fuel[ifcfg_sec]['ipaddress'] = ifcfg_data['ipaddr'] -+ fuel[ifcfg_sec]['device'] = ifcfg_data['device'] -+ fuel[ifcfg_sec]['netmask'] = str(current_network.netmask) -+ fuel[ifcfg_sec]['gateway'] = ifcfg_data['gateway'] -+ - self.write_yaml(self.dea_file, {'fuel': fuel}) - - def reap_network_settings(self): --- -2.5.5 - diff --git a/patches/opnfv-fuel/0036-repo-mirror-Allow-multi-arch-local-mirrors.patch b/patches/opnfv-fuel/0036-repo-mirror-Allow-multi-arch-local-mirrors.patch deleted file mode 100644 index 45ebb4e9..00000000 --- a/patches/opnfv-fuel/0036-repo-mirror-Allow-multi-arch-local-mirrors.patch +++ /dev/null @@ -1,136 +0,0 @@ -From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> -Date: Sat, 18 Jun 2016 19:42:15 +0200 -Subject: [PATCH] repo mirror: Allow multi-arch local mirrors - -This patch allows specifying multiple architectures via UBUNTU_ARCH in -form of a list of space separated architectures. The first architecture -in the list is considered primary and will be used for building all the -deb packages by fuel-main. Additional architectures are added to allow -targets of other architectures to use the mirror. - -NOTE: this imposes a requirement that all packages built are arch -independent (which is true so far). - -[ Alexandru Avadanii ] -Reworked for applying on top of fuel@OPNFV. -Pass UBUNTU_ARCH to Docker containers. - -Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com> -Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> ---- - build/Makefile | 1 + - build/docker/Dockerfile | 2 +- - build/docker/runcontext | 8 ++++- - build/repo-multi-arch-local-mirrors.patch | 59 +++++++++++++++++++++++++++++++ - 4 files changed, 68 insertions(+), 2 deletions(-) - create mode 100644 build/repo-multi-arch-local-mirrors.patch - -diff --git a/build/Makefile b/build/Makefile -index 95b1487..829a231 100644 ---- a/build/Makefile -+++ b/build/Makefile -@@ -135,6 +135,7 @@ $(ISOCACHE): - cd /tmp/fuel-main && git am $(TOPDIR)/bootstrap_admin_node.sh.patch - cd /tmp/fuel-main && git am $(TOPDIR)/isolinux.cfg.patch - cd /tmp/fuel-main/build/repos/fuel-nailgun && git am $(TOPDIR)/Mark-Intel-82599-10-Gigabit-NIC-as-DPDK-capable.patch -+ cd /tmp/fuel-main && git am $(TOPDIR)/repo-multi-arch-local-mirrors.patch - # Repeat build up to three times - sudo -E ./fuel_build_loop - cp /tmp/fuel-main/build/artifacts/fuel*.iso . -diff --git a/build/docker/Dockerfile b/build/docker/Dockerfile -index 1bb56b7..b38ea4c 100644 ---- a/build/docker/Dockerfile -+++ b/build/docker/Dockerfile -@@ -30,7 +30,7 @@ RUN echo "Defaults env_keep += \"ftp_proxy http_proxy https_proxy no_proxy RSYNC - # Keeping PWD is needed to build as root - RUN echo "Defaults env_keep += \"PWD\"" > /etc/sudoers.d/keep-pwd - # Keeping variables for ISO build --RUN echo "Defaults env_keep += \"MIRROR_UBUNTU MIRROR_UBUNTU_ROOT MIRROR_MOS_UBUNTU MIRROR_MOS_UBUNTU_ROOT MIRROR_FUEL LATEST_TARGET_UBUNTU\"" > /etc/sudoers.d/keep-mos -+RUN echo "Defaults env_keep += \"MIRROR_UBUNTU MIRROR_UBUNTU_ROOT MIRROR_MOS_UBUNTU MIRROR_MOS_UBUNTU_ROOT MIRROR_FUEL LATEST_TARGET_UBUNTU UBUNTU_ARCH\"" > /etc/sudoers.d/keep-mos - RUN chmod 0440 /etc/sudoers.d/open-sudo - RUN chmod 0440 /etc/sudoers.d/keep-proxies - RUN chmod 0440 /etc/sudoers.d/keep-pwd -diff --git a/build/docker/runcontext b/build/docker/runcontext -index 9f07776..daad663 100755 ---- a/build/docker/runcontext -+++ b/build/docker/runcontext -@@ -111,7 +111,13 @@ if [ -n "$CACHEBASE" ]; then - fi - fi - --RUN_CONTEXT_OPT="--cidfile $CID_FILE --privileged=true --rm -e HOME=$HOME -e CACHEDEBUG -e CACHETRANSPORT -e CACHEMAXAGE -e CACHEBASE -e BUILD_FUEL_PLUGINS -e MIRROR_UBUNTU -e MIRROR_UBUNTU_ROOT -e MIRROR_MOS_UBUNTU -e MIRROR_MOS_UBUNTU_ROOT -e MIRROR_FUEL -e LATEST_TARGET_UBUNTU -u $USER_ID:$GROUP_ID -w $PWD -v $GITROOT:$GITROOT -v /sys/fs/cgroup:/sys/fs/cgroup:ro $CACHEMOUNT" -+RUN_CONTEXT_OPT="--cidfile $CID_FILE --privileged=true --rm \ -+ -e HOME=$HOME -e CACHEDEBUG -e CACHETRANSPORT -e CACHEMAXAGE -e CACHEBASE \ -+ -e BUILD_FUEL_PLUGINS -e MIRROR_UBUNTU -e MIRROR_UBUNTU_ROOT \ -+ -e MIRROR_MOS_UBUNTU -e MIRROR_MOS_UBUNTU_ROOT -e MIRROR_FUEL \ -+ -e LATEST_TARGET_UBUNTU -e UBUNTU_ARCH \ -+ -u $USER_ID:$GROUP_ID -w $PWD \ -+ -v $GITROOT:$GITROOT -v /sys/fs/cgroup:/sys/fs/cgroup:ro $CACHEMOUNT" - - # Passing "debug" puts up an interactive bash shell - if [ "$1" == "debug" ]; then -diff --git a/build/repo-multi-arch-local-mirrors.patch b/build/repo-multi-arch-local-mirrors.patch -new file mode 100644 -index 0000000..d404287 ---- /dev/null -+++ b/build/repo-multi-arch-local-mirrors.patch -@@ -0,0 +1,59 @@ -+From: Stanislaw Kardach <stanislaw.kardach@cavium.com> -+Date: Thu, 25 Feb 2016 13:31:19 +0100 -+Subject: repo mirror: Allow multi-arch local mirrors -+ -+This patch allows specifying multiple architectures via UBUNTU_ARCH in -+form of a list of space separated architectures. The first architecture -+in the list is considered primary and will be used for building all the -+deb packages by fuel-main. Additional architectures are added to allow -+targets of other architectures to use the mirror. -+NOTE: this imposes a requirement that all packages built are arch -+independent (which is true so far). -+ -+Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com> -+Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> -+--- -+ mirror/ubuntu/module.mk | 2 +- -+ sandbox.mk | 2 +- -+ config.mk | 2 +- -+ 3 files changed, 3 insertions(+), 3 deletions(-) -+ -+diff --git a/mirror/ubuntu/module.mk b/mirror/ubuntu/module.mk -+index 7a9466e..fe1ada2 100644 -+--- a/mirror/ubuntu/module.mk -++++ b/mirror/ubuntu/module.mk -+@@ -81,7 +81,7 @@ $(BUILD_DIR)/mirror/ubuntu/mirror.done: -+ --root=$(MIRROR_MOS_UBUNTU_ROOT) \ -+ --dist=$(MIRROR_MOS_UBUNTU_SUITE) \ -+ --section=$(subst $(space),$(comma),$(MIRROR_MOS_UBUNTU_SECTION)) \ -+- --arch=$(UBUNTU_ARCH) \ -++ --arch=$(shell echo $(UBUNTU_ARCH) | tr ' ' ',') \ -+ $(LOCAL_MIRROR_UBUNTU)/ -+ rm -rf $(LOCAL_MIRROR_UBUNTU)/.temp $(LOCAL_MIRROR_UBUNTU)/project -+ $(ACTION.TOUCH) -+diff --git a/sandbox.mk b/sandbox.mk -+index 4bc3962..5ffddbd 100644 -+--- a/sandbox.mk -++++ b/sandbox.mk -+@@ -188,7 +188,7 @@ touch $(SANDBOX_UBUNTU)/etc/init.d/.legacy-bootordering -+ mkdir -p $(SANDBOX_UBUNTU)/usr/sbin -+ cp -a $(BUILD_DIR)/policy-rc.d $(SANDBOX_UBUNTU)/usr/sbin -+ echo "Running debootstrap" -+-sudo debootstrap --no-check-gpg --include=ca-certificates --arch=$(UBUNTU_ARCH) $(MIRROR_UBUNTU_SUITE) $(SANDBOX_UBUNTU) $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT) -++sudo debootstrap --no-check-gpg --include=ca-certificates --arch=$(word 1,$(UBUNTU_ARCH)) $(MIRROR_UBUNTU_SUITE) $(SANDBOX_UBUNTU) $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT) -+ if [ -e $(SANDBOX_UBUNTU)/etc/resolv.conf ]; then sudo cp -a $(SANDBOX_UBUNTU)/etc/resolv.conf $(SANDBOX_UBUNTU)/etc/resolv.conf.orig; fi -+ sudo cp /etc/resolv.conf $(SANDBOX_UBUNTU)/etc/resolv.conf -+ if [ -e $(SANDBOX_UBUNTU)/etc/hosts ]; then sudo cp -a $(SANDBOX_UBUNTU)/etc/hosts $(SANDBOX_UBUNTU)/etc/hosts.orig; fi -+diff --git a/config.mk b/config.mk -+index 74ee039..45a3b30 100644 -+--- a/config.mk -++++ b/config.mk -+@@ -49,7 +49,7 @@ UBUNTU_MINOR:=04 -+ UBUNTU_RELEASE_NUMBER:=$(UBUNTU_MAJOR).$(UBUNTU_MINOR) -+ UBUNTU_KERNEL_FLAVOR?=lts-trusty -+ UBUNTU_NETBOOT_FLAVOR?=netboot -+-UBUNTU_ARCH:=amd64 -++UBUNTU_ARCH?=amd64 -+ UBUNTU_IMAGE_RELEASE:=$(UBUNTU_MAJOR)$(UBUNTU_MINOR) -+ SEPARATE_IMAGES?=/boot,ext2 /,ext4 -+ diff --git a/patches/opnfv-fuel/0039-deploy-Fix-add-bootstrap-DEA-override-delay.patch b/patches/opnfv-fuel/0039-deploy-Fix-add-bootstrap-DEA-override-delay.patch index f0016892..94b3071e 100644 --- a/patches/opnfv-fuel/0039-deploy-Fix-add-bootstrap-DEA-override-delay.patch +++ b/patches/opnfv-fuel/0039-deploy-Fix-add-bootstrap-DEA-override-delay.patch @@ -8,18 +8,19 @@ one minute sleep before checking for completition of fuel install. Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> --- - deploy/install_fuel_master.py | 1 + - 1 file changed, 1 insertion(+) + deploy/install_fuel_master.py | 2 ++ + 1 file changed, 2 insertions(+) diff --git a/deploy/install_fuel_master.py b/deploy/install_fuel_master.py -index 808d0b1..609a335 100644 +index 808d0b1..404474c 100644 --- a/deploy/install_fuel_master.py +++ b/deploy/install_fuel_master.py -@@ -201,6 +201,7 @@ class InstallFuelMaster(object): +@@ -201,6 +201,8 @@ class InstallFuelMaster(object): CMD = 'ps -ef | grep %s | grep -v grep' % BOOTSTRAP_ADMIN install_completed = False + time.sleep(60) ++ self.wait_for_node_up() with self.ssh: for i in range(WAIT_LOOP): ret = self.ssh.exec_cmd(CMD) diff --git a/patches/opnfv-fuel/0041-build-Allow-PLUGINS-override.patch b/patches/opnfv-fuel/0041-build-Allow-PLUGINS-override.patch deleted file mode 100644 index acbbc11c..00000000 --- a/patches/opnfv-fuel/0041-build-Allow-PLUGINS-override.patch +++ /dev/null @@ -1,27 +0,0 @@ -From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> -Date: Wed, 10 Aug 2016 16:43:39 +0200 -Subject: [PATCH] build: Allow PLUGINS override - -Instead of using BUILD_FUEL_PLUGINS, which was intended for manual -overrides of the Fule@OPNFV plugin list, allow PLUGINS to be -preset to a custom list, which we will provide via Armband -Makefile spec. - -Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> ---- - build/f_isoroot/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/build/f_isoroot/Makefile b/build/f_isoroot/Makefile -index 4df7bcb..448f415 100644 ---- a/build/f_isoroot/Makefile -+++ b/build/f_isoroot/Makefile -@@ -11,7 +11,7 @@ - # Add Fuel plugin build targets here - # Plugins disabled for the Fuel Mitaka uplift. Please re-enable your plugin as you have - # verified it! --PLUGINS = f_odlpluginbuild f_onosfwpluginbuild f_vsperfpluginbuild f_ovs-nsh-dpdk-pluginbuild f_yardstick-pluginbuild f_kvm-pluginbuild f_bgpvpn-pluginbuild f_collectd-ceilometer-pluginbuild -+PLUGINS ?= f_odlpluginbuild f_onosfwpluginbuild f_vsperfpluginbuild f_ovs-nsh-dpdk-pluginbuild f_yardstick-pluginbuild f_kvm-pluginbuild f_bgpvpn-pluginbuild f_collectd-ceilometer-pluginbuild - #PLUGINS = f_odlpluginbuild f_onosfwpluginbuild f_ovsnfv-dpdk-pluginbuild f_vsperfpluginbuild f_ovs-nsh-dpdk-pluginbuild f_bgpvpn-pluginbuild - export PLUGINS - #NON_8-0_REBASED_PLUGINS = f_bgpvpn-pluginbuild diff --git a/patches/opnfv-fuel/0042-build-Allow-MIRROR_MOS_UBUNTU-override.patch b/patches/opnfv-fuel/0042-build-Allow-MIRROR_MOS_UBUNTU-override.patch deleted file mode 100644 index 37e4d078..00000000 --- a/patches/opnfv-fuel/0042-build-Allow-MIRROR_MOS_UBUNTU-override.patch +++ /dev/null @@ -1,22 +0,0 @@ -From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> -Date: Tue, 16 Aug 2016 18:45:10 +0200 -Subject: [PATCH] build: Allow MIRROR_MOS_UBUNTU override - -Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> ---- - build/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/build/Makefile b/build/Makefile -index 4a4bb2e..6e18ddd 100644 ---- a/build/Makefile -+++ b/build/Makefile -@@ -60,7 +60,7 @@ export MIRROR_UBUNTU_ROOT := $(shell echo -n '/' ; echo "$(MIRROR_UBUNTU_URL)" | - - export LATEST_MIRROR_ID_URL := http://$(shell ./select_closest_fuel_mirror.py) - --export MIRROR_MOS_UBUNTU := $(shell echo "$(LATEST_MIRROR_ID_URL)" | cut -d'/' -f3) -+export MIRROR_MOS_UBUNTU ?= $(shell echo "$(LATEST_MIRROR_ID_URL)" | cut -d'/' -f3) - export LATEST_TARGET_UBUNTU := $(shell curl -sSf "$(MIRROR_MOS_UBUNTU)/mos-repos/ubuntu/$(MOSVERSION).target.txt" | head -1) - export MIRROR_MOS_UBUNTU_ROOT := /mos-repos/ubuntu/$(LATEST_TARGET_UBUNTU) - diff --git a/patches/opnfv-fuel/0044-build-cache-Allow-LOCAL_CACHE_ARCH_NAME-override.patch b/patches/opnfv-fuel/0044-build-cache-Allow-LOCAL_CACHE_ARCH_NAME-override.patch deleted file mode 100644 index e477421d..00000000 --- a/patches/opnfv-fuel/0044-build-cache-Allow-LOCAL_CACHE_ARCH_NAME-override.patch +++ /dev/null @@ -1,22 +0,0 @@ -From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> -Date: Thu, 18 Aug 2016 14:39:08 +0200 -Subject: [PATCH] build: cache: Allow LOCAL_CACHE_ARCH_NAME override - -Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> ---- - ci/build.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ci/build.sh b/ci/build.sh -index 62abba1..82049cd 100755 ---- a/ci/build.sh -+++ b/ci/build.sh -@@ -111,7 +111,7 @@ SCRIPT_DIR=$(readlink -f $(dirname ${BASH_SOURCE[0]})) - BUILD_BASE=$(readlink -e ${SCRIPT_DIR}/../build/) - RESULT_DIR="${BUILD_BASE}/release" - BUILD_SPEC="${BUILD_BASE}/config.mk" --LOCAL_CACHE_ARCH_NAME="fuel-cache" -+LOCAL_CACHE_ARCH_NAME="${LOCAL_CACHE_ARCH_NAME:-fuel-cache}" - - # - # END of variables to customize diff --git a/patches/opnfv-fuel/0045-build-cache-Consider-UBUNTU_ARCH-in-.cacheid.patch b/patches/opnfv-fuel/0045-build-cache-Consider-UBUNTU_ARCH-in-.cacheid.patch deleted file mode 100644 index 43d5bcc5..00000000 --- a/patches/opnfv-fuel/0045-build-cache-Consider-UBUNTU_ARCH-in-.cacheid.patch +++ /dev/null @@ -1,144 +0,0 @@ -From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> -Date: Wed, 17 Aug 2016 20:36:51 +0200 -Subject: [PATCH] build: cache: Consider UBUNTU_ARCH in .cacheid - -Usually UBUNTU_ARCH is not changed inside the same repository, -but we should consider this case anyway for future merging -Armband and Fuel@OPNFV repositories/build systems. - -This applies to all Fuel plugins and the local repo. - -Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> ---- - build/f_isoroot/f_bgpvpn-pluginbuild/Makefile | 1 + - build/f_isoroot/f_collectd-ceilometer-pluginbuild/Makefile | 1 + - build/f_isoroot/f_kvm-pluginbuild/Makefile | 1 + - build/f_isoroot/f_odlpluginbuild/Makefile | 1 + - build/f_isoroot/f_onosfwpluginbuild/Makefile | 1 + - build/f_isoroot/f_ovs-nsh-dpdk-pluginbuild/Makefile | 1 + - build/f_isoroot/f_ovsnfv-dpdk-pluginbuild/Makefile | 1 + - build/f_isoroot/f_repobuild/Makefile | 1 + - build/f_isoroot/f_vsperfpluginbuild/Makefile | 1 + - build/f_isoroot/f_yardstick-pluginbuild/Makefile | 1 + - 10 files changed, 10 insertions(+) - -diff --git a/build/f_isoroot/f_bgpvpn-pluginbuild/Makefile b/build/f_isoroot/f_bgpvpn-pluginbuild/Makefile -index ed3be29..8ce28fc 100644 ---- a/build/f_isoroot/f_bgpvpn-pluginbuild/Makefile -+++ b/build/f_isoroot/f_bgpvpn-pluginbuild/Makefile -@@ -67,6 +67,7 @@ release:.bgpvpnbuild - fi - sha1sum Makefile >> .cachedata - sha1sum config.mk >> .cachedata -+ echo -n $(UBUNTU_ARCH) | sha1sum | awk {'print $$1'} >> .cachedata - cat .cachedata | $(CACHETOOL) getid > .cacheid - - # Clean local data related to caching - called prior to ordinary build -diff --git a/build/f_isoroot/f_collectd-ceilometer-pluginbuild/Makefile b/build/f_isoroot/f_collectd-ceilometer-pluginbuild/Makefile -index 9ab922d..17bc36d 100644 ---- a/build/f_isoroot/f_collectd-ceilometer-pluginbuild/Makefile -+++ b/build/f_isoroot/f_collectd-ceilometer-pluginbuild/Makefile -@@ -67,6 +67,7 @@ release:.fastpathmetrics - fi - @sha1sum Makefile | awk {'print $$1'} >> .cachedata - @sha1sum config.mk | awk {'print $$1'} >> .cachedata -+ @echo -n $(UBUNTU_ARCH) | sha1sum | awk {'print $$1'} >> .cachedata - @cat .cachedata | $(CACHETOOL) getid > .cacheid - - # Clean local data related to caching - called prior to ordinary build -diff --git a/build/f_isoroot/f_kvm-pluginbuild/Makefile b/build/f_isoroot/f_kvm-pluginbuild/Makefile -index ba2fd0b..2454b5e 100644 ---- a/build/f_isoroot/f_kvm-pluginbuild/Makefile -+++ b/build/f_isoroot/f_kvm-pluginbuild/Makefile -@@ -70,6 +70,7 @@ release:.kvmbuild - fi - @sha1sum Makefile | awk {'print $$1'} >> .cachedata - @sha1sum config.mk | awk {'print $$1'} >> .cachedata -+ @echo -n $(UBUNTU_ARCH) | sha1sum | awk {'print $$1'} >> .cachedata - @cat .cachedata | $(CACHETOOL) getid > .cacheid - - # Clean local data related to caching - called prior to ordinary build -diff --git a/build/f_isoroot/f_odlpluginbuild/Makefile b/build/f_isoroot/f_odlpluginbuild/Makefile -index e2cbf7d..6c717c7 100644 ---- a/build/f_isoroot/f_odlpluginbuild/Makefile -+++ b/build/f_isoroot/f_odlpluginbuild/Makefile -@@ -58,6 +58,7 @@ release:.odlbuild - fi - @sha1sum Makefile | awk {'print $$1'} >> .cachedata - @sha1sum config.mk | awk {'print $$1'} >> .cachedata -+ @echo -n $(UBUNTU_ARCH) | sha1sum | awk {'print $$1'} >> .cachedata - cat .cachedata | $(CACHETOOL) getid > .cacheid - - # Clean local data related to caching - called prior to ordinary build -diff --git a/build/f_isoroot/f_onosfwpluginbuild/Makefile b/build/f_isoroot/f_onosfwpluginbuild/Makefile -index a9dcb22..02ba029 100644 ---- a/build/f_isoroot/f_onosfwpluginbuild/Makefile -+++ b/build/f_isoroot/f_onosfwpluginbuild/Makefile -@@ -66,6 +66,7 @@ release:.onosbuild - fi - @sha1sum Makefile | awk {'print $$1'} >> .cachedata - @sha1sum config.mk | awk {'print $$1'} >> .cachedata -+ @echo -n $(UBUNTU_ARCH) | sha1sum | awk {'print $$1'} >> .cachedata - @cat .cachedata | $(CACHETOOL) getid > .cacheid - - # Clean local data related to caching - called prior to ordinary build -diff --git a/build/f_isoroot/f_ovs-nsh-dpdk-pluginbuild/Makefile b/build/f_isoroot/f_ovs-nsh-dpdk-pluginbuild/Makefile -index ecf586a..2d0d202 100644 ---- a/build/f_isoroot/f_ovs-nsh-dpdk-pluginbuild/Makefile -+++ b/build/f_isoroot/f_ovs-nsh-dpdk-pluginbuild/Makefile -@@ -67,6 +67,7 @@ release:.ovsbuild - fi - @sha1sum Makefile | awk {'print $$1'} >> .cachedata - @sha1sum config.mk | awk {'print $$1'} >> .cachedata -+ @echo -n $(UBUNTU_ARCH) | sha1sum | awk {'print $$1'} >> .cachedata - @cat .cachedata | $(CACHETOOL) getid > .cacheid - - # Clean local data related to caching - called prior to ordinary build -diff --git a/build/f_isoroot/f_ovsnfv-dpdk-pluginbuild/Makefile b/build/f_isoroot/f_ovsnfv-dpdk-pluginbuild/Makefile -index 9e432d1..9455389 100644 ---- a/build/f_isoroot/f_ovsnfv-dpdk-pluginbuild/Makefile -+++ b/build/f_isoroot/f_ovsnfv-dpdk-pluginbuild/Makefile -@@ -67,6 +67,7 @@ release:.ovsnfvbuild - fi - @sha1sum Makefile | awk {'print $$1'} >> .cachedata - @sha1sum config.mk | awk {'print $$1'} >> .cachedata -+ @echo -n $(UBUNTU_ARCH) | sha1sum | awk {'print $$1'} >> .cachedata - @cat .cachedata | $(CACHETOOL) getid > .cacheid - - # Clean local data related to caching - called prior to ordinary build -diff --git a/build/f_isoroot/f_repobuild/Makefile b/build/f_isoroot/f_repobuild/Makefile -index 6fef8ff..f6ebc2c 100644 ---- a/build/f_isoroot/f_repobuild/Makefile -+++ b/build/f_isoroot/f_repobuild/Makefile -@@ -73,6 +73,7 @@ release:nailgun - sha1sum Makefile >> .cachedata - sha1sum config.mk >> .cachedata - $(CACHETOOL) packages >> .cachedata -+ echo -n $(UBUNTU_ARCH) | sha1sum | awk {'print $$1'} >> .cachedata - cat .cachedata | $(CACHETOOL) getid > .cacheid - - # Clean local data related to caching - called prior to ordinary build -diff --git a/build/f_isoroot/f_vsperfpluginbuild/Makefile b/build/f_isoroot/f_vsperfpluginbuild/Makefile -index 9bd236a..73de611 100644 ---- a/build/f_isoroot/f_vsperfpluginbuild/Makefile -+++ b/build/f_isoroot/f_vsperfpluginbuild/Makefile -@@ -68,6 +68,7 @@ release:.vsperfbuild - fi - @sha1sum Makefile | awk {'print $$1'} >> .cachedata - @sha1sum config.mk | awk {'print $$1'} >> .cachedata -+ @echo -n $(UBUNTU_ARCH) | sha1sum | awk {'print $$1'} >> .cachedata - @cat .cachedata | $(CACHETOOL) getid > .cacheid - - # Clean local data related to caching - called prior to ordinary build -diff --git a/build/f_isoroot/f_yardstick-pluginbuild/Makefile b/build/f_isoroot/f_yardstick-pluginbuild/Makefile -index 47723d5..32de3b3 100644 ---- a/build/f_isoroot/f_yardstick-pluginbuild/Makefile -+++ b/build/f_isoroot/f_yardstick-pluginbuild/Makefile -@@ -68,6 +68,7 @@ release:.yardstickbuild - fi - @sha1sum Makefile | awk {'print $$1'} >> .cachedata - @sha1sum config.mk | awk {'print $$1'} >> .cachedata -+ @echo -n $(UBUNTU_ARCH) | sha1sum | awk {'print $$1'} >> .cachedata - @cat .cachedata | $(CACHETOOL) getid > .cacheid - - # Clean local data related to caching - called prior to ordinary build diff --git a/patches/opnfv-fuel/0054-net-check-add-support-for-faulty-operstate.patch b/patches/opnfv-fuel/0054-net-check-add-support-for-faulty-operstate.patch new file mode 100644 index 00000000..8a765c92 --- /dev/null +++ b/patches/opnfv-fuel/0054-net-check-add-support-for-faulty-operstate.patch @@ -0,0 +1,63 @@ +From: Stefan Sicleru <stefan.sicleru@enea.com> +Date: Tue, 30 Aug 2016 17:53:41 +0200 +Subject: [PATCH] net-check: add support for faulty operstate + +Some eth drivers, such as those for APM X-Gene Mustang Board's NICs, do +not advertise operstate properly in sysfs, ie. it is advertised as +"unknown" whereas ethtool shows the NIC as fully functional with link +detected. This further affects "ip link show" output which is parsed +within _check_iface_ready() method. + +Replace "ip link show" command with "ethtool" in order to obtain proper +results when operstate is unknown. + +Signed-off-by: Stefan Sicleru <stefan.sicleru@enea.com> +--- + ...et-check-add-support-for-faulty-operstate.patch | 38 ++++++++++++++++++++++ + 1 file changed, 38 insertions(+) + create mode 100644 build/patch-repos/build/repos/network-checker/0010-net-check-add-support-for-faulty-operstate.patch + +diff --git a/build/patch-repos/build/repos/network-checker/0010-net-check-add-support-for-faulty-operstate.patch b/build/patch-repos/build/repos/network-checker/0010-net-check-add-support-for-faulty-operstate.patch +new file mode 100644 +index 0000000..71e7b73 +--- /dev/null ++++ b/build/patch-repos/build/repos/network-checker/0010-net-check-add-support-for-faulty-operstate.patch +@@ -0,0 +1,38 @@ ++From: Stefan Sicleru <stefan.sicleru@enea.com> ++Date: Tue, 30 Aug 2016 17:30:24 +0200 ++Subject: [PATCH] net-check: add support for faulty operstate ++ ++Some eth drivers, such as those for APM X-Gene Mustang Board's NICs, do ++not advertise operstate properly in sysfs, ie. it is advertised as ++"unknown" whereas ethtool shows the NIC as fully functional with link ++detected. This further affects "ip link show" output which is parsed ++within _check_iface_ready() method. ++ ++Replace "ip link show" command with "ethtool" in order to obtain proper ++results when operstate is unknown. ++ ++Signed-off-by: Stefan Sicleru <stefan.sicleru@enea.com> ++--- ++ network_checker/net_check/api.py | 9 ++++++++- ++ 1 file changed, 8 insertions(+), 1 deletion(-) ++ ++diff --git a/network_checker/net_check/api.py b/network_checker/net_check/api.py ++index e3c3b4e..87aa257 100755 ++--- a/network_checker/net_check/api.py +++++ b/network_checker/net_check/api.py ++@@ -195,7 +195,14 @@ class Actor(object): ++ def _check_iface_ready(self, iface, vid=None): ++ check_iface = self._iface_name(iface, vid) ++ output = self._execute(['ip', '-o', 'link', 'show', check_iface]) ++- return 'state UP' in '\n'.join(output) +++ if 'state UP' in '\n'.join(output): +++ return True +++ +++ if 'state UNKNOWN' in '\n'.join(output) and vid == None: +++ output = self._execute(['ethtool', check_iface]) +++ return 'Link detected: yes' in '\n'.join(output).replace('\n', ' ') +++ +++ return False ++ ++ def _ensure_iface_up(self, iface, vid=None): ++ """Ensures interface is with vid up.""" diff --git a/patches/opnfv-fuel/0055-build-docker-Use-host-s-network-stack.patch b/patches/opnfv-fuel/0055-build-docker-Use-host-s-network-stack.patch new file mode 100644 index 00000000..d9fd36a0 --- /dev/null +++ b/patches/opnfv-fuel/0055-build-docker-Use-host-s-network-stack.patch @@ -0,0 +1,28 @@ +From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> +Date: Mon, 29 Aug 2016 22:58:49 +0200 +Subject: [PATCH] build: docker: Use host's /etc/hosts + +The original motivation was pointing to local mirrors via host's +"/etc/hosts", for which an alternative solution tested was +"--net=host" (see [1] for full description), but lead to wierd +loss of connectivity after a few builds. + +[1] https://docs.docker.com/v1.8/articles/networking/ + +Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> +--- + build/docker/runcontext | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/build/docker/runcontext b/build/docker/runcontext +index 07b0dc1..b0d6d37 100755 +--- a/build/docker/runcontext ++++ b/build/docker/runcontext +@@ -121,6 +121,7 @@ RUN_CONTEXT_OPT="--cidfile $CID_FILE --privileged=true --rm --net=host \ + -e MIRROR_MOS_UBUNTU -e MIRROR_MOS_UBUNTU_ROOT -e MIRROR_FUEL \ + -e LATEST_TARGET_UBUNTU -e UBUNTU_ARCH -e ARMBAND_BASE -e OPNFV_GIT_SHA \ + -u $USER_ID:$GROUP_ID -w $PWD \ ++ -v /etc/hosts:/etc/hosts \ + -v $GITROOT:$GITROOT -v /sys/fs/cgroup:/sys/fs/cgroup:ro $CACHEMOUNT" + + # Passing "debug" puts up an interactive bash shell |