# Copyright 2019 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

description    "Gets devices' metadata using fwupdtool"
author         "chromium-os-dev@chromium.org"

# This job is started by udev via custom events.
# Job duration is expected to be O(ms).
start on fwupdtool-getdevices
task

pre-start script
  mkdir -p /var/cache/fwupd /var/lib/fwupd
  chown -R fwupd:fwupd /var/cache/fwupd /var/lib/fwupd
end script

script
  exec minijail0 \
    --uts -e -l -p -N \
    -v -P /mnt/empty -b / -b /proc -t -r -b /dev,,1 -b /sys \
    -k run,/run,tmpfs -b /run/dbus -b /run/udev \
    -k /var,/var,tmpfs -b /var/cache/fwupd,,1 -b /var/lib/fwupd,,1 \
    -u fwupd -g fwupd \
    -c 'cap_dac_override,cap_sys_admin+e' \
    -- /usr/bin/fwupdtool get-devices --enable-json-state 2>&1 |
    logger -t "${UPSTART_JOB}"
end script
