Ombi: Updater

Created on 5 Jul 2017  Â·  63Comments  Â·  Source: tidusjar/Ombi

Need to finish the Auto updater

  • The updater it's very basic and very error prone, it was a quick whip up.

    • This needs refactoring to make it more stable and less error prone

    • Need a new settings page to enable if we should auto update

    • Need a new scheduled job to download the latest update (Not sure how we will do this yet) and fire off the auto update process.

V3 help wanted

All 63 comments

Not sure if it would help but what about using the same type of code like Sonarr/Radarr for the AutoUpdater. Both of those are completely autonomous with nightly updates or master updates depending on the branch selected and it even restarts the program after the update. Just thoughts :)

Having the same update ability as Sonarr would be a god send. Personally having to download a zip file and extract it is just annoying. Sonarr does updates so well.

I think this has been mentioned before on the old 'V3 beta issues' but just thought I'd post it here:
I've never gotten the 'Update' feature to work. I've tried both when running Ombi as a service and when manually running it through the terminal (it was suggested in the old thread running as a service may have caused an issue).

It always fails with the same issue in the log:

Oct 14 17:52:01 Ombi[24715]: warn: Hangfire.AutomaticRetryAttribute[0]
Oct 14 17:52:01 Ombi[24715]:       Failed to process the job 'fc8880c0-d540-4d62-b549-791f6b035638': an exception occurred. Retry attempt 7 of 10 will be performed in 00:23:50.
Oct 14 17:52:01 Ombi[24715]: System.IO.InvalidDataException: End of Central Directory record could not be found.
Oct 14 17:52:01 Ombi[24715]:    at System.IO.Compression.ZipArchive.ReadEndOfCentralDirectory()
Oct 14 17:52:01 Ombi[24715]:    at System.IO.Compression.ZipArchive.Init(Stream stream, ZipArchiveMode mode, Boolean leaveOpen)
Oct 14 17:52:01 Ombi[24715]:    at System.IO.Compression.ZipArchive..ctor(Stream stream, ZipArchiveMode mode, Boolean leaveOpen, Encoding entryNameEncoding)
Oct 14 17:52:01 Ombi[24715]:    at System.IO.Compression.ZipFile.Open(String archiveFileName, ZipArchiveMode mode, Encoding entryNameEncoding)
Oct 14 17:52:01 Ombi[24715]:    at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__16.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 196

In the meantime I've been downloading the newer versions of ombi manually and copying over the database file, which seems to be working.

Currently running Ubuntu 16.04.3 LTS.

Made a change to fix the above error @Scorcher7986

now the windows system wont trigger the update from 3.0.2101

Logs?

I'm still not able to get update working on Fedora. I can see the file get downloaded and extracted into TempUpdate/ then get permission denied. I'm on version 3.0.2121.

info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
Downloading the file linux.tar.gz from https://ci.appveyor.com/api/buildjobs/7j8s6wwkqi9s9746/artifacts/linux.tar.gz
warn: Hangfire.AutomaticRetryAttribute[0]
Failed to process the job '196': an exception occurred. Retry attempt 10 of 10 will be performed in 01:50:06.
System.ComponentModel.Win32Exception (0x80004005): Permission denied
at Interop.Sys.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean redirectStdin, Boolean redirectStdout, Boolean redirectStderr, Int32& lpChildPid, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd)
at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__16.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 184

Set the permissions on the Ombi directory to 777 and retry?

Should have mentioned that I've tried that.

Running V3 on Ubuntu (Linux 4.10.0-37-generic #41~16.04.1-Ubuntu). I get notified that there is an update, and when I click on the update button it says "we triggered the update job". However, nothing appears to happen after that. I still get the same notification that says update available. I have checked file and folder permissions for the ombi folder (all user and group permissions are set to rwx). I have also confirmed my user is running the ombi processes. My logs don't appear to be updating since I've installed V3.

Not just on Fedora, can't update on Ubuntu 16.04 either. Same error:

Oct 18 13:00:36 Ombi[5909]: warn: Hangfire.AutomaticRetryAttribute[0]
Oct 18 13:00:36 Ombi[5909]:       Failed to process the job '358': an exception occurred. Retry attempt 1 of 10 will be performed in 00:00:43.
Oct 18 13:00:36 Ombi[5909]: System.ComponentModel.Win32Exception (0x80004005): Permission denied
Oct 18 13:00:36 Ombi[5909]:    at Interop.Sys.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean redirectStdin, Boole
Oct 18 13:00:36 Ombi[5909]:    at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo)
Oct 18 13:00:36 Ombi[5909]:    at System.Diagnostics.Process.Start()
Oct 18 13:00:36 Ombi[5909]:    at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__16.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Job

Can someone manually update to the latest version and then trigger an auto update (when it's available) and let me know how it does?

It looks like it was compiled 3 times with no changes in between. I grabbed 3.0.2140 and still can't update.
I'm getting the same error that I was getting if I tried to run Ombi.Updater manually. I've tried renaming the file that it gets stuck on and it'll just get stuck on the next file.

bash-4.4$ [32762]: Process terminated successfully
Found 0 processes with the name: Ombi

Unhandled Exception: System.IO.IOException: The process cannot access the file '/opt/ombi3/Ombi.Schedule.dll' because it is being used by another process.
at System.IO.FileStream.Init(FileMode mode, FileShare share)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
at System.IO.UnixFileSystem.CopyFile(String sourceFullPath, String destFullPath, Boolean overwrite)
at System.IO.File.InternalCopy(String sourceFileName, String destFileName, Boolean overwrite)
at System.IO.File.Copy(String sourceFileName, String destFileName, Boolean overwrite)
at Ombi.Updater.Installer.MoveFiles(StartupOptions options) in C:\projects\requestplex\src\Ombi.Updater\Installer.cs:line 75
at Ombi.Updater.Installer.Start(StartupOptions options) in C:\projects\requestplex\src\Ombi.Updater\Installer.cs:line 37
at Ombi.Updater.Program.Main(String[] args) in C:\projects\requestplex\src\Ombi.Updater\Program.cs:line 20

Also seems to break Ombi. After restart:

Unhandled Exception: System.BadImageFormatException: Could not load file or assembly 'Ombi.Schedule, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null'. An attempt was made to load a program with an incorrect format.

at Ombi.DependencyInjection.IocExtensions.RegisterJobs(IServiceCollection services)
at Ombi.DependencyInjection.IocExtensions.RegisterApplicationDependencies(IServiceCollection services) in C:\projects\requestplex\src\Ombi.DependencyInjection\IocExtensions.cs:line 62
at Ombi.Startup.ConfigureServices(IServiceCollection services) in C:\projects\requestplex\src\Ombi\Startup.cs:line 125
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Microsoft.AspNetCore.Hosting.ConventionBasedStartup.ConfigureServices(IServiceCollection services)
at Microsoft.AspNetCore.Hosting.Internal.WebHost.EnsureApplicationServices()
at Microsoft.AspNetCore.Hosting.Internal.WebHost.BuildApplication()
at Microsoft.AspNetCore.Hosting.WebHostBuilder.Build()
at Ombi.Program.Main(String[] args) in C:\projects\requestplex\src\Ombi\Program.cs:line 64

Ok thanks for the update

@mattohm is it possible something is restarting the Ombi process?

As part of the auto updater we kill the Ombi process so we can replace the .dll's with the new ones, the reason we need to kill Ombi is so that the files are not in use.

I also see the line: Found 0 processes with the name: Ombi

What is the process name for Ombi? Maybe that's why, we couldn't find it to kill it.

It's killing Ombi. I can manually rename/remove files. I think the updater is holding them open for some reason.

Updater now stop work for me.

info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Product Version 3.0.2141-DotNetCore
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Version 3.0.2141
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Branch DotNetCore
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Service Version 3.0.2142
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      OS Information: Microsoft Windows 10.0.16299  X64
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      We are Windows
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Downloading the file windows.zip from https://ci.appveyor.com/api/buildjobs/mag4e6s0m8v88n70/artifacts/windows.zip

after this ombi crash or just dont start process again.

When i try to lunch ombi, it again try to update and again and again.
have to manual update from 2138 to 2141

I've just manually updated from 2151 to 2162, hopefully the 'Made the updater work again' commit has fixed things. I'll let you know once there's a new version to update to.

Just a sidenote, I noticed a new feature was introduced around 2151 being 'If you are getting any permissions issues, you can specify a user for the update process to run under', however it looks like this feature is unsupported on linux, or atleast unsupported on Ubuntu 16.04.3 LTS. Maybe a disclaimer about this on the settings page would be good.

Oct 22 13:56:32 Ombi[23851]: info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
Oct 22 13:56:32 Ombi[23851]:       Product Version 3.0.2151-DotNetCore
Oct 22 13:56:32 Ombi[23851]: info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
Oct 22 13:56:32 Ombi[23851]:       Version 3.0.2151
Oct 22 13:56:33 Ombi[23851]: info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
Oct 22 13:56:33 Ombi[23851]:       Branch DotNetCore
Oct 22 13:56:39 Ombi[23851]: info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
Oct 22 13:56:39 Ombi[23851]:       Service Version 3.0.2162
Oct 22 13:56:39 Ombi[23851]: info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
Oct 22 13:56:39 Ombi[23851]:       OS Information: Linux 4.4.0-93-generic #116-Ubuntu SMP Fri Aug 11 21:17:51 UTC 2017 X64
Oct 22 13:56:39 Ombi[23851]: info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
Oct 22 13:56:39 Ombi[23851]:       We are linux
Oct 22 13:56:39 Ombi[23851]: info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
Oct 22 13:56:39 Ombi[23851]:       Downloading the file linux.tar.gz from https://ci.appveyor.com/api/buildjobs/6mtq3ne42y7fdolq/artifacts/linux.tar.gz
Oct 22 13:56:57 Ombi[23851]: warn: Hangfire.AutomaticRetryAttribute[0]
Oct 22 13:56:57 Ombi[23851]:       Failed to process the job '945': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:42.
Oct 22 13:56:57 Ombi[23851]: System.PlatformNotSupportedException: Starting a process with a different identity is not supported on this platform.
Oct 22 13:56:57 Ombi[23851]:    at System.Diagnostics.ProcessStartInfo.set_UserName(String value)
Oct 22 13:56:57 Ombi[23851]:    at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__16.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 196

I've also now added the ability to run a user defined script to update the process. If that is enabled it will run the script every time there is an update available.

Is it possible to set the startup listening port after the update or auto-update?

The current update process downloads the new windows.zip file in the command prompt, stops the running .exe and exits the command session for the restart.

Ombi.exe then starts up again automatically but headless, only to be seen in Task Manager and running on the default port 5000.

This is the state after the update: https://i.imgur.com/t8jch7f.png

Meaning I have to stop it in task manager, then run ombi.exe --host http://*:3579 again from the command window every time.
For this reason I've had to disable auto-updates, otherwise it will update itself and not reconnect online again.

If this isn't possible, I could just alter my port forwarding to 5000 rather than 3579 for now.
However, this will mean I won't be able to see the console of Ombi, which allows me to see what's currently running, processing and what has failed in red. These items are not shown in the logs for some reason.

Good point about the startup arguments! I forgot to add those!

I am having issues with the updater not working at all and the only thing that works is stopping process, copying everything over, an restarting. Just wanted to bring it up in case you wanted to see some logs/etc.

I am also experiencing similar issues, most commonly with the auto-updater updating the program, but now not returning to Task Manger and starting again.
And if I turn automatic updates off, the Update button stayed greyed out after checking for updates for some reason.
Also, @tidusjar please can you advise how to add the startup arguments to the updater?

Hey guys, if you have issues with the updater please post some logs and include your OS.

@MrDragonsEye Any startup arguments that you use to launch Ombi is passed into the updater automatically.

If the auto updater is disabled then the update button is disabled, since that runs the auto updater.

Windows 10 Pro, all updates installed

2017-10-28 02:01:19.952 -04:00 [Warning] Failed to process the job '1282': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:27.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__16.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 198
2017-10-28 02:01:54.136 -04:00 [Information] 1 scheduled job(s) enqueued.
2017-10-28 02:02:30.832 -04:00 [Error] Failed to process the job '1282': an exception occurred.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__16.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 198
2017-10-28 08:01:21.515 -04:00 [Warning] Failed to process the job '1325': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:41.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__16.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 198
2017-10-28 08:02:10.929 -04:00 [Information] 1 scheduled job(s) enqueued.
2017-10-28 08:02:45.298 -04:00 [Error] Failed to process the job '1325': an exception occurred.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__16.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 198
2017-10-28 14:01:13.976 -04:00 [Warning] Failed to process the job '1368': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:15.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__16.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 198
2017-10-28 14:01:42.723 -04:00 [Information] 1 scheduled job(s) enqueued.
2017-10-28 14:02:05.501 -04:00 [Error] Failed to process the job '1368': an exception occurred.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__16.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 198
2017-10-28 16:24:58.573 -04:00 [Information] Hangfire Server stopped.
2017-10-28 16:28:26.017 -04:00 [Information] Start installing Hangfire SQL objects...
2017-10-28 16:28:26.091 -04:00 [Information] Hangfire SQL objects installed.
2017-10-28 16:28:26.110 -04:00 [Information] Starting Hangfire Server
2017-10-28 16:28:26.112 -04:00 [Information] Using job storage: 'SQLite Server: Ombi.db'
2017-10-28 16:28:26.113 -04:00 [Information] Using the following options for Hangfire Server:
2017-10-28 16:28:26.113 -04:00 [Information] Worker count: 1
2017-10-28 16:28:26.113 -04:00 [Information] Listening queues: 'default'
2017-10-28 16:28:26.113 -04:00 [Information] Shutdown timeout: 1.00:00:00
2017-10-28 16:28:26.113 -04:00 [Information] Schedule polling interval: 00:00:15

Tried with the most recent version this morning:

2017-10-29 02:01:14.058 -04:00 [Warning] Failed to process the job '1456': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:25.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218
2017-10-29 02:01:48.873 -04:00 [Information] 1 scheduled job(s) enqueued.
2017-10-29 02:02:22.032 -04:00 [Error] Failed to process the job '1456': an exception occurred.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218
2017-10-29 08:01:25.796 -04:00 [Warning] Failed to process the job '1499': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:39.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218
2017-10-29 08:02:05.880 -04:00 [Information] 1 scheduled job(s) enqueued.
2017-10-29 08:02:33.148 -04:00 [Error] Failed to process the job '1499': an exception occurred.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218

On ubuntu...

2017-10-28 18:11:58.431 -05:00 [Warning] Failed to process the job '2277': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:29. System.NullReferenceException: Object reference not set to an instance of an object. at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.RunScript(UpdateSettings settings, String downloadUrl) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 233 at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__17.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 212 2017-10-28 18:12:29.749 -05:00 [Information] 1 scheduled job(s) enqueued. 2017-10-28 18:17:18.395 -05:00 [Warning] Failed to process the job '2279': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:30. System.NullReferenceException: Object reference not set to an instance of an object. at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.RunScript(UpdateSettings settings, String downloadUrl) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 233 at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__17.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 212 2017-10-28 18:17:59.821 -05:00 [Information] 1 scheduled job(s) enqueued. 2017-10-28 18:18:08.509 -05:00 [Error] Failed to process the job '2279': an exception occurred. System.NullReferenceException: Object reference not set to an instance of an object. at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.RunScript(UpdateSettings settings, String downloadUrl) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 233 at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__17.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 212

Fixed that @Unimatrix0 .

Slightly revised what we pass the script: https://github.com/tidusjar/Ombi/wiki/Update-Settings

I removed the ProcessId since it's not really relevant (it was mainly for the Internal Ombi Updater)

I have issue with updater.

OS: Windows 10
in log is nothing special to see
log-20171108.txt

i try multiple update settings setup processname and login and pass and also try without them,
but every time only download extract files and kill ombi... i have it run manualy after.

You 100% sure we are not launching ombi? Check the processes

probably ombi launch after update, but only for few second after there is no process

Im having issues running the updater as well:

Ombi build Version:

V 3.0.2332

Update Branch:

Open Beta

Media Sever:

Plex

Media Server Version:

Operating System:

Distributor ID: Ubuntu
Description:    Ubuntu 14.04.5 LTS
Release:        14.04
Codename:       trusty

Ombi Applicable Logs (from /logs/ directory or the Admin page):

Hangfire job information:

+388msStarting the updater
+552msPath: /opt/ombiV3
+713msProduct Version 3.0.2332-DotNetCore
+876msVersion 3.0.2332
+1.027sBranch Version DotNetCore
+1.177sLooking for updates now
+9.430sUpdates: Ombi.Api.Service.Models.Updates
+9.578sService Version 3.0.2336
+9.748sOS Information: Linux 3.13.0-135-generic #184-Ubuntu SMP Wed Oct 18 11:55:51 UTC 2017 X64
+9.898sFound the download! linux.tar.gz
+10.056sURL https://ci.appveyor.com/api/buildjobs/riuxdbai67rrptbw/artifacts/linux.tar.gz
+10.215sClearing out Temp Path
+10.418sZip Dir: /opt/ombiV3/Ombi.gz
+10.584sStarting Download
+27.637sFinished Download
+27.777sExtracting ZIP
+30.485sFinished Extracting files
+30.647sStarting the Ombi.Updater process
+30.831sSystem.ComponentModel.Win32Exception (0x80004005): Permission denied
   at Interop.Sys.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean redirectStdin, Boolean redirectStdout, Boolean redirectStderr, Int32& lpChildPid, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd)
   at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo)
   at System.Diagnostics.Process.Start()
   at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 210

Log Information:

info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Product Version 3.0.2332-DotNetCore
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Version 3.0.2332
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Branch DotNetCore
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Service Version 3.0.2336
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      OS Information: Linux 3.13.0-135-generic #184-Ubuntu SMP Wed Oct 18 11:55:51 UTC 2017 X64
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      We are linux
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Downloading the file linux.tar.gz from https://ci.appveyor.com/api/buildjobs/riuxdbai67rrptbw/artifacts/linux.tar.gz
warn: Hangfire.AutomaticRetryAttribute[0]
      Failed to process the job '38': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:27.
System.ComponentModel.Win32Exception (0x80004005): Permission denied
   at Interop.Sys.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean redirectStdin, Boolean redirectStdout, Boolean redirectStderr, Int32& lpChildPid, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd)
   at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo)
   at System.Diagnostics.Process.Start()
   at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Product Version 3.0.2332-DotNetCore
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Version 3.0.2332
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Branch DotNetCore
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Service Version 3.0.2336
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      OS Information: Linux 3.13.0-135-generic #184-Ubuntu SMP Wed Oct 18 11:55:51 UTC 2017 X64
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      We are linux
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Downloading the file linux.tar.gz from https://ci.appveyor.com/api/buildjobs/riuxdbai67rrptbw/artifacts/linux.tar.gz
fail: Hangfire.AutomaticRetryAttribute[0]
      Failed to process the job '38': an exception occurred.
System.ComponentModel.Win32Exception (0x80004005): Permission denied
   at Interop.Sys.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean redirectStdin, Boolean redirectStdout, Boolean redirectStderr, Int32& lpChildPid, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd)
   at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo)
   at System.Diagnostics.Process.Start()
   at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218

Problem Description:

I am getting the error shown in the logs section when I try to do an update through Ombi. I have tried updating the source folder with all permissions (chmod 777 ./ombiV3) and am still getting this issue.

Reproduction Steps:

Click check for updates, it shows there is an update, and then select update.

I am aware of this issue on Linux systems. I don't yet understand why it is happening

@jasonlyle88 The currently recommended update method on Ubuntu is https://github.com/Unimatrix0/update_ombi/

@Unimatrix0 , I saw that but thought it would only work with systems that use SYSTEMD_INIT (Ubuntu 16.04+). Will this work with earlier Ubuntu versions as well?

@jasonlyle88 Yes and no - you'll have to modify the script to use "service ombi stop" and "service ombi start", and you'll need to use a configuration file, rather than parsing a service file.

If you have other questions/issues with the script, open an issue in the script repo.

I get the following error when I try to update:

info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Product Version 3.0.2354-v3Issues
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Version 3.0.2354
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Branch v3Issues
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Service Version 3.0.2351
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      OS Information: Linux 4.8.0-53-generic #56~16.04.1-Ubuntu SMP Tue May 16 01:18:56 UTC 2017 X64
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      We are linux
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Downloading the file linux.tar.gz from https://ci.appveyor.com/api/buildjobs/ykb8vm3aj1j2y47w/artifacts/linux.tar.gz
fail: Hangfire.AutomaticRetryAttribute[0]
      Failed to process the job '630': an exception occurred.
System.ComponentModel.Win32Exception (0x80004005): Permission denied
   at Interop.Sys.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean redirectStdin, Boolean redirectStdout, Boolean redirectStderr, Int32& lpChildPid, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd)
   at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo)
   at System.Diagnostics.Process.Start()
   at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218

I'm using the ombi-preview docker on Ubuntu Server 16.04. The docker seems to be running behind, so I wanted to update manually. I'm currently on Ombi v3.0.2354. I tried changing the /app/ombi folder permission to 777 inside the docker container, but that didn't change anything.

I wouldn't know how to apply @Unimatrix0's script here.

@rourke you have the same issue as everyone running in Linux if you scroll up. Just restart the container and it will update.

@tidusjar I should have mentioned I already restarted my container and it doesn't update either. Here are the startup logs (not sure if this adds anything):

-------------------------------------
          _     _ _
         | |___| (_) ___
         | / __| | |/ _ \
         | \__ \ | | (_) |
         |_|___/ |_|\___/
               |_|

Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donations/
-------------------------------------
GID/UID
-------------------------------------
User uid:    1000
User gid:    1000
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
100 44.4M  100 44.4M    0     0   948k      0  0:00:47  0:00:47 --:--:-- 1419k
[cont-init.d] 30-config: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
Hello, welcome to Ombi
Valid options are:
Ombi 3.0.2354-v3Issues
Copyright (C) 2017 Ombi

  -h, --host       (Default: http://*:5000) Set to a semicolon-separated (;)
                   list of URL prefixes to which the server should respond. For
                   example, http://localhost:123. Use "*" to indicate that the
                   server should listen for requests on any IP address or
                   hostname using the specified port and protocol (for example,
                   http://*:5000). The protocol (http:// or https://) must be
                   included with each URL. Supported formats vary between
                   servers.

  -s, --storage    Storage path, where we save the logs and database

  --help           Display this help screen.

  --version        Display version information.



We are running on
/app/ombi
info: Hangfire.SQLite.SQLiteStorage[0]
      Start installing Hangfire SQL objects...
info: Hangfire.SQLite.SQLiteStorage[0]
      Hangfire SQL objects installed.
info: Hangfire.BackgroundJobServer[0]
      Starting Hangfire Server
info: Hangfire.BackgroundJobServer[0]
      Using job storage: 'SQLite Server: /config/Ombi.db'
info: Hangfire.BackgroundJobServer[0]
      Using the following options for Hangfire Server:
info: Hangfire.BackgroundJobServer[0]
          Worker count: 1
info: Hangfire.BackgroundJobServer[0]
          Listening queues: 'default'
info: Hangfire.BackgroundJobServer[0]
          Shutdown timeout: 1.00:00:00
info: Hangfire.BackgroundJobServer[0]
          Schedule polling interval: 00:00:15
Hosting environment: Production
Content root path: /app/ombi
Now listening on: http://[::]:3579
Application started. Press Ctrl+C to shut down.

error while update

info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Product Version 3.0.2363-DotNetCore
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Version 3.0.2363
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Branch DotNetCore
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Service Version 3.0.2364
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      OS Information: Microsoft Windows 10.0.16299  X64
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      We are Windows
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Downloading the file windows.zip from https://ci.appveyor.com/api/buildjobs/lr84s06v3c9kdndc/artifacts/windows.zip
warn: Hangfire.AutomaticRetryAttribute[0]
      Failed to process the job '2433': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:38.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.GetArgs(UpdateSettings settings) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 231
   at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Product Version 3.0.2363-DotNetCore
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Version 3.0.2363
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Branch DotNetCore
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Service Version 3.0.2364
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      OS Information: Microsoft Windows 10.0.16299  X64
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      We are Windows
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000]
      Downloading the file windows.zip from https://ci.appveyor.com/api/buildjobs/lr84s06v3c9kdndc/artifacts/windows.zip
fail: Hangfire.AutomaticRetryAttribute[0]
      Failed to process the job '2433': an exception occurred.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.GetArgs(UpdateSettings settings) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 231
   at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218

Error on Windows:
info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000] Product Version 3.0.2363-DotNetCore info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000] Version 3.0.2363 info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000] Branch DotNetCore info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000] Service Version 3.0.2367 info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000] OS Information: Microsoft Windows 10.0.16299 X64 info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000] We are Windows info: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[6000] Downloading the file windows.zip from https://ci.appveyor.com/api/buildjobs/ogbal8drbf9eqy4a/artifacts/windows.zip fail: Hangfire.AutomaticRetryAttribute[0] Failed to process the job '2534': an exception occurred. System.NullReferenceException: Object reference not set to an instance of an object. at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.GetArgs(UpdateSettings settings) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 231 at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 218

OS Description | Darwin 16.7.0 Darwin Kernel Version 16.7.0: Wed Oct 4 00:17:00 PDT 2017; root:xnu-3789.71.6~1/RELEASE_X86_64

Thanks in advance for any help. My knowledge is limited.

Struggling to understand how i might use the script on Mac OS installation of Ombi v3:
https://github.com/tidusjar/Ombi/wiki/Update-Settings
YourScript {UpdateDownloadUrl} {CurrentInstallLocation} {ProcessName} {Ombi Host Argument} {Ombi StoragePath Argument}
Is YourScript part of the script?

How can i get some of these settings?

{UpdateDownloadUrl} = /Users/spowart/Downloads/osx.tar.gz ?
{CurrentInstallLocation} = /Users/spowart/Movies/Ombi/ ?
{ProcessName} = X64 ?
{Ombi Host Argument} = ?
{Ombi StoragePath Argument} = ?

Here is my start up log - have it running in background now with: LaunchAgents

Last login: Sun Nov 26 20:41:07 on console
spowartmbp:~ spowart$ cd /Users/spowart/Movies/Ombi/
spowartmbp:Ombi spowart$ ./Ombi
Hello, welcome to Ombi
Valid options are:
Ombi 3.0.2379-DotNetCore
Copyright (C) 2017 Ombi

  -h, --host       (Default: http://*:5000) Set to a semicolon-separated (;) 
                   list of URL prefixes to which the server should respond. For
                   example, http://localhost:123. Use "*" to indicate that the 
                   server should listen for requests on any IP address or 
                   hostname using the specified port and protocol (for example,
                   http://*:5000). The protocol (http:// or https://) must be 
                   included with each URL. Supported formats vary between 
                   servers.

  -s, --storage    Storage path, where we save the logs and database

  --help           Display this help screen.

  --version        Display version information.



We are running on 
/Users/spowart/Movies/Ombi
info: Hangfire.SQLite.SQLiteStorage[0]
      Start installing Hangfire SQL objects...
info: Hangfire.SQLite.SQLiteStorage[0]
      Hangfire SQL objects installed.
info: Hangfire.BackgroundJobServer[0]
      Starting Hangfire Server
info: Hangfire.BackgroundJobServer[0]
      Using job storage: 'SQLite Server: Schedules.db'
info: Hangfire.BackgroundJobServer[0]
      Using the following options for Hangfire Server:
info: Hangfire.BackgroundJobServer[0]
          Worker count: 1
info: Hangfire.BackgroundJobServer[0]
          Listening queues: 'default'
info: Hangfire.BackgroundJobServer[0]
          Shutdown timeout: 1.00:00:00
info: Hangfire.BackgroundJobServer[0]
          Schedule polling interval: 00:00:15
info: Hangfire.BackgroundJobServer[0]
      Hangfire Server stopped.

Unhandled Exception: System.IO.IOException: Failed to bind to address http://[::]:5000: address already in use. ---> Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions.Internal.AddressInUseException: Error -48 EADDRINUSE address already in use ---> Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.UvException: Error -48 EADDRINUSE address already in use
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.LibuvFunctions.ThrowError(Int32 statusCode)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Networking.UvTcpHandle.GetSockIPEndPoint()
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Listener.ListenTcp(Boolean useFileHandle)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.Listener.<>c.<StartAsync>b__8_0(Listener listener)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.LibuvThread.DoPostWork()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.Internal.ListenerPrimary.<StartAsync>d__15.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.LibuvTransport.<BindAsync>d__20.MoveNext()
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv.LibuvTransport.<BindAsync>d__20.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer.<>c__DisplayClass21_0`1.<<StartAsync>g__OnBind0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.<BindEndpointAsync>d__5.MoveNext()
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.<BindEndpointAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.<BindAddressAsync>d__7.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.AddressesStrategy.<BindAsync>d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.<BindAsync>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServer.<StartAsync>d__21`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Hosting.Internal.WebHost.<StartAsync>d__26.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Hosting.WebHostExtensions.<RunAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Hosting.WebHostExtensions.<RunAsync>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Hosting.WebHostExtensions.Run(IWebHost host)
   at Ombi.Program.Main(String[] args) in C:\projects\requestplex\src\Ombi\Program.cs:line 67
Abort trap: 6
spowartmbp:Ombi spowart$ 

Here are the screenshots from the issue

ombi1
ombi2

I fixed my failed auto-updater "hang fire" by downloading the most recent .zip, and pasting it into the Ombi v3 directory. Got rid of the error...

@YodaSpow
So "YourScript" would be your script that you would execute e.g. Update.sh

{UpdateDownloadUrl} = /Users/spowart/Downloads/osx.tar.gz
{CurrentInstallLocation} = /Users/spowart/Movies/Ombi/
{ProcessName} = "Ombi"
{Ombi Host Argument} = "Any start arguments you use e.g. --host http://*:3579"
{Ombi StoragePath Argument} = If you use any storage arguments

Great ok thanks @tidusjar

Is there a Update.sh available for Mac?
OS Description: | Darwin 16.7.0 Darwin Kernel Version 16.7.0: Wed Oct 4 00:17:00 PDT 2017; root:xnu-3789.71.6~1/RELEASE_X86_64

Saw there was a update for Update Script for Systemd (Ombi v3) Ubuntu based distros will that work as well on the Mac?

Wanted to provide a log with the errors I am receiving. I am not able to update through the interface (v3) 3.0.2455 - this has been happening since the initial public beta. It finds an update but never applies it. Log is below, Ombi is running as a service (fresh install yesterday)

--

2017-12-10 01:01:14.517 -05:00 [Warning] Failed to process the job '110': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:27.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 220
2017-12-10 01:01:44.839 -05:00 [Information] 1 scheduled job(s) enqueued.
2017-12-10 01:02:28.312 -05:00 [Error] Failed to process the job '110': an exception occurred.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 220
2017-12-10 07:00:14.789 -05:00 [Warning] Failed to process the job '159': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:19.
System.NullReferenceException: Object reference not set to an instance of an object.
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 220
2017-12-10 07:00:46.873 -05:00 [Information] 1 scheduled job(s) enqueued.
2017-12-10 07:02:02.469 -05:00 [Error] Failed to process the job '159': an exception occurred.
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 220

Here is my latest error message when attempting to trigger automatic update on windows:

017-12-22 09:58:07.356 -08:00 [Warning] Failed to process the job '4664': an exception occurred. Retry attempt 1 of 1 will be performed in 00:00:44. System.IO.IOException: The directory is not empty at System.IO.Win32FileSystem.RemoveDirectoryHelper(String fullPath, Boolean recursive, Boolean throwOnTopLevelDirectoryNotFound) at System.IO.Win32FileSystem.RemoveDirectory(String fullPath, Boolean recursive) at System.IO.Directory.Delete(String path, Boolean recursive) at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.<Update>d__18.MoveNext() in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 220

I wonder whats causing this not to work. it seems like it'd be pretty straightforward.

I need to look into it. I've not had time yet.

On Wed, 10 Jan 2018, 7:07 pm goldenpipes, notifications@github.com wrote:

I wonder whats causing this not to work. it seems like it'd be pretty
straightforward.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tidusjar/Ombi/issues/1460#issuecomment-356704372, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AGVaLHcUuFpPIPFH12TkkfdzojAqp25Zks5tJQp-gaJpZM4ON9MN
.

Would be awesome if you could get this ironed out. It's the only thing keeping me on version 3.0.2467 as setting it all up again is too much of a PITA, so waiting until this issue is resolved then hopefully one final reinstall and configure.

@tidusjar, smaller self-contained kind of steps to repro would help. i tried reproducing with:

/test1/Program.cs

```c#
static void Main(string[] args)
{
var updaterFile = @"/users/kasper/test2/bin/Debug/netcoreapp2.0/win-x64/publish/test2.exe";
// for linux
// var updaterFile = @"/home/kasper/test2/bin/Debug/netcoreapp2.0/linux-x64/publish/test2";
var start = new ProcessStartInfo
{
UseShellExecute = false,
CreateNoWindow = true,
FileName = updaterFile
};
using (var proc = new Process { StartInfo = start })
{
proc.Start();
}

Console.WriteLine("hello from test1");
}
```

where test2 is a hello world published app cd ~ && dotnet new console -n test2 && cd test2 && dotnet publish /p:RuntimeIdentifier=linux-x64 (or win-x64 when building on Windows).

On Linux, I've gotten both hello from test1 and Hello World! (from test2). But on Windows it only showed hello from test1.

Note either in csproj of both apps, add <RuntimeIdentifier>linux-x64</RuntimeIdentifier> or pass /p:RuntimeIdentifier=linux-x64 (or win-x64) to dotnet publish

Tested on .NET Core 2.0 on Windows 10 and Debian stretch

So I'm not sure what changed, but when I checked for updates today it actually managed to at least run my test script. Here's the parameters it provided:

https://github.com/tidusjar/Ombi/releases/download/v3.0.3293/linux.tar.gz
--applicationPath
/opt/Ombi
--processname
Ombi

Here's my Mono info:

# mono --version
Mono JIT compiler version 5.12.0.226 (tarball Thu May  3 09:48:32 UTC 2018)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:           __thread
        SIGSEGV:       altstack
        Notifications: epoll
        Architecture:  amd64
        Disabled:      none
        Misc:          softdebug 
        Interpreter:   yes
        LLVM:          supported, not enabled.
        GC:            sgen (concurrent by default)

And this is on 3.0.3164.

Trying this now with attempting to get .3293 up to .3304. I see it creates a TempUpdate dir as @mattohm mentioned up above. But it doesn't appear anything further happens after that and it stays on .3293.
chmod'd the whole Ombi dir to 777 for testing, didn't help.

Ok, I managed to get this working with a custom script. A couple of observations:

  • Since the update script runs under the main Ombi process, shutting down Ombi immediately terminates the update as well (meaning that restarting Ombi has to be the last thing the script does)
  • On Linux, this isn't a huge problem since there's no file locking, so files can be updated while they're in use. Windows is going to require some way to run the update out-of-band
  • Assuming that you're not running Ombi as root (which you shouldn't be), you'll have to edit your sudoers file to allow the script to restart ombi once it's done

If anyone would like to try it until Ombi is updated to do it on it's own, here's a gist.

Referencing issues that were caused after running the auto-updater:

2615

1996

Issue with the autoupdate on Windows (Server 2019):

fail: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[0] Exception thrown in the OmbiUpdater, see previous messages System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\OMBI\TempUpdate\cypress\'. at System.IO.FileStream.ValidateFileHandle(SafeFileHandle fileHandle) at System.IO.FileStream.CreateFileOpenHandle(FileMode mode, FileShare share, FileOptions options) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options) at System.IO.Compression.ZipFileExtensions.ExtractToFile(ZipArchiveEntry source, String destinationFileName, Boolean overwrite) at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.Extract(String zipDir, String tempPath) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 306 at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.Update(PerformContext c) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 204

For as long as I can remember I've been stopping the Ombi service in Windows, starting it again in the command line, requesting the update via browser, then starting the Windows service again. Its a long process but nothing else worked for me. Now I get the same error as @iammortimer.

Issue with the autoupdate on Windows (Server 2019):

fail: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[0] Exception thrown in the OmbiUpdater, see previous messages System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\OMBI\TempUpdate\cypress\'. at System.IO.FileStream.ValidateFileHandle(SafeFileHandle fileHandle) at System.IO.FileStream.CreateFileOpenHandle(FileMode mode, FileShare share, FileOptions options) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options) at System.IO.Compression.ZipFileExtensions.ExtractToFile(ZipArchiveEntry source, String destinationFileName, Boolean overwrite) at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.Extract(String zipDir, String tempPath) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 306 at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.Update(PerformContext c) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 204

I am running into this same exact error when trying to update. Can windows users follow some steps to get ombi manually updated to work around this?

Issue with the autoupdate on Windows (Server 2019):
fail: Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater[0] Exception thrown in the OmbiUpdater, see previous messages System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\OMBI\TempUpdate\cypress\'. at System.IO.FileStream.ValidateFileHandle(SafeFileHandle fileHandle) at System.IO.FileStream.CreateFileOpenHandle(FileMode mode, FileShare share, FileOptions options) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options) at System.IO.Compression.ZipFileExtensions.ExtractToFile(ZipArchiveEntry source, String destinationFileName, Boolean overwrite) at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.Extract(String zipDir, String tempPath) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 306 at Ombi.Schedule.Jobs.Ombi.OmbiAutomaticUpdater.Update(PerformContext c) in C:\projects\requestplex\src\Ombi.Schedule\Jobs\Ombi\OmbiAutomaticUpdater.cs:line 204

I am running into this same exact error when trying to update. Can windows users follow some steps to get ombi manually updated to work around this?

I just download the newest version and extract it so the same directory

I get this trying the updater on the latest version.

Aug 15 19:46:12 hostname Ombi[85110]: fail: Ombi.ErrorHandlingMiddleware[0] Aug 15 19:46:12 hostname Ombi[85110]: Something bad happened, ErrorMiddleware caught this Aug 15 19:46:12 hostname Ombi[85110]: Quartz.JobPersistenceException: The job (System.IOmbiAutomaticUpdater) referenced by the trigger does not exist. Aug 15 19:46:12 hostname Ombi[85110]: at Quartz.Simpl.RAMJobStore.StoreTriggerInternal(IOperableTrigger newTrigger, Boolean replaceExisting) Aug 15 19:46:12 hostname Ombi[85110]: at Quartz.Simpl.RAMJobStore.StoreTrigger(IOperableTrigger newTrigger, Boolean replaceExisting, CancellationToken cancellationToken) Aug 15 19:46:12 hostname Ombi[85110]: at Quartz.Core.QuartzScheduler.TriggerJob(JobKey jobKey, JobDataMap data, CancellationToken cancellationToken) Aug 15 19:46:12 hostname Ombi[85110]: at Ombi.Schedule.OmbiQuartz.TriggerJob(String jobName, String group) in C:\projects\requestplex\src\Ombi.Schedule\OmbiQuartz.cs:line 79 Aug 15 19:46:12 hostname Ombi[85110]: at Ombi.Controllers.JobController.ForceUpdate() in C:\projects\requestplex\src\Ombi\Controllers\JobController.cs:line 41 Aug 15 19:46:12 hostname Ombi[85110]: at lambda_method(Closure , Object ) Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeActionMethodAsync() Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeNextActionFilterAsync() Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context) Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeInnerFilterAsync() Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResourceFilter() Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResourceExecutedContext context) Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync() Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync() Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext) Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context) Aug 15 19:46:12 hostname Ombi[85110]: at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIIndexMiddleware.Invoke(HttpContext httpContext) Aug 15 19:46:12 hostname Ombi[85110]: at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext) Aug 15 19:46:12 hostname Ombi[85110]: at Microsoft.AspNetCore.Cors.Infrastructure.CorsMiddleware.InvokeCore(HttpContext context) Aug 15 19:46:12 hostname Ombi[85110]: at Ombi.ApiKeyMiddlewear.Invoke(HttpContext context) in C:\projects\requestplex\src\Ombi\ApiKeyMiddlewear.cs:line 51 Aug 15 19:46:12 hostname Ombi[85110]: at Ombi.ErrorHandlingMiddleware.Invoke(HttpContext context) in C:\projects\requestplex\src\Ombi\ErrorHandlingMiddlewear.cs:line 24

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Handl3vogn picture Handl3vogn  Â·  4Comments

Alosander picture Alosander  Â·  5Comments

tidusjar picture tidusjar  Â·  5Comments

PotatoQuality picture PotatoQuality  Â·  3Comments

Thurman86 picture Thurman86  Â·  5Comments