Patrick Williams | f1e5d69 | 2016-03-30 15:21:19 -0500 | [diff] [blame^] | 1 | # Copyright (C) 2015 Intel Corporation |
| 2 | # Released under the MIT license (see COPYING.MIT for the terms) |
| 3 | |
| 4 | DESCRIPTION = "Make public keys of the signing keys available" |
| 5 | LICENSE = "MIT" |
| 6 | PACKAGES = "" |
| 7 | |
| 8 | do_fetch[noexec] = "1" |
| 9 | do_unpack[noexec] = "1" |
| 10 | do_patch[noexec] = "1" |
| 11 | do_configure[noexec] = "1" |
| 12 | do_compile[noexec] = "1" |
| 13 | do_install[noexec] = "1" |
| 14 | do_package[noexec] = "1" |
| 15 | do_packagedata[noexec] = "1" |
| 16 | do_package_write_ipk[noexec] = "1" |
| 17 | do_package_write_rpm[noexec] = "1" |
| 18 | do_package_write_deb[noexec] = "1" |
| 19 | do_populate_sysroot[noexec] = "1" |
| 20 | |
| 21 | EXCLUDE_FROM_WORLD = "1" |
| 22 | |
| 23 | def export_gpg_pubkey(d, keyid, path): |
| 24 | import bb |
| 25 | gpg_bin = d.getVar('GPG_BIN', True) or \ |
| 26 | bb.utils.which(os.getenv('PATH'), "gpg") |
| 27 | cmd = '%s --batch --yes --export --armor -o %s %s' % \ |
| 28 | (gpg_bin, path, keyid) |
| 29 | status, output = oe.utils.getstatusoutput(cmd) |
| 30 | if status: |
| 31 | raise bb.build.FuncFailed('Failed to export gpg public key (%s): %s' % |
| 32 | (keyid, output)) |
| 33 | |
| 34 | python do_export_public_keys () { |
| 35 | if d.getVar("RPM_SIGN_PACKAGES", True): |
| 36 | # Export public key of the rpm signing key |
| 37 | export_gpg_pubkey(d, d.getVar("RPM_GPG_NAME", True), |
| 38 | d.getVar('RPM_GPG_PUBKEY', True)) |
| 39 | |
| 40 | if d.getVar('PACKAGE_FEED_SIGN', True) == '1': |
| 41 | # Export public key of the feed signing key |
| 42 | export_gpg_pubkey(d, d.getVar("PACKAGE_FEED_GPG_NAME", True), |
| 43 | d.getVar('PACKAGE_FEED_GPG_PUBKEY', True)) |
| 44 | } |
| 45 | addtask do_export_public_keys before do_build |