20 # |
20 # |
21 |
21 |
22 # |
22 # |
23 # Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved. |
23 # Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved. |
24 # |
24 # |
|
25 |
25 include ../../../make-rules/shared-macros.mk |
26 include ../../../make-rules/shared-macros.mk |
26 |
27 |
27 COMPONENT_NAME= neutron |
28 COMPONENT_NAME= neutron |
28 COMPONENT_CODENAME= havana |
29 COMPONENT_CODENAME= juno |
29 COMPONENT_VERSION= 2013.2.3 |
30 COMPONENT_VERSION= 2014.2.2 |
|
31 COMPONENT_BE_VERSION= 2014.2 |
30 COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) |
32 COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) |
31 COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz |
33 COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz |
32 COMPONENT_ARCHIVE_HASH= \ |
34 COMPONENT_ARCHIVE_HASH= \ |
33 sha256:116cc2ce9f2f5b2dcbd5a314d78a496b180a148dadd02a076ff664b0f3c20cd3 |
35 sha256:6b0509f7bc12a52ef4e90e1464720cd240eb93f0db2eef7d109d51fdb836a412 |
34 COMPONENT_ARCHIVE_URL= http://launchpad.net/$(COMPONENT_NAME)/$(COMPONENT_CODENAME)/$(COMPONENT_VERSION)/+download/$(COMPONENT_ARCHIVE) |
36 COMPONENT_ARCHIVE_URL= http://launchpad.net/$(COMPONENT_NAME)/$(COMPONENT_CODENAME)/$(COMPONENT_VERSION)/+download/$(COMPONENT_ARCHIVE) |
35 COMPONENT_PROJECT_URL= http://www.openstack.org/ |
37 COMPONENT_PROJECT_URL= http://www.openstack.org/ |
36 COMPONENT_BUGDB= service/neutron |
38 COMPONENT_BUGDB= service/neutron |
37 IPS_COMPONENT_VERSION= 0.$(COMPONENT_VERSION) |
39 IPS_COMPONENT_VERSION= 0.$(COMPONENT_VERSION) |
38 |
40 |
39 TPNO= 17716 |
41 TPNO= 21824 |
40 |
42 |
41 include $(WS_MAKE_RULES)/prep.mk |
43 include $(WS_MAKE_RULES)/prep.mk |
42 include $(WS_MAKE_RULES)/setup.py.mk |
44 include $(WS_MAKE_RULES)/setup.py.mk |
43 include $(WS_MAKE_RULES)/ips.mk |
45 include $(WS_MAKE_RULES)/ips.mk |
44 |
46 |
46 |
48 |
47 # Since this is an app, and doesn't provide any public library interfaces, we |
49 # Since this is an app, and doesn't provide any public library interfaces, we |
48 # only need to deliver one version. The manifest is parameterized, though. |
50 # only need to deliver one version. The manifest is parameterized, though. |
49 PYTHON_VERSIONS= 2.6 |
51 PYTHON_VERSIONS= 2.6 |
50 |
52 |
|
53 PKG_MACROS += COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION) |
51 PKG_MACROS += PYVER=$(PYTHON_VERSIONS) |
54 PKG_MACROS += PYVER=$(PYTHON_VERSIONS) |
|
55 PKG_MACROS += PYV=$(shell echo $(PYTHON_VERSIONS) | tr -d .) |
52 |
56 |
53 # move all the proper files into place and construct .pyc files for them |
57 # move all the proper files into place and construct .pyc files for them |
54 COMPONENT_POST_BUILD_ACTION += \ |
58 COMPONENT_POST_BUILD_ACTION += \ |
55 ($(MKDIR) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent; \ |
59 ($(MKDIR) $(PROTO_DIR)/lib/svc/manifest/application/openstack; \ |
|
60 $(CP) \ |
|
61 files/neutron-dhcp-agent.xml \ |
|
62 files/neutron-l3-agent.xml \ |
|
63 files/neutron-metadata-agent.xml \ |
|
64 files/neutron-server.xml \ |
|
65 files/neutron-upgrade.xml \ |
|
66 $(PROTO_DIR)/lib/svc/manifest/application/openstack; \ |
|
67 $(MKDIR) $(PROTO_DIR)/usr/lib/neutron; \ |
|
68 $(CP) files/evs/migrate/evs-neutron-migration.py \ |
|
69 $(PROTO_DIR)/usr/lib/neutron/evs-neutron-migration; \ |
|
70 $(MKDIR) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent; \ |
56 $(CP) files/agent/evs_l3_agent.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent; \ |
71 $(CP) files/agent/evs_l3_agent.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent; \ |
57 $(MKDIR) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent/solaris; \ |
72 $(MKDIR) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent/solaris; \ |
58 $(CP) files/agent/solaris/__init__.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent/solaris; \ |
73 $(CP) \ |
59 $(CP) files/agent/solaris/dhcp.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent/solaris; \ |
74 files/agent/solaris/__init__.py \ |
60 $(CP) files/agent/solaris/interface.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent/solaris; \ |
75 files/agent/solaris/dhcp.py \ |
61 $(CP) files/agent/solaris/ipfilters_manager.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent/solaris; \ |
76 files/agent/solaris/interface.py \ |
62 $(CP) files/agent/solaris/net_lib.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent/solaris; \ |
77 files/agent/solaris/ipfilters_manager.py \ |
|
78 files/agent/solaris/net_lib.py \ |
|
79 files/agent/solaris/ra.py \ |
|
80 $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent/solaris; \ |
63 $(MKDIR) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs; \ |
81 $(MKDIR) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs; \ |
64 $(TOUCH) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/__init__.py; \ |
82 $(TOUCH) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/__init__.py; \ |
65 $(CP) files/evs/plugin.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs; \ |
83 $(CP) files/evs/plugin.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs; \ |
66 $(MKDIR) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/db; \ |
84 $(MKDIR) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/migrate; \ |
67 $(TOUCH) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/db/__init__.py; \ |
85 $(CP) files/evs/migrate/__init__.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/migrate; \ |
68 $(CP) files/evs/db/api.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/db; \ |
86 $(CP) files/evs/migrate/havana_api.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/migrate) |
69 $(CP) files/evs/db/l3nat.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/db; \ |
|
70 $(CP) files/evs/db/quotas_db.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/db) |
|
71 |
|
72 |
87 |
73 COMPONENT_POST_INSTALL_ACTION += \ |
88 COMPONENT_POST_INSTALL_ACTION += \ |
74 $(PYTHON) -m compileall $(PROTO_DIR)/$(PYTHON_VENDOR_PACKAGES) |
89 $(PYTHON) -m compileall $(PROTO_DIR)/$(PYTHON_VENDOR_PACKAGES) |
75 |
90 |
76 # common targets |
91 # common targets |
77 build: $(BUILD_NO_ARCH) |
92 build: $(BUILD_NO_ARCH) |
78 |
93 |
79 install: $(INSTALL_NO_ARCH) |
94 install: $(INSTALL_NO_ARCH) |
80 |
95 |
81 test: $(NO_TESTS) |
96 test: $(NO_TESTS) |
82 |
97 |
83 |
98 |
84 REQUIRED_PACKAGES += library/python/eventlet-26 |
99 REQUIRED_PACKAGES += library/python/eventlet-26 |
|
100 REQUIRED_PACKAGES += library/python/iniparse-26 |
85 REQUIRED_PACKAGES += library/python/netaddr-26 |
101 REQUIRED_PACKAGES += library/python/netaddr-26 |
86 REQUIRED_PACKAGES += library/python/oslo.config-26 |
102 REQUIRED_PACKAGES += library/python/oslo.config-26 |
|
103 REQUIRED_PACKAGES += library/python/oslo.db-26 |
|
104 REQUIRED_PACKAGES += library/python/python-mysql-26 |
|
105 REQUIRED_PACKAGES += library/python/simplejson-26 |
|
106 REQUIRED_PACKAGES += library/python/six-26 |
|
107 REQUIRED_PACKAGES += library/python/sqlalchemy-26 |
87 REQUIRED_PACKAGES += network/ipfilter |
108 REQUIRED_PACKAGES += network/ipfilter |
88 REQUIRED_PACKAGES += service/network/dnsmasq |
109 REQUIRED_PACKAGES += service/network/dnsmasq |
89 REQUIRED_PACKAGES += service/network/evs |
110 REQUIRED_PACKAGES += service/network/evs |
90 REQUIRED_PACKAGES += system/core-os |
111 REQUIRED_PACKAGES += system/core-os |
|
112 REQUIRED_PACKAGES += system/management/rad/client/rad-python |
91 REQUIRED_PACKAGES += system/network |
113 REQUIRED_PACKAGES += system/network |