Brad Bishop | 93fb535 | 2015-09-09 03:59:20 +0000 | [diff] [blame] | 1 | # Common code for generating Phosphor OpenBMC images. |
| 2 | |
| 3 | # Additional IMAGE_FEATURES available with Phosphor OpenBMC: |
| 4 | # |
Brad Bishop | 51ca97e | 2017-01-26 10:49:22 -0500 | [diff] [blame] | 5 | # - obmc-bmc-state-mgmt - OpenBMC BMC state management |
| 6 | # - obmc-chassis-mgmt - OpenBMC chassis management |
| 7 | # - obmc-chassis-state-mgmt - OpenBMC chassis state management |
| 8 | # - obmc-event-mgmt - OpenBMC event management |
| 9 | # - obmc-fan-mgmt - OpenBMC fan management |
| 10 | # - obmc-flash-mgmt - OpenBMC flash management |
| 11 | # - obmc-host-ctl - OpenBMC host control |
| 12 | # - obmc-host-ipmi - OpenBMC host IPMI |
| 13 | # - obmc-host-state-mgmt - OpenBMC host state management |
Brad Bishop | 4f12f72 | 2017-02-01 21:04:14 -0500 | [diff] [blame] | 14 | # - obmc-inventory - OpenBMC inventory support |
| 15 | # - obmc-leds - OpenBMC LED support |
Brad Bishop | 51ca97e | 2017-01-26 10:49:22 -0500 | [diff] [blame] | 16 | # - obmc-logging-mgmt - OpenBMC logging management |
Brad Bishop | 4f12f72 | 2017-02-01 21:04:14 -0500 | [diff] [blame] | 17 | # - obmc-sensors - OpenBMC sensor support |
Adriana Kobylak | 1ffadd9 | 2016-08-25 10:07:34 -0500 | [diff] [blame] | 18 | # - obmc-settings-mgmt - OpenBMC settings management |
Gunnar Mills | 058788a | 2017-02-15 16:01:45 -0600 | [diff] [blame] | 19 | # - obmc-software - OpenBMC software management |
Brad Bishop | 51ca97e | 2017-01-26 10:49:22 -0500 | [diff] [blame] | 20 | # - obmc-system-mgmt - OpenBMC system management |
| 21 | # - obmc-user-mgmt - OpenBMC user management |
Brad Bishop | 93fb535 | 2015-09-09 03:59:20 +0000 | [diff] [blame] | 22 | |
| 23 | inherit core-image |
| 24 | inherit obmc-phosphor-license |
Brad Bishop | a242937 | 2016-09-06 22:44:21 -0400 | [diff] [blame] | 25 | inherit obmc-phosphor-utils |
Brad Bishop | 93fb535 | 2015-09-09 03:59:20 +0000 | [diff] [blame] | 26 | |
Brad Bishop | db32a7c | 2017-03-01 16:16:06 -0500 | [diff] [blame] | 27 | FEATURE_PACKAGES_obmc-bmc-state-mgmt ?= "packagegroup-obmc-apps-bmc-state-mgmt" |
Brad Bishop | 961df76 | 2017-01-31 10:37:13 -0500 | [diff] [blame] | 28 | FEATURE_PACKAGES_obmc-chassis-mgmt ?= "${@cf_enabled(d, 'obmc-phosphor-chassis-mgmt', 'virtual-obmc-chassis-mgmt')}" |
Brad Bishop | db32a7c | 2017-03-01 16:16:06 -0500 | [diff] [blame] | 29 | FEATURE_PACKAGES_obmc-chassis-state-mgmt ?= "packagegroup-obmc-apps-chassis-state-mgmt" |
Brad Bishop | 961df76 | 2017-01-31 10:37:13 -0500 | [diff] [blame] | 30 | FEATURE_PACKAGES_obmc-event-mgmt ?= "${@df_enabled(d, 'obmc-phosphor-event-mgmt', 'virtual-obmc-event-mgmt')}" |
| 31 | FEATURE_PACKAGES_obmc-fan-mgmt ?= "${@cf_enabled(d, 'obmc-phosphor-fan-mgmt', 'virtual-obmc-fan-mgmt')}" |
| 32 | FEATURE_PACKAGES_obmc-flash-mgmt ?= "${@cf_enabled(d, 'obmc-phosphor-flash-mgmt', 'virtual-obmc-flash-mgmt')}" |
| 33 | FEATURE_PACKAGES_obmc-host-ctl ?= "${@cf_enabled(d, 'obmc-host-ctl', 'virtual-obmc-host-ctl')}" |
| 34 | FEATURE_PACKAGES_obmc-host-ipmi ?= "${@cf_enabled(d, 'obmc-host-ipmi', 'virtual-obmc-host-ipmi-hw')}" |
Brad Bishop | db32a7c | 2017-03-01 16:16:06 -0500 | [diff] [blame] | 35 | FEATURE_PACKAGES_obmc-host-state-mgmt ?= "packagegroup-obmc-apps-host-state-mgmt" |
Brad Bishop | 4f12f72 | 2017-02-01 21:04:14 -0500 | [diff] [blame] | 36 | FEATURE_PACKAGES_obmc-inventory ?= "packagegroup-obmc-apps-inventory" |
| 37 | FEATURE_PACKAGES_obmc-leds ?= "packagegroup-obmc-apps-leds" |
Brad Bishop | 961df76 | 2017-01-31 10:37:13 -0500 | [diff] [blame] | 38 | FEATURE_PACKAGES_obmc-logging-mgmt ?= "${@df_enabled(d, 'obmc-logging-mgmt', 'virtual-obmc-logging-mgmt')}" |
| 39 | FEATURE_PACKAGES_obmc-net-ipmi ?= "${@df_enabled(d, 'obmc-net-ipmi', 'virtual-obmc-net-ipmi')}" |
Brad Bishop | 4f12f72 | 2017-02-01 21:04:14 -0500 | [diff] [blame] | 40 | FEATURE_PACKAGES_obmc-sensors ?= "packagegroup-obmc-apps-sensors" |
Brad Bishop | 961df76 | 2017-01-31 10:37:13 -0500 | [diff] [blame] | 41 | FEATURE_PACKAGES_obmc-settings-mgmt ?= "${@df_enabled(d, 'obmc-settings-mgmt', 'virtual-obmc-settings-mgmt')}" |
Gunnar Mills | 058788a | 2017-02-15 16:01:45 -0600 | [diff] [blame] | 42 | FEATURE_PACKAGES_obmc-software ?= "packagegroup-obmc-apps-software" |
Brad Bishop | 961df76 | 2017-01-31 10:37:13 -0500 | [diff] [blame] | 43 | FEATURE_PACKAGES_obmc-system-mgmt ?= "${@df_enabled(d, 'obmc-phosphor-system-mgmt', 'virtual-obmc-system-mgmt')}" |
| 44 | FEATURE_PACKAGES_obmc-user-mgmt ?= "${@df_enabled(d, 'obmc-phosphor-user-mgmt', 'virtual-obmc-user-mgmt')}" |
Brad Bishop | 93fb535 | 2015-09-09 03:59:20 +0000 | [diff] [blame] | 45 | |
| 46 | # Install entire Phosphor application stack by default |
| 47 | IMAGE_FEATURES += " \ |
Brad Bishop | 51ca97e | 2017-01-26 10:49:22 -0500 | [diff] [blame] | 48 | obmc-bmc-state-mgmt \ |
Brad Bishop | a242937 | 2016-09-06 22:44:21 -0400 | [diff] [blame] | 49 | obmc-chassis-mgmt \ |
Brad Bishop | 51ca97e | 2017-01-26 10:49:22 -0500 | [diff] [blame] | 50 | obmc-chassis-state-mgmt \ |
Brad Bishop | a242937 | 2016-09-06 22:44:21 -0400 | [diff] [blame] | 51 | obmc-event-mgmt \ |
Brad Bishop | 51ca97e | 2017-01-26 10:49:22 -0500 | [diff] [blame] | 52 | obmc-fan-mgmt \ |
| 53 | obmc-flash-mgmt \ |
| 54 | obmc-host-ctl \ |
| 55 | obmc-host-ipmi \ |
| 56 | obmc-host-state-mgmt \ |
Brad Bishop | 4f12f72 | 2017-02-01 21:04:14 -0500 | [diff] [blame] | 57 | obmc-inventory \ |
| 58 | obmc-leds \ |
Brad Bishop | 51ca97e | 2017-01-26 10:49:22 -0500 | [diff] [blame] | 59 | obmc-logging-mgmt \ |
Tom Joseph | 7b82774 | 2017-01-16 16:43:05 +0530 | [diff] [blame] | 60 | obmc-net-ipmi \ |
Brad Bishop | 4f12f72 | 2017-02-01 21:04:14 -0500 | [diff] [blame] | 61 | obmc-sensors \ |
Adriana Kobylak | 1ffadd9 | 2016-08-25 10:07:34 -0500 | [diff] [blame] | 62 | obmc-settings-mgmt \ |
Gunnar Mills | 058788a | 2017-02-15 16:01:45 -0600 | [diff] [blame] | 63 | obmc-software \ |
Brad Bishop | a242937 | 2016-09-06 22:44:21 -0400 | [diff] [blame] | 64 | obmc-system-mgmt \ |
Brad Bishop | 51ca97e | 2017-01-26 10:49:22 -0500 | [diff] [blame] | 65 | obmc-user-mgmt \ |
Brad Bishop | bd08217 | 2016-02-29 10:18:47 -0500 | [diff] [blame] | 66 | ssh-server-dropbear \ |
| 67 | " |
Brad Bishop | 93fb535 | 2015-09-09 03:59:20 +0000 | [diff] [blame] | 68 | |
Brad Bishop | adb60e8 | 2016-06-14 15:24:22 -0400 | [diff] [blame] | 69 | CORE_IMAGE_EXTRA_INSTALL_append = " bash \ |
Brad Bishop | 3077a7f | 2017-01-12 21:44:51 -0500 | [diff] [blame] | 70 | packagegroup-obmc-apps-extras \ |
| 71 | packagegroup-obmc-apps-extrasdev \ |
Brad Bishop | bd08217 | 2016-02-29 10:18:47 -0500 | [diff] [blame] | 72 | i2c-tools \ |
| 73 | screen \ |
Jeremy Kerr | 75fc03a | 2016-04-12 15:59:52 +0800 | [diff] [blame] | 74 | obmc-console \ |
Edward A. James | 064a764 | 2016-09-20 15:54:52 -0500 | [diff] [blame] | 75 | pam-plugin-access \ |
Brad Bishop | adb60e8 | 2016-06-14 15:24:22 -0400 | [diff] [blame] | 76 | ${OBMC_IMAGE_EXTRA_INSTALL} \ |
Michael Tritz | 2d37fde | 2017-02-01 14:07:44 -0600 | [diff] [blame] | 77 | ffdc \ |
Dinesh Chinari | 1ddd805 | 2017-03-08 11:51:22 -0600 | [diff] [blame] | 78 | rsync \ |
Brad Bishop | bd08217 | 2016-02-29 10:18:47 -0500 | [diff] [blame] | 79 | " |
Brad Bishop | 327bfd6 | 2016-02-29 10:21:51 -0500 | [diff] [blame] | 80 | |
Brad Bishop | adb60e8 | 2016-06-14 15:24:22 -0400 | [diff] [blame] | 81 | OBMC_IMAGE_EXTRA_INSTALL ?= "" |
| 82 | |
Patrick Williams | 2054694 | 2016-06-20 14:06:54 -0500 | [diff] [blame] | 83 | def image_overlay_enabled(d, ifEnabledStr): |
| 84 | if d.getVar('OBMC_PHOSPHOR_IMAGE_OVERLAY', True) != "1": |
| 85 | return "" |
| 86 | return ifEnabledStr |
Brad Bishop | 327bfd6 | 2016-02-29 10:21:51 -0500 | [diff] [blame] | 87 | |
Patrick Williams | 2054694 | 2016-06-20 14:06:54 -0500 | [diff] [blame] | 88 | IMAGE_FSTYPES += "${@image_overlay_enabled(d, "overlay")}" |
| 89 | inherit ${@image_overlay_enabled(d, "image-overlay")} |
Patrick Williams | fb66241 | 2016-08-05 15:05:41 -0500 | [diff] [blame] | 90 | |
| 91 | do_image_complete[depends] += "obmc-phosphor-debug-tarball:do_image_complete" |
Patrick Williams | d0380a6 | 2017-03-02 22:24:41 -0600 | [diff] [blame] | 92 | |
| 93 | # The /etc/version file is misleading and not useful. Remove it. |
| 94 | # Users should instead rely on /etc/os-release. |
| 95 | remove_etc_version() { |
| 96 | rm ${IMAGE_ROOTFS}${sysconfdir}/version |
| 97 | } |
| 98 | ROOTFS_POSTPROCESS_COMMAND += "remove_etc_version ; " |