Skip to content

App upgrade blocked by busy file #32

Description

@dp-42

Hello 1Password folks,

first, I really appreciate the efforts put into this app - it is written professionally, the documentation is fantastic and it is pretty! 👍

However, unfortunately I am currently facing an issue when I try to update the app:
As you utilize a scripted input that starts a Go binary the binary runs as a process on my Splunk instance - all good!
However, when I try to upload a new version of the app Splunk under the hood seems to store the uploaded app in a temporary location and then it will copy over the files to the actual app installation directory ($SPLUNK_HOME/etc/apps).
However, as the binary is currently in use, Splunk is not able overwrite it.

image

Here is also a more verbose output of the error message:

<?xml version="1.0" encoding="UTF-8"?>
<response>
  <messages>
    <msg type="ERROR">
      In handler 'localapps': Error installing application:
      Failed to copy: /opt/splunk/var/run/splunk/bundle_tmp/130a41b27f0becbe/onepassword_events_api
      to
      /opt/splunk/etc/apps/onepassword_events_api. 4 errors occurred. Description for first 4:
      [{operation:"copying source to destination", error:"Text file busy",
      src:"/opt/splunk/var/run/splunk/bundle_tmp/130a41b27f0becbe/onepassword_events_api/bin/signin_attempts",
      dest:"/opt/splunk/etc/apps/onepassword_events_api/bin/signin_attempts"}, {operation:"copying
      source to destination", error:"Text file busy",
      src:"/opt/splunk/var/run/splunk/bundle_tmp/130a41b27f0becbe/onepassword_events_api/bin/item_usages",
      dest:"/opt/splunk/etc/apps/onepassword_events_api/bin/item_usages"}, {operation:"transfering
      contents from source to destination", error:"Text file busy",
      src:"/opt/splunk/var/run/splunk/bundle_tmp/130a41b27f0becbe/onepassword_events_api/bin",
      dest:"/opt/splunk/etc/apps/onepassword_events_api/bin"}, {operation:"transfering contents from
      source to destination", error:"No such file or directory",
      src:"/opt/splunk/var/run/splunk/bundle_tmp/130a41b27f0becbe/onepassword_events_api",
      dest:"/opt/splunk/etc/apps/onepassword_events_api"}]</msg>
  </messages>
</response>

Therefore, I have to disable the inputs in the inputs.conf, do a debug/refresh, update the app and afterwards enable the inputs again.
That is a bit of a hassle - is this the intended way? 😊

Usually, many other apps work around this (as far as I know) with scheduling, so basically instead of just starting the script "permanently" they run it every X minutes, fetch the data generated after the last run and stop again.

Many thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions