diff options
-rw-r--r-- | CONTRIBUTING.adoc | 15 | ||||
-rw-r--r-- | README.adoc | 10 | ||||
-rw-r--r-- | classes/image_types_ostree.bbclass | 2 | ||||
-rw-r--r-- | classes/sdcard_image-rpi-ota.bbclass | 6 | ||||
-rw-r--r-- | classes/sota_bleeding.inc | 1 | ||||
-rw-r--r-- | lib/oeqa/selftest/garage_push.py | 39 | ||||
-rw-r--r-- | recipes-sota/aktualizr/aktualizr-auto-prov.bb | 6 | ||||
-rw-r--r-- | recipes-sota/aktualizr/aktualizr-implicit-prov.bb | 8 | ||||
-rw-r--r-- | recipes-sota/aktualizr/aktualizr-native_git.bb | 16 | ||||
-rw-r--r-- | recipes-sota/aktualizr/aktualizr_common.inc | 19 | ||||
-rw-r--r-- | recipes-sota/aktualizr/aktualizr_git.bb | 54 | ||||
-rw-r--r-- | recipes-sota/garage-sign/garage-sign.bb | 34 | ||||
-rw-r--r-- | recipes-sota/rvi-sota-client/rvi-sota-client.inc | 116 | ||||
-rw-r--r-- | recipes-sota/sota-tools/sota-tools_git.bb | 24 |
14 files changed, 216 insertions, 134 deletions
diff --git a/CONTRIBUTING.adoc b/CONTRIBUTING.adoc new file mode 100644 index 0000000..7255a72 --- /dev/null +++ b/CONTRIBUTING.adoc | |||
@@ -0,0 +1,15 @@ | |||
1 | = Contributing | ||
2 | |||
3 | We welcome pull requests from everyone. Here are some notes that are useful for people working on meta-updater (this repository) and https://github.com/advancedtelematic/aktualizr[aktualizr]. | ||
4 | |||
5 | == Options for local.conf/site.conf | ||
6 | |||
7 | [options="header"] | ||
8 | |====================== | ||
9 | | Option | Effect | ||
10 | | `require classes/sota_bleeding.inc` | Always build the latest master of Aktualizr | ||
11 | | `BRANCH_pn-aktualizr = "mybranch"` | ||
12 | `BRANCH_pn-aktualizr-native = "mybranch"` | Build `mybranch` of Aktualizr (note that both of these need to be set). This will normally be used with `require classes/sota_bleeding.inc` | ||
13 | | `TOOLCHAIN_HOST_TASK_append = " nativesdk-cmake "` | Use with `bitbake -c populate_sdk core-image-minimal` to build a SDK | ||
14 | |||
15 | |||
diff --git a/README.adoc b/README.adoc index 9615f65..47c0a2b 100644 --- a/README.adoc +++ b/README.adoc | |||
@@ -71,7 +71,7 @@ Although we have used U-Boot so far, other boot loaders can be configured work w | |||
71 | * OSTREE_BRANCHNAME - the branch your rootfs will be committed to. Defaults to "ota" | 71 | * OSTREE_BRANCHNAME - the branch your rootfs will be committed to. Defaults to "ota" |
72 | * OSTREE_OSNAME - OS deployment name on your target device. For more information about deployments and osnames see the https://ostree.readthedocs.io/en/latest/manual/deployment/[OSTree documentation]. Defaults to "poky". | 72 | * OSTREE_OSNAME - OS deployment name on your target device. For more information about deployments and osnames see the https://ostree.readthedocs.io/en/latest/manual/deployment/[OSTree documentation]. Defaults to "poky". |
73 | * OSTREE_INITRAMFS_IMAGE - initramfs/initrd image that is used as a proxy while booting into OSTree deployment. Do not change this setting unless you are sure that your initramfs can serve as such a proxy. | 73 | * OSTREE_INITRAMFS_IMAGE - initramfs/initrd image that is used as a proxy while booting into OSTree deployment. Do not change this setting unless you are sure that your initramfs can serve as such a proxy. |
74 | * OSTREE_PUSH_CREDENTIALS - when set, your ostree commit will be pushed to a remote repo as a bitbake step. This should be the path to a JSON credentials file in https://github.com/advancedtelematic/sota-tools#credentials[the format accepted by garage-push]. | 74 | * SOTA_PACKED_CREDENTIALS - when set, your ostree commit will be pushed to a remote repo as a bitbake step. This should be the path to a JSON credentials file in https://github.com/advancedtelematic/sota-tools#credentials[the format accepted by garage-push]. |
75 | 75 | ||
76 | == Usage | 76 | == Usage |
77 | 77 | ||
@@ -113,12 +113,12 @@ ostree pull agl-snapshot agl-ota | |||
113 | ostree admin deploy --os=agl agl-snapshot:agl-ota | 113 | ostree admin deploy --os=agl agl-snapshot:agl-ota |
114 | .... | 114 | .... |
115 | 115 | ||
116 | === SOTA tools | 116 | === garage-push |
117 | 117 | ||
118 | SOTA tools currently contains only one tool, garage-push, which lets you push the changes in OSTree repository generated by bitbake process. It communicates with an http server capable of querying files with HEAD requests and uploading them with POST requests. In particular, this can be used with http://www.atsgarage.com/[ATS Garage]. garage-push is used as follows: | 118 | The https://github.com/advancedtelematic/aktualizr[aktualizr repo] contains a tool, garage-push, which lets you push the changes in OSTree repository generated by bitbake process. It communicates with an http server capable of querying files with HEAD requests and uploading them with POST requests. In particular, this can be used with http://www.atsgarage.com/[ATS Garage]. garage-push is used as follows: |
119 | 119 | ||
120 | .... | 120 | .... |
121 | garage-push --repo=/path/to/ostree-repo --ref=mybranch --credentials=/path/to/credentials.json | 121 | garage-push --repo=/path/to/ostree-repo --ref=mybranch --credentials=/path/to/credentials.zip |
122 | .... | 122 | .... |
123 | 123 | ||
124 | You can set OSTREE_PUSH_CREDENTIALS in your local.conf to make your build results be automatically synchronized with a remote server. Credentials are stored in the JSON format described in the https://github.com/advancedtelematic/sota-tools#credentials[sota-tools README]. | 124 | You can set SOTA_PACKED_CREDENTIALS in your local.conf to make your build results be automatically synchronized with a remote server. Credentials are stored in the JSON format described in the https://github.com/advancedtelematic/aktualizr/blob/master/README.sotatools.adoc[garage-push README]. This JSON file can be optionally stored inside a zip file, although if it is stored this way, the JSON file must be named treehub.json. |
diff --git a/classes/image_types_ostree.bbclass b/classes/image_types_ostree.bbclass index adcafe3..1f8e195 100644 --- a/classes/image_types_ostree.bbclass +++ b/classes/image_types_ostree.bbclass | |||
@@ -159,7 +159,7 @@ IMAGE_CMD_ostree () { | |||
159 | } | 159 | } |
160 | 160 | ||
161 | IMAGE_TYPEDEP_ostreepush = "ostree" | 161 | IMAGE_TYPEDEP_ostreepush = "ostree" |
162 | IMAGE_DEPENDS_ostreepush = "sota-tools-native:do_populate_sysroot" | 162 | IMAGE_DEPENDS_ostreepush = "aktualizr-native:do_populate_sysroot" |
163 | IMAGE_CMD_ostreepush () { | 163 | IMAGE_CMD_ostreepush () { |
164 | # Print warnings if credetials are not set or if the file has not been found. | 164 | # Print warnings if credetials are not set or if the file has not been found. |
165 | if [ -n "${SOTA_PACKED_CREDENTIALS}" ]; then | 165 | if [ -n "${SOTA_PACKED_CREDENTIALS}" ]; then |
diff --git a/classes/sdcard_image-rpi-ota.bbclass b/classes/sdcard_image-rpi-ota.bbclass index 81d71e9..9c859fe 100644 --- a/classes/sdcard_image-rpi-ota.bbclass +++ b/classes/sdcard_image-rpi-ota.bbclass | |||
@@ -73,10 +73,6 @@ SDIMG_OTA = "${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.rpi-sdimg-ota" | |||
73 | # Additional files and/or directories to be copied into the vfat partition from the IMAGE_ROOTFS. | 73 | # Additional files and/or directories to be copied into the vfat partition from the IMAGE_ROOTFS. |
74 | FATPAYLOAD ?= "" | 74 | FATPAYLOAD ?= "" |
75 | 75 | ||
76 | IMAGEDATESTAMP = "${@time.strftime('%Y.%m.%d',time.gmtime())}" | ||
77 | IMAGE_CMD_rpi-sdimg-ota[vardepsexclude] += "IMAGEDATESTAMP" | ||
78 | IMAGE_CMD_rpi-sdimg-ota[vardepsexclude] += "DATETIME" | ||
79 | |||
80 | IMAGE_CMD_rpi-sdimg-ota () { | 76 | IMAGE_CMD_rpi-sdimg-ota () { |
81 | 77 | ||
82 | # Align partitions | 78 | # Align partitions |
@@ -151,7 +147,7 @@ IMAGE_CMD_rpi-sdimg-ota () { | |||
151 | fi | 147 | fi |
152 | 148 | ||
153 | # Add stamp file | 149 | # Add stamp file |
154 | echo "${IMAGE_NAME}-${IMAGEDATESTAMP}" > ${WORKDIR}/image-version-info | 150 | echo "${IMAGE_NAME}" > ${WORKDIR}/image-version-info |
155 | mcopy -i ${WORKDIR}/boot.img -v ${WORKDIR}//image-version-info :: | 151 | mcopy -i ${WORKDIR}/boot.img -v ${WORKDIR}//image-version-info :: |
156 | 152 | ||
157 | # Burn Partitions | 153 | # Burn Partitions |
diff --git a/classes/sota_bleeding.inc b/classes/sota_bleeding.inc index 77d004b..fc5947d 100644 --- a/classes/sota_bleeding.inc +++ b/classes/sota_bleeding.inc | |||
@@ -1,2 +1 @@ | |||
1 | SRCREV_pn-aktualizr ?= "${AUTOREV}" | SRCREV_pn-aktualizr ?= "${AUTOREV}" | |
2 | SRCREV_pn-aktualizr-native ?= "${AUTOREV}" | ||
diff --git a/lib/oeqa/selftest/garage_push.py b/lib/oeqa/selftest/garage_push.py new file mode 100644 index 0000000..3490de5 --- /dev/null +++ b/lib/oeqa/selftest/garage_push.py | |||
@@ -0,0 +1,39 @@ | |||
1 | import unittest | ||
2 | import os | ||
3 | import logging | ||
4 | |||
5 | from oeqa.selftest.base import oeSelfTest | ||
6 | from oeqa.utils.commands import runCmd, bitbake, get_bb_var | ||
7 | |||
8 | class GaragePushTests(oeSelfTest): | ||
9 | |||
10 | @classmethod | ||
11 | def setUpClass(cls): | ||
12 | # Ensure we have the right data in pkgdata | ||
13 | logger = logging.getLogger("selftest") | ||
14 | logger.info('Running bitbake to build aktualizr-native tools') | ||
15 | bitbake('aktualizr-native garage-sign-native') | ||
16 | |||
17 | def test_help(self): | ||
18 | image_dir = get_bb_var("D", "aktualizr-native") | ||
19 | bin_dir = get_bb_var("bindir", "aktualizr-native") | ||
20 | gp_path = os.path.join(image_dir, bin_dir[1:], 'garage-push') | ||
21 | result = runCmd('%s --help' % gp_path, ignore_status=True) | ||
22 | self.assertEqual(result.status, 0, "Status not equal to 0. output: %s" % result.output) | ||
23 | |||
24 | def test_java(self): | ||
25 | result = runCmd('which java', ignore_status=True) | ||
26 | self.assertEqual(result.status, 0, "Java not found.") | ||
27 | |||
28 | def test_sign(self): | ||
29 | image_dir = get_bb_var("D", "garage-sign-native") | ||
30 | bin_dir = get_bb_var("bindir", "garage-sign-native") | ||
31 | gs_path = os.path.join(image_dir, bin_dir[1:], 'garage-sign') | ||
32 | result = runCmd('%s --help' % gs_path, ignore_status=True) | ||
33 | self.assertEqual(result.status, 0, "Status not equal to 0. output: %s" % result.output) | ||
34 | |||
35 | def test_push(self): | ||
36 | bitbake('core-image-minimal') | ||
37 | self.write_config('IMAGE_INSTALL_append = " man "') | ||
38 | bitbake('core-image-minimal') | ||
39 | |||
diff --git a/recipes-sota/aktualizr/aktualizr-auto-prov.bb b/recipes-sota/aktualizr/aktualizr-auto-prov.bb index 48777b2..4f9fe4f 100644 --- a/recipes-sota/aktualizr/aktualizr-auto-prov.bb +++ b/recipes-sota/aktualizr/aktualizr-auto-prov.bb | |||
@@ -39,8 +39,8 @@ do_install_append() { | |||
39 | if [ -n "${SOTA_PACKED_CREDENTIALS}" ]; then | 39 | if [ -n "${SOTA_PACKED_CREDENTIALS}" ]; then |
40 | install -d ${D}/${systemd_unitdir}/system | 40 | install -d ${D}/${systemd_unitdir}/system |
41 | install -m 0644 ${WORKDIR}/aktualizr-autoprovision.service ${D}/${systemd_unitdir}/system/aktualizr.service | 41 | install -m 0644 ${WORKDIR}/aktualizr-autoprovision.service ${D}/${systemd_unitdir}/system/aktualizr.service |
42 | install -d ${D}/usr/lib/sota | 42 | install -d ${D}${libdir}/sota |
43 | install -m "0644" ${WORKDIR}/sota_autoprov.toml ${D}/usr/lib/sota/sota.toml | 43 | install -m "0644" ${WORKDIR}/sota_autoprov.toml ${D}${libdir}/sota/sota.toml |
44 | 44 | ||
45 | # deploy SOTA credentials | 45 | # deploy SOTA credentials |
46 | if [ -e ${SOTA_PACKED_CREDENTIALS} ]; then | 46 | if [ -e ${SOTA_PACKED_CREDENTIALS} ]; then |
@@ -57,6 +57,6 @@ do_install_append() { | |||
57 | 57 | ||
58 | FILES_${PN} = " \ | 58 | FILES_${PN} = " \ |
59 | ${systemd_unitdir}/system/aktualizr.service \ | 59 | ${systemd_unitdir}/system/aktualizr.service \ |
60 | /usr/lib/sota/sota.toml \ | 60 | ${libdir}/sota/sota.toml \ |
61 | /var/sota/sota_provisioning_credentials.zip \ | 61 | /var/sota/sota_provisioning_credentials.zip \ |
62 | " | 62 | " |
diff --git a/recipes-sota/aktualizr/aktualizr-implicit-prov.bb b/recipes-sota/aktualizr/aktualizr-implicit-prov.bb index a01ef48..21e38c9 100644 --- a/recipes-sota/aktualizr/aktualizr-implicit-prov.bb +++ b/recipes-sota/aktualizr/aktualizr-implicit-prov.bb | |||
@@ -22,13 +22,13 @@ inherit systemd | |||
22 | do_install() { | 22 | do_install() { |
23 | install -d ${D}/${systemd_unitdir}/system | 23 | install -d ${D}/${systemd_unitdir}/system |
24 | install -m 0644 ${WORKDIR}/aktualizr-autoprovision.service ${D}/${systemd_unitdir}/system/aktualizr.service | 24 | install -m 0644 ${WORKDIR}/aktualizr-autoprovision.service ${D}/${systemd_unitdir}/system/aktualizr.service |
25 | install -d ${D}/usr/lib/sota | 25 | install -d ${D}${libdir}/sota |
26 | aktualizr_implicit_writer -c ${SOTA_PACKED_CREDENTIALS} \ | 26 | aktualizr_implicit_writer -c ${SOTA_PACKED_CREDENTIALS} \ |
27 | -i ${WORKDIR}/sota_implicit_prov.toml -o ${D}/usr/lib/sota/sota.toml -p ${D} | 27 | -i ${WORKDIR}/sota_implicit_prov.toml -o ${D}${libdir}/sota/sota.toml -p ${D} |
28 | } | 28 | } |
29 | 29 | ||
30 | FILES_${PN} = " \ | 30 | FILES_${PN} = " \ |
31 | ${systemd_unitdir}/system/aktualizr.service \ | 31 | ${systemd_unitdir}/system/aktualizr.service \ |
32 | /usr/lib/sota/sota.toml \ | 32 | ${libdir}/sota/sota.toml \ |
33 | /usr/lib/sota/root.crt \ | 33 | ${libdir}/sota/root.crt \ |
34 | " | 34 | " |
diff --git a/recipes-sota/aktualizr/aktualizr-native_git.bb b/recipes-sota/aktualizr/aktualizr-native_git.bb deleted file mode 100644 index 59479fd..0000000 --- a/recipes-sota/aktualizr/aktualizr-native_git.bb +++ /dev/null | |||
@@ -1,16 +0,0 @@ | |||
1 | require aktualizr_common.inc | ||
2 | |||
3 | DEPENDS = "boost-native openssl-native libarchive-native libsodium-native" | ||
4 | |||
5 | inherit native | ||
6 | |||
7 | EXTRA_OECMAKE = "-DWARNING_AS_ERROR=OFF -DCMAKE_BUILD_TYPE=Release -DBUILD_OSTREE=OFF -DAKTUALIZR_VERSION=${PV}" | ||
8 | |||
9 | do_install_append () { | ||
10 | rm ${D}${bindir}/aktualizr | ||
11 | rm ${D}${bindir}/aktualizr_cert_provider | ||
12 | } | ||
13 | |||
14 | FILES_${PN} = " \ | ||
15 | ${bindir}/aktualizr_implicit_writer \ | ||
16 | " | ||
diff --git a/recipes-sota/aktualizr/aktualizr_common.inc b/recipes-sota/aktualizr/aktualizr_common.inc deleted file mode 100644 index 7ed3614..0000000 --- a/recipes-sota/aktualizr/aktualizr_common.inc +++ /dev/null | |||
@@ -1,19 +0,0 @@ | |||
1 | SUMMARY = "Aktualizr SOTA Client" | ||
2 | DESCRIPTION = "SOTA Client application written in C++" | ||
3 | HOMEPAGE = "https://github.com/advancedtelematic/aktualizr" | ||
4 | SECTION = "base" | ||
5 | LICENSE = "MPL-2.0" | ||
6 | LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=9741c346eef56131163e13b9db1241b3" | ||
7 | |||
8 | PV = "1.0+git${SRCPV}" | ||
9 | PR = "7" | ||
10 | |||
11 | SRC_URI = " \ | ||
12 | git://github.com/advancedtelematic/aktualizr;branch=${BRANCH} \ | ||
13 | " | ||
14 | SRCREV = "59c276c1d4800d025594b53900ee964533695731" | ||
15 | BRANCH ?= "master" | ||
16 | |||
17 | S = "${WORKDIR}/git" | ||
18 | |||
19 | inherit cmake | ||
diff --git a/recipes-sota/aktualizr/aktualizr_git.bb b/recipes-sota/aktualizr/aktualizr_git.bb index 1b3986a..470c9bf 100644 --- a/recipes-sota/aktualizr/aktualizr_git.bb +++ b/recipes-sota/aktualizr/aktualizr_git.bb | |||
@@ -1,22 +1,52 @@ | |||
1 | require aktualizr_common.inc | 1 | SUMMARY = "Aktualizr SOTA Client" |
2 | DESCRIPTION = "SOTA Client application written in C++" | ||
3 | HOMEPAGE = "https://github.com/advancedtelematic/aktualizr" | ||
4 | SECTION = "base" | ||
5 | LICENSE = "MPL-2.0" | ||
6 | LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=9741c346eef56131163e13b9db1241b3" | ||
2 | 7 | ||
3 | DEPENDS = "boost curl jansson openssl libarchive libsodium ostree" | 8 | DEPENDS = "boost curl openssl libarchive libsodium " |
4 | RDEPENDS_${PN} = "lshw" | 9 | DEPENDS_append_class-target = "jansson ostree ${@bb.utils.contains('SOTA_CLIENT_FEATURES', 'hsm', ' libp11', '', d)} " |
10 | DEPENDS_append_class-native = "glib-2.0-native " | ||
5 | 11 | ||
6 | DEPENDS_append = "${@bb.utils.contains('SOTA_CLIENT_FEATURES', 'hsm', ' libp11', '', d)}" | 12 | RDEPENDS_${PN}_class-target = "lshw " |
7 | RDEPENDS_${PN}_append = "${@bb.utils.contains('SOTA_CLIENT_FEATURES', 'hsm', ' engine-pkcs11', '', d)}" | 13 | RDEPENDS_${PN}_append_class-target = "${@bb.utils.contains('SOTA_CLIENT_FEATURES', 'hsm', ' engine-pkcs11', '', d)} " |
8 | RDEPENDS_${PN}_append = "${@bb.utils.contains('SOTA_CLIENT_FEATURES', 'hsm-test', ' softhsm softhsm-testtoken', '', d)}" | 14 | RDEPENDS_${PN}_append_class-target = "${@bb.utils.contains('SOTA_CLIENT_FEATURES', 'hsm-test', ' softhsm softhsm-testtoken', '', d)} " |
9 | 15 | ||
10 | inherit systemd | 16 | PV = "1.0+git${SRCPV}" |
17 | PR = "7" | ||
11 | 18 | ||
12 | EXTRA_OECMAKE = "-DWARNING_AS_ERROR=OFF -DCMAKE_BUILD_TYPE=Release -DBUILD_OSTREE=ON ${@bb.utils.contains('SOTA_CLIENT_FEATURES', 'hsm', '-DBUILD_P11=ON', '', d)} -DAKTUALIZR_VERSION=${PV}" | 19 | SRC_URI = " \ |
20 | git://github.com/advancedtelematic/aktualizr;branch=${BRANCH} \ | ||
21 | " | ||
22 | SRCREV = "67c4f44c4136d16871726449502e3926098e8524" | ||
23 | BRANCH ?= "master" | ||
24 | |||
25 | S = "${WORKDIR}/git" | ||
26 | |||
27 | inherit cmake | ||
28 | |||
29 | BBCLASSEXTEND =+ "native" | ||
30 | |||
31 | EXTRA_OECMAKE = "-DWARNING_AS_ERROR=OFF -DCMAKE_BUILD_TYPE=Release -DAKTUALIZR_VERSION=${PV} " | ||
32 | EXTRA_OECMAKE_append_class-target = "-DBUILD_OSTREE=ON ${@bb.utils.contains('SOTA_CLIENT_FEATURES', 'hsm', '-DBUILD_P11=ON', '', d)} " | ||
33 | EXTRA_OECMAKE_append_class-native = "-DBUILD_SOTA_TOOLS=ON -DBUILD_OSTREE=OFF " | ||
13 | 34 | ||
14 | do_install_append () { | 35 | do_install_append () { |
15 | rm ${D}${bindir}/aktualizr_cert_provider | 36 | rm -f ${D}${bindir}/aktualizr_cert_provider |
16 | rm ${D}${bindir}/aktualizr_implicit_writer | 37 | rm -f ${D}${bindir}/garage-deploy |
17 | rm ${D}${bindir}/garage-deploy | 38 | } |
39 | do_install_append_class-target () { | ||
40 | rm -f ${D}${bindir}/aktualizr_implicit_writer | ||
41 | } | ||
42 | do_install_append_class-native () { | ||
43 | rm -f ${D}${bindir}/aktualizr | ||
18 | } | 44 | } |
19 | 45 | ||
20 | FILES_${PN} = " \ | 46 | FILES_${PN}_class-target = " \ |
21 | ${bindir}/aktualizr \ | 47 | ${bindir}/aktualizr \ |
22 | " | 48 | " |
49 | FILES_${PN}_class-native = " \ | ||
50 | ${bindir}/aktualizr_implicit_writer \ | ||
51 | ${bindir}/garage-push \ | ||
52 | " | ||
diff --git a/recipes-sota/garage-sign/garage-sign.bb b/recipes-sota/garage-sign/garage-sign.bb new file mode 100644 index 0000000..ccd7299 --- /dev/null +++ b/recipes-sota/garage-sign/garage-sign.bb | |||
@@ -0,0 +1,34 @@ | |||
1 | SUMMARY = "garage-sign" | ||
2 | DESCRIPTION = "Metadata signing tool for ATS Garage" | ||
3 | HOMEPAGE = "https://ats-tuf-cli-releases.s3-eu-central-1.amazonaws.com/index.html" | ||
4 | SECTION = "base" | ||
5 | LICENSE = "CLOSED" | ||
6 | LIC_FILES_CHKSUM = "file://${S}/docs/LICENSE;md5=3025e77db7bd3f1d616b3ffd11d54c94" | ||
7 | DEPENDS = "" | ||
8 | |||
9 | PV = "0.2.0-6-g6af6ecd" | ||
10 | |||
11 | SRC_URI = " \ | ||
12 | https://ats-tuf-cli-releases.s3-eu-central-1.amazonaws.com/cli-${PV}.tgz \ | ||
13 | " | ||
14 | |||
15 | SRC_URI[md5sum] = "39941607ddef3a93476e267ad7bf6280" | ||
16 | SRC_URI[sha256sum] = "fbd2ea56f21341146844b02837377b08e63a3e361079e2c65142c2ed881c3b5d" | ||
17 | |||
18 | S = "${WORKDIR}/${BPN}" | ||
19 | |||
20 | BBCLASSEXTEND =+ "native" | ||
21 | |||
22 | do_install() { | ||
23 | install -d ${D}${bindir} | ||
24 | install -m "0755" -t ${D}${bindir} ${S}/bin/* | ||
25 | install -d ${D}${libdir} | ||
26 | install -m "0644" -t ${D}${libdir} ${S}/lib/* | ||
27 | } | ||
28 | |||
29 | FILES_${PN} = " \ | ||
30 | /usr/bin \ | ||
31 | /usr/bin/garage-sign.bat \ | ||
32 | /usr/bin/garage-sign \ | ||
33 | /usr/lib/* \ | ||
34 | " | ||
diff --git a/recipes-sota/rvi-sota-client/rvi-sota-client.inc b/recipes-sota/rvi-sota-client/rvi-sota-client.inc index 6718bab..712b9b3 100644 --- a/recipes-sota/rvi-sota-client/rvi-sota-client.inc +++ b/recipes-sota/rvi-sota-client/rvi-sota-client.inc | |||
@@ -13,12 +13,12 @@ SRC_URI[index.md5sum] = "6a635e8a081b4d4ba4cebffd721c2d7d" | |||
13 | SRC_URI[index.sha256sum] = "1913c41d4b8de89a931b6f9e418f83e70a083e12e6c247e8510ee932571ebae2" | 13 | SRC_URI[index.sha256sum] = "1913c41d4b8de89a931b6f9e418f83e70a083e12e6c247e8510ee932571ebae2" |
14 | 14 | ||
15 | # also update PV and SRC_URI crates when updating SRCREV | 15 | # also update PV and SRC_URI crates when updating SRCREV |
16 | SRCREV = "d41540a54ee7bba20835b337f3a477d5f1386c76" | 16 | SRCREV = "be8ec83af2051a2b2499ce8878242771c65f0f1c" |
17 | 17 | ||
18 | PR = "1" | 18 | PR = "1" |
19 | 19 | ||
20 | # generate with: `make package-version` | 20 | # generate with: `make package-version` |
21 | PV = "0.2.33-76-gd41540a" | 21 | PV = "0.2.34-8-gbe8ec83" |
22 | 22 | ||
23 | # generate with: `make yocto-version` | 23 | # generate with: `make yocto-version` |
24 | SRC_URI = " \ | 24 | SRC_URI = " \ |
@@ -27,114 +27,142 @@ file://sota-client-autoprovision.service \ | |||
27 | file://sota-client-ostree.service \ | 27 | file://sota-client-ostree.service \ |
28 | file://sota-client-uptane.service \ | 28 | file://sota-client-uptane.service \ |
29 | file://sota-installer.service \ | 29 | file://sota-installer.service \ |
30 | crate://crates.io/adler32/1.0.2 \ | ||
30 | crate://crates.io/advapi32-sys/0.2.0 \ | 31 | crate://crates.io/advapi32-sys/0.2.0 \ |
31 | crate://crates.io/aho-corasick/0.6.3 \ | 32 | crate://crates.io/aho-corasick/0.6.3 \ |
32 | crate://crates.io/ansi_term/0.9.0 \ | 33 | crate://crates.io/ansi_term/0.9.0 \ |
33 | crate://crates.io/antidote/1.0.0 \ | 34 | crate://crates.io/antidote/1.0.0 \ |
34 | crate://crates.io/atty/0.2.2 \ | 35 | crate://crates.io/atty/0.2.3 \ |
35 | crate://crates.io/backtrace/0.3.2 \ | 36 | crate://crates.io/backtrace/0.3.3 \ |
36 | crate://crates.io/backtrace-sys/0.1.11 \ | 37 | crate://crates.io/backtrace-sys/0.1.15 \ |
37 | crate://crates.io/base64/0.5.2 \ | 38 | crate://crates.io/base64/0.6.0 \ |
39 | crate://crates.io/bincode/0.9.0 \ | ||
38 | crate://crates.io/bit-set/0.4.0 \ | 40 | crate://crates.io/bit-set/0.4.0 \ |
39 | crate://crates.io/bit-vec/0.4.4 \ | 41 | crate://crates.io/bit-vec/0.4.4 \ |
42 | crate://crates.io/bitflags/0.7.0 \ | ||
40 | crate://crates.io/bitflags/0.9.1 \ | 43 | crate://crates.io/bitflags/0.9.1 \ |
44 | crate://crates.io/block-buffer/0.2.0 \ | ||
45 | crate://crates.io/byte-tools/0.2.0 \ | ||
41 | crate://crates.io/byteorder/1.1.0 \ | 46 | crate://crates.io/byteorder/1.1.0 \ |
42 | crate://crates.io/bytes/0.4.4 \ | 47 | crate://crates.io/bytes/0.4.5 \ |
48 | crate://crates.io/cc/1.0.1 \ | ||
43 | crate://crates.io/cfg-if/0.1.2 \ | 49 | crate://crates.io/cfg-if/0.1.2 \ |
44 | crate://crates.io/chan/0.1.19 \ | 50 | crate://crates.io/chan/0.1.19 \ |
45 | crate://crates.io/chan-signal/0.2.0 \ | 51 | crate://crates.io/chan-signal/0.3.1 \ |
46 | crate://crates.io/chrono/0.4.0 \ | 52 | crate://crates.io/chrono/0.4.0 \ |
47 | crate://crates.io/clap/2.25.0 \ | 53 | crate://crates.io/clap/2.26.2 \ |
54 | crate://crates.io/coco/0.1.1 \ | ||
55 | crate://crates.io/constant_time_eq/0.1.3 \ | ||
48 | crate://crates.io/core-foundation/0.2.3 \ | 56 | crate://crates.io/core-foundation/0.2.3 \ |
49 | crate://crates.io/core-foundation-sys/0.2.3 \ | 57 | crate://crates.io/core-foundation-sys/0.2.3 \ |
50 | crate://crates.io/crossbeam/0.2.10 \ | 58 | crate://crates.io/crossbeam/0.3.0 \ |
51 | crate://crates.io/crypt32-sys/0.2.0 \ | 59 | crate://crates.io/crypt32-sys/0.2.0 \ |
60 | crate://crates.io/crypto-mac/0.4.0 \ | ||
52 | crate://crates.io/dbghelp-sys/0.2.0 \ | 61 | crate://crates.io/dbghelp-sys/0.2.0 \ |
53 | crate://crates.io/dbus/0.5.3 \ | 62 | crate://crates.io/dbus/0.5.4 \ |
54 | crate://crates.io/dtoa/0.4.1 \ | 63 | crate://crates.io/digest/0.6.2 \ |
64 | crate://crates.io/dtoa/0.4.2 \ | ||
65 | crate://crates.io/either/1.2.0 \ | ||
55 | crate://crates.io/env_logger/0.4.3 \ | 66 | crate://crates.io/env_logger/0.4.3 \ |
56 | crate://crates.io/error-chain/0.10.0 \ | 67 | crate://crates.io/error-chain/0.10.0 \ |
57 | crate://crates.io/filetime/0.1.10 \ | 68 | crate://crates.io/fake-simd/0.1.2 \ |
69 | crate://crates.io/filetime/0.1.14 \ | ||
58 | crate://crates.io/foreign-types/0.2.0 \ | 70 | crate://crates.io/foreign-types/0.2.0 \ |
59 | crate://crates.io/gcc/0.3.51 \ | 71 | crate://crates.io/fuchsia-zircon/0.2.1 \ |
60 | crate://crates.io/getopts/0.2.14 \ | 72 | crate://crates.io/fuchsia-zircon-sys/0.2.0 \ |
73 | crate://crates.io/futures/0.1.16 \ | ||
74 | crate://crates.io/gcc/0.3.54 \ | ||
75 | crate://crates.io/generic-array/0.8.3 \ | ||
76 | crate://crates.io/getopts/0.2.15 \ | ||
61 | crate://crates.io/hex/0.2.0 \ | 77 | crate://crates.io/hex/0.2.0 \ |
78 | crate://crates.io/hmac/0.4.2 \ | ||
62 | crate://crates.io/httparse/1.2.3 \ | 79 | crate://crates.io/httparse/1.2.3 \ |
63 | crate://crates.io/hyper/0.10.12 \ | 80 | crate://crates.io/hyper/0.10.13 \ |
64 | crate://crates.io/hyper-native-tls/0.2.4 \ | 81 | crate://crates.io/hyper-native-tls/0.2.4 \ |
65 | crate://crates.io/idna/0.1.4 \ | 82 | crate://crates.io/idna/0.1.4 \ |
66 | crate://crates.io/iovec/0.1.0 \ | 83 | crate://crates.io/iovec/0.1.1 \ |
67 | crate://crates.io/itoa/0.3.1 \ | 84 | crate://crates.io/itoa/0.3.4 \ |
68 | crate://crates.io/kernel32-sys/0.2.2 \ | 85 | crate://crates.io/kernel32-sys/0.2.2 \ |
69 | crate://crates.io/language-tags/0.2.2 \ | 86 | crate://crates.io/language-tags/0.2.2 \ |
70 | crate://crates.io/lazy_static/0.2.8 \ | 87 | crate://crates.io/lazy_static/0.2.9 \ |
71 | crate://crates.io/libc/0.2.26 \ | 88 | crate://crates.io/libc/0.2.32 \ |
72 | crate://crates.io/libflate/0.1.5 \ | 89 | crate://crates.io/libdbus-sys/0.1.1 \ |
90 | crate://crates.io/libflate/0.1.11 \ | ||
73 | crate://crates.io/log/0.3.8 \ | 91 | crate://crates.io/log/0.3.8 \ |
74 | crate://crates.io/maplit/0.1.4 \ | 92 | crate://crates.io/maplit/0.1.5 \ |
75 | crate://crates.io/matches/0.1.6 \ | 93 | crate://crates.io/matches/0.1.6 \ |
76 | crate://crates.io/memchr/1.0.1 \ | 94 | crate://crates.io/memchr/1.0.1 \ |
77 | crate://crates.io/metadeps/1.1.2 \ | 95 | crate://crates.io/metadeps/1.1.2 \ |
78 | crate://crates.io/mime/0.2.6 \ | 96 | crate://crates.io/mime/0.2.6 \ |
79 | crate://crates.io/native-tls/0.1.4 \ | 97 | crate://crates.io/native-tls/0.1.4 \ |
80 | crate://crates.io/net2/0.2.29 \ | 98 | crate://crates.io/net2/0.2.31 \ |
99 | crate://crates.io/nodrop/0.1.9 \ | ||
81 | crate://crates.io/num/0.1.40 \ | 100 | crate://crates.io/num/0.1.40 \ |
82 | crate://crates.io/num-integer/0.1.35 \ | 101 | crate://crates.io/num-integer/0.1.35 \ |
83 | crate://crates.io/num-iter/0.1.34 \ | 102 | crate://crates.io/num-iter/0.1.34 \ |
84 | crate://crates.io/num-traits/0.1.40 \ | 103 | crate://crates.io/num-traits/0.1.40 \ |
85 | crate://crates.io/num_cpus/1.6.2 \ | 104 | crate://crates.io/num_cpus/1.7.0 \ |
86 | crate://crates.io/openssl/0.9.14 \ | 105 | crate://crates.io/odds/0.2.25 \ |
87 | crate://crates.io/openssl-sys/0.9.14 \ | 106 | crate://crates.io/openssl/0.9.19 \ |
88 | crate://crates.io/pem/0.4.0 \ | 107 | crate://crates.io/openssl-sys/0.9.19 \ |
108 | crate://crates.io/pem/0.4.1 \ | ||
89 | crate://crates.io/percent-encoding/1.0.0 \ | 109 | crate://crates.io/percent-encoding/1.0.0 \ |
90 | crate://crates.io/pkg-config/0.3.9 \ | 110 | crate://crates.io/pkg-config/0.3.9 \ |
91 | crate://crates.io/quote/0.3.15 \ | 111 | crate://crates.io/quote/0.3.15 \ |
92 | crate://crates.io/rand/0.3.15 \ | 112 | crate://crates.io/rand/0.3.17 \ |
93 | crate://crates.io/redox_syscall/0.1.26 \ | 113 | crate://crates.io/rayon/0.8.2 \ |
114 | crate://crates.io/rayon-core/1.2.1 \ | ||
115 | crate://crates.io/redox_syscall/0.1.31 \ | ||
116 | crate://crates.io/redox_termios/0.1.1 \ | ||
94 | crate://crates.io/regex/0.2.2 \ | 117 | crate://crates.io/regex/0.2.2 \ |
95 | crate://crates.io/regex-syntax/0.4.1 \ | 118 | crate://crates.io/regex-syntax/0.4.1 \ |
96 | crate://crates.io/reqwest/0.6.2 \ | 119 | crate://crates.io/reqwest/0.6.2 \ |
97 | crate://crates.io/ring/0.7.1 \ | 120 | crate://crates.io/ring/0.12.1 \ |
98 | crate://crates.io/rust-crypto/0.2.36 \ | 121 | crate://crates.io/rust-crypto/0.2.36 \ |
99 | crate://crates.io/rustc-demangle/0.1.4 \ | 122 | crate://crates.io/rustc-demangle/0.1.5 \ |
100 | crate://crates.io/rustc-serialize/0.3.24 \ | 123 | crate://crates.io/rustc-serialize/0.3.24 \ |
101 | crate://crates.io/schannel/0.1.7 \ | 124 | crate://crates.io/safemem/0.2.0 \ |
125 | crate://crates.io/schannel/0.1.8 \ | ||
126 | crate://crates.io/scopeguard/0.3.2 \ | ||
102 | crate://crates.io/secur32-sys/0.2.0 \ | 127 | crate://crates.io/secur32-sys/0.2.0 \ |
103 | crate://crates.io/security-framework/0.1.14 \ | 128 | crate://crates.io/security-framework/0.1.16 \ |
104 | crate://crates.io/security-framework-sys/0.1.14 \ | 129 | crate://crates.io/security-framework-sys/0.1.16 \ |
105 | crate://crates.io/serde/1.0.10 \ | 130 | crate://crates.io/serde/1.0.15 \ |
106 | crate://crates.io/serde_derive/1.0.10 \ | 131 | crate://crates.io/serde_derive/1.0.15 \ |
107 | crate://crates.io/serde_derive_internals/0.15.1 \ | 132 | crate://crates.io/serde_derive_internals/0.16.0 \ |
108 | crate://crates.io/serde_json/1.0.2 \ | 133 | crate://crates.io/serde_json/1.0.3 \ |
109 | crate://crates.io/serde_urlencoded/0.5.1 \ | 134 | crate://crates.io/serde_urlencoded/0.5.1 \ |
110 | crate://crates.io/sha1/0.2.0 \ | 135 | crate://crates.io/sha1/0.2.0 \ |
136 | crate://crates.io/sha2/0.6.0 \ | ||
111 | crate://crates.io/strsim/0.6.0 \ | 137 | crate://crates.io/strsim/0.6.0 \ |
112 | crate://crates.io/syn/0.11.11 \ | 138 | crate://crates.io/syn/0.11.11 \ |
113 | crate://crates.io/synom/0.11.3 \ | 139 | crate://crates.io/synom/0.11.3 \ |
114 | crate://crates.io/tar/0.4.13 \ | 140 | crate://crates.io/tar/0.4.13 \ |
115 | crate://crates.io/tempdir/0.3.5 \ | 141 | crate://crates.io/tempdir/0.3.5 \ |
116 | crate://crates.io/term_size/0.3.0 \ | 142 | crate://crates.io/term_size/0.3.0 \ |
117 | crate://crates.io/textwrap/0.6.0 \ | 143 | crate://crates.io/termion/1.5.1 \ |
144 | crate://crates.io/textwrap/0.8.0 \ | ||
118 | crate://crates.io/thread_local/0.3.4 \ | 145 | crate://crates.io/thread_local/0.3.4 \ |
119 | crate://crates.io/time/0.1.38 \ | 146 | crate://crates.io/time/0.1.38 \ |
120 | crate://crates.io/toml/0.2.1 \ | 147 | crate://crates.io/toml/0.2.1 \ |
121 | crate://crates.io/toml/0.4.2 \ | 148 | crate://crates.io/toml/0.4.5 \ |
122 | crate://crates.io/traitobject/0.1.0 \ | 149 | crate://crates.io/traitobject/0.1.0 \ |
123 | crate://crates.io/tungstenite/0.2.4 \ | 150 | crate://crates.io/tungstenite/0.5.0 \ |
124 | crate://crates.io/typeable/0.1.2 \ | 151 | crate://crates.io/typeable/0.1.2 \ |
152 | crate://crates.io/typenum/1.9.0 \ | ||
125 | crate://crates.io/unicase/1.4.2 \ | 153 | crate://crates.io/unicase/1.4.2 \ |
126 | crate://crates.io/unicode-bidi/0.3.3 \ | 154 | crate://crates.io/unicode-bidi/0.3.4 \ |
127 | crate://crates.io/unicode-normalization/0.1.5 \ | 155 | crate://crates.io/unicode-normalization/0.1.5 \ |
128 | crate://crates.io/unicode-segmentation/1.1.0 \ | ||
129 | crate://crates.io/unicode-width/0.1.4 \ | 156 | crate://crates.io/unicode-width/0.1.4 \ |
130 | crate://crates.io/unicode-xid/0.0.4 \ | 157 | crate://crates.io/unicode-xid/0.0.4 \ |
131 | crate://crates.io/unix_socket/0.5.0 \ | 158 | crate://crates.io/unix_socket/0.5.0 \ |
132 | crate://crates.io/unreachable/1.0.0 \ | 159 | crate://crates.io/unreachable/1.0.0 \ |
133 | crate://crates.io/untrusted/0.3.2 \ | 160 | crate://crates.io/untrusted/0.5.1 \ |
134 | crate://crates.io/url/1.5.1 \ | 161 | crate://crates.io/url/1.5.1 \ |
135 | crate://crates.io/utf-8/0.7.1 \ | 162 | crate://crates.io/utf-8/0.7.1 \ |
136 | crate://crates.io/utf8-ranges/1.0.0 \ | 163 | crate://crates.io/utf8-ranges/1.0.0 \ |
137 | crate://crates.io/uuid/0.5.1 \ | 164 | crate://crates.io/uuid/0.5.1 \ |
165 | crate://crates.io/vcpkg/0.2.2 \ | ||
138 | crate://crates.io/vec_map/0.8.0 \ | 166 | crate://crates.io/vec_map/0.8.0 \ |
139 | crate://crates.io/version_check/0.1.3 \ | 167 | crate://crates.io/version_check/0.1.3 \ |
140 | crate://crates.io/void/1.0.2 \ | 168 | crate://crates.io/void/1.0.2 \ |
diff --git a/recipes-sota/sota-tools/sota-tools_git.bb b/recipes-sota/sota-tools/sota-tools_git.bb deleted file mode 100644 index 5403d9a..0000000 --- a/recipes-sota/sota-tools/sota-tools_git.bb +++ /dev/null | |||
@@ -1,24 +0,0 @@ | |||
1 | DESCRIPTION = "Utility to push data to a server" | ||
2 | LICENSE = "MPL-2.0" | ||
3 | |||
4 | LIC_FILES_CHKSUM = "file://LICENSE;md5=65d26fcc2f35ea6a181ac777e42db1ea" | ||
5 | |||
6 | S = "${WORKDIR}/git" | ||
7 | |||
8 | SRC_URI = "gitsm://github.com/advancedtelematic/sota-tools.git;branch=master" | ||
9 | SRCREV = "216cb84db98e9b0f8c6c1c407f480c5dd0b3cf62" | ||
10 | |||
11 | inherit cmake | ||
12 | |||
13 | DEPENDS = "boost glib-2.0 curl libarchive" | ||
14 | |||
15 | BBCLASSEXTEND = "native" | ||
16 | |||
17 | FILES_${PN} = "${bindir}/garage-push" | ||
18 | |||
19 | EXTRA_OECMAKE = "-DWARNING_AS_ERROR=OFF" | ||
20 | |||
21 | do_install() { | ||
22 | install -d ${D}/${bindir} | ||
23 | install -m 755 garage-push ${D}/${bindir} | ||
24 | } | ||