diff options
author | Alexandru Avadanii <Alexandru.Avadanii@enea.com> | 2016-10-01 13:18:11 +0200 |
---|---|---|
committer | Alexandru Avadanii <Alexandru.Avadanii@enea.com> | 2016-10-09 16:33:43 +0200 |
commit | 42f8585ebb8fffad19a89314659ab9129176c3e9 (patch) | |
tree | e2cf6a4797bcbd036e080541cc3925f8b209549b /patches/fuel-web/0002-Add-arch-to-nailgun-release-and-target-image.patch | |
parent | 6f3a054fc95622f0c002f72c0fac6074bb36c36f (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-web/0002-Add-arch-to-nailgun-release-and-target-image.patch')
-rw-r--r-- | patches/fuel-web/0002-Add-arch-to-nailgun-release-and-target-image.patch | 76 |
1 files changed, 38 insertions, 38 deletions
diff --git a/patches/fuel-web/0002-Add-arch-to-nailgun-release-and-target-image.patch b/patches/fuel-web/0002-Add-arch-to-nailgun-release-and-target-image.patch index d621dbdf..0435891e 100644 --- a/patches/fuel-web/0002-Add-arch-to-nailgun-release-and-target-image.patch +++ b/patches/fuel-web/0002-Add-arch-to-nailgun-release-and-target-image.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:11:54 +0100 Subject: [PATCH] Add arch to nailgun release and target image @@ -10,23 +10,23 @@ As a bonus, it is also used when building the target image. .../alembic_migrations/versions/armband.py | 53 ++++++++++++++++++++++ nailgun/nailgun/db/sqlalchemy/models/release.py | 8 ++++ nailgun/nailgun/fixtures/openstack.yaml | 5 ++ - .../nailgun/orchestrator/deployment_serializers.py | 9 +++- + .../nailgun/orchestrator/deployment_serializers.py | 8 +++- .../orchestrator/provisioning_serializers.py | 3 +- nailgun/nailgun/orchestrator/tasks_templates.py | 5 +- .../integration/test_cluster_changes_handler.py | 12 ++--- .../integration/test_orchestrator_serializer.py | 4 +- nailgun/nailgun/test/unit/test_tasks_templates.py | 6 ++- - 10 files changed, 96 insertions(+), 14 deletions(-) + 10 files changed, 95 insertions(+), 14 deletions(-) create mode 100644 nailgun/nailgun/db/migration/alembic_migrations/versions/armband.py diff --git a/nailgun/nailgun/consts.py b/nailgun/nailgun/consts.py -index 1ded0ba..5a1af0a 100644 +index 4900ec0..59b0c91 100644 --- a/nailgun/nailgun/consts.py +++ b/nailgun/nailgun/consts.py @@ -38,6 +38,11 @@ RELEASE_OS = Enum( ) ) - + +RELEASE_ARCHS = Enum( + 'amd64', + 'arm64' @@ -37,7 +37,7 @@ index 1ded0ba..5a1af0a 100644 'ha_full', diff --git a/nailgun/nailgun/db/migration/alembic_migrations/versions/armband.py b/nailgun/nailgun/db/migration/alembic_migrations/versions/armband.py new file mode 100644 -index 0000000..8cca69c +index 0000000..6e42b3f --- /dev/null +++ b/nailgun/nailgun/db/migration/alembic_migrations/versions/armband.py @@ -0,0 +1,53 @@ @@ -114,10 +114,10 @@ index 1b47de4..e209e72 100644 operating_system = Column(String(50), nullable=False) state = Column( diff --git a/nailgun/nailgun/fixtures/openstack.yaml b/nailgun/nailgun/fixtures/openstack.yaml -index 9674d66..d3226da 100644 +index 65646d4..874d4f0 100644 --- a/nailgun/nailgun/fixtures/openstack.yaml +++ b/nailgun/nailgun/fixtures/openstack.yaml -@@ -1904,6 +1904,7 @@ +@@ -1907,6 +1907,7 @@ name: "Mitaka on CentOS 6.5" state: "unavailable" version: "mitaka-9.0" @@ -125,7 +125,7 @@ index 9674d66..d3226da 100644 operating_system: "CentOS" description: "This option will install the OpenStack Mitaka packages using a CentOS based operating system. With high availability features built in, you are getting a robust, enterprise-grade OpenStack deployment." attributes_metadata: -@@ -1978,6 +1979,7 @@ +@@ -1980,6 +1981,7 @@ fields: name: "Mitaka on Ubuntu 14.04" version: "mitaka-9.0" @@ -133,7 +133,7 @@ index 9674d66..d3226da 100644 operating_system: "Ubuntu" description: "This option will install the OpenStack Mitaka packages using Ubuntu as a base operating system. With high availability features built in, you are getting a robust, enterprise-grade OpenStack deployment." attributes_metadata: -@@ -2219,6 +2221,7 @@ +@@ -2220,6 +2222,7 @@ fields: name: "Mitaka on Ubuntu+UCA 14.04" version: "mitaka-9.0" @@ -158,7 +158,7 @@ index 9674d66..d3226da 100644 attributes_metadata: editable: diff --git a/nailgun/nailgun/orchestrator/deployment_serializers.py b/nailgun/nailgun/orchestrator/deployment_serializers.py -index 699a599..6bb7990 100644 +index 08eb9c3..e561324 100644 --- a/nailgun/nailgun/orchestrator/deployment_serializers.py +++ b/nailgun/nailgun/orchestrator/deployment_serializers.py @@ -300,7 +300,13 @@ class DeploymentMultinodeSerializer(object): @@ -173,11 +173,11 @@ index 699a599..6bb7990 100644 + arch = "aarch64" + image_data['img_path'] = '{0}cirros-{1}-disk.img'.format(img_dir, + arch) - + glance_properties = [] - + diff --git a/nailgun/nailgun/orchestrator/provisioning_serializers.py b/nailgun/nailgun/orchestrator/provisioning_serializers.py -index 48a4753..b1f3ca6 100644 +index 48a4753..aaac22a 100644 --- a/nailgun/nailgun/orchestrator/provisioning_serializers.py +++ b/nailgun/nailgun/orchestrator/provisioning_serializers.py @@ -307,7 +307,8 @@ class ProvisioningSerializer61(ProvisioningSerializer): @@ -187,7 +187,7 @@ index 48a4753..b1f3ca6 100644 - packages)) + packages, + cluster.release.arch)) - + # NOTE(kozhukalov): This pre-provision task is going to be # removed by 7.0 because we need this only for classic way of diff --git a/nailgun/nailgun/orchestrator/tasks_templates.py b/nailgun/nailgun/orchestrator/tasks_templates.py @@ -195,8 +195,8 @@ index 51dfdf7..bc2bff9 100644 --- a/nailgun/nailgun/orchestrator/tasks_templates.py +++ b/nailgun/nailgun/orchestrator/tasks_templates.py @@ -210,7 +210,7 @@ def make_reboot_task(uids, task): - - + + def make_provisioning_images_task( - uids, repos, provision_data, cid, packages): + uids, repos, provision_data, cid, packages, arch): @@ -212,63 +212,63 @@ index 51dfdf7..bc2bff9 100644 + "--input_data '{2}'").format(cid, arch, conf), 'timeout': settings.PROVISIONING_IMAGES_BUILD_TIMEOUT, 'retries': 1}}) - + diff --git a/nailgun/nailgun/test/integration/test_cluster_changes_handler.py b/nailgun/nailgun/test/integration/test_cluster_changes_handler.py -index 0f212e5..da50eac 100644 +index fb82be0..450155d 100644 --- a/nailgun/nailgun/test/integration/test_cluster_changes_handler.py +++ b/nailgun/nailgun/test/integration/test_cluster_changes_handler.py -@@ -153,7 +153,7 @@ class TestHandlers(BaseIntegrationTest): +@@ -154,7 +154,7 @@ class TestHandlers(BaseIntegrationTest): common_attrs['last_controller'] = controller_nodes[-1]['name'] common_attrs['storage']['pg_num'] = 128 - + - common_attrs['test_vm_image'] = { + common_attrs['test_vm_image'] = [{ 'container_format': 'bare', 'public': 'true', 'disk_format': 'qcow2', -@@ -165,7 +165,7 @@ class TestHandlers(BaseIntegrationTest): +@@ -166,7 +166,7 @@ class TestHandlers(BaseIntegrationTest): """--property murano_image_info=""" """'{"title": "Murano Demo", "type": "cirros.demo"}'""" ), - } + }] - + critical_mapping = { 'primary-controller': True, -@@ -565,7 +565,7 @@ class TestHandlers(BaseIntegrationTest): +@@ -566,7 +566,7 @@ class TestHandlers(BaseIntegrationTest): common_attrs['last_controller'] = controller_nodes[-1]['name'] common_attrs['storage']['pg_num'] = 128 - + - common_attrs['test_vm_image'] = { + common_attrs['test_vm_image'] = [{ 'container_format': 'bare', 'public': 'true', 'disk_format': 'qcow2', -@@ -577,7 +577,7 @@ class TestHandlers(BaseIntegrationTest): +@@ -578,7 +578,7 @@ class TestHandlers(BaseIntegrationTest): """--property murano_image_info=""" """'{"title": "Murano Demo", "type": "cirros.demo"}'""" ), - } + }] - + critical_mapping = { 'primary-controller': True, -@@ -1049,7 +1049,7 @@ class TestHandlers(BaseIntegrationTest): +@@ -1050,7 +1050,7 @@ class TestHandlers(BaseIntegrationTest): common_attrs['last_controller'] = controller_nodes[-1]['name'] common_attrs['storage']['pg_num'] = 128 - + - common_attrs['test_vm_image'] = { + common_attrs['test_vm_image'] = [{ 'container_format': 'bare', 'public': 'true', 'disk_format': 'qcow2', -@@ -1061,7 +1061,7 @@ class TestHandlers(BaseIntegrationTest): +@@ -1062,7 +1062,7 @@ class TestHandlers(BaseIntegrationTest): """--property murano_image_info=""" """'{"title": "Murano Demo", "type": "cirros.demo"}'""" ), - } + }] - + critical_mapping = { 'primary-controller': True, diff --git a/nailgun/nailgun/test/integration/test_orchestrator_serializer.py b/nailgun/nailgun/test/integration/test_orchestrator_serializer.py @@ -276,22 +276,22 @@ index 5db8f4e..ef208cb 100644 --- a/nailgun/nailgun/test/integration/test_orchestrator_serializer.py +++ b/nailgun/nailgun/test/integration/test_orchestrator_serializer.py @@ -2584,12 +2584,12 @@ class BaseDeploymentSerializer(BaseSerializerTest): - + def check_no_murano_data(self): glance_properties = self.serializer.generate_test_vm_image_data( - self.env.nodes[0])['test_vm_image']['glance_properties'] + self.env.nodes[0])['test_vm_image'][0]['glance_properties'] self.assertNotIn('murano_image_info', glance_properties) - + def check_murano_data(self): glance_properties = self.serializer.generate_test_vm_image_data( - self.env.nodes[0])['test_vm_image']['glance_properties'] + self.env.nodes[0])['test_vm_image'][0]['glance_properties'] self.assertIn('murano_image_info', glance_properties) - - + + diff --git a/nailgun/nailgun/test/unit/test_tasks_templates.py b/nailgun/nailgun/test/unit/test_tasks_templates.py -index 4e81a19..d657518 100644 +index 4e81a19..695e53d 100644 --- a/nailgun/nailgun/test/unit/test_tasks_templates.py +++ b/nailgun/nailgun/test/unit/test_tasks_templates.py @@ -140,7 +140,8 @@ class TestMakeTask(base.BaseTestCase): @@ -302,7 +302,7 @@ index 4e81a19..d657518 100644 + packages=packages, + arch='amd64' ) - + fuel_image_conf = { @@ -177,7 +178,8 @@ class TestMakeTask(base.BaseTestCase): cmd = result["parameters"]["cmd"].lstrip( @@ -312,5 +312,5 @@ index 4e81a19..d657518 100644 + "--data_driver nailgun_build_image --target_arch amd64" + " --input_data '").rstrip("'") self.assertEqual(jsonutils.loads(cmd), fuel_image_conf) - + def test_generate_ironic_bootstrap_keys_task(self): |