-
Notifications
You must be signed in to change notification settings - Fork 61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error in Audiobookshelf integration - Crashes when importing #1140
Comments
Could you please test if ABS is accessible from inside the ryot container?
…On Wed, Dec 18, 2024, 9:04 PM Grim73 ***@***.***> wrote:
From what I have seen, this is related to #529
<#529>. I cant sync via
integration, nor import via manual importing. I use Authentik for
Audiobookshelf, but haven't been able to set it up on Ryot yet (beside the
point) Below are my logs, let me know if there is anything else I need to
share:
log:
ryot | [frontend] GET /settings/imports-and-exports.data 200 - - 22.386 msryot | [backend] 2024-12-18T15:23:29.066420Z DEBUG ryot: Deployed import jobryot | [backend] 2024-12-18T15:23:29.067245Z TRACE ryot: Started job ImportFromExternalSource("usr_DlaVzZck44yr", DeployImportJobInput { source: Audiobookshelf, mal: None, igdb: None, trakt: None, movary: None, generic_json: None, strong_app: None, url_and_key: Some(DeployUrlAndKeyImportInput { api_url: "https://audiobookshelf.tld", api_key: "API_KEY" }), generic_csv: None, jellyfin: None })ryot | [frontend] POST /settings/imports-and-exports.data?intent=deployImport 200 - - 17.138 msryot | [backend] 2024-12-18T15:23:29.072232Z DEBUG ryot: Started import job with id imp_aXctKIMoikdEryot | [frontend] GET /settings/imports-and-exports.data 200 - - 19.749 msryot | [backend] thread 'main' panicked at /home/runner/work/ryot/ryot/crates/services/importer/src/audiobookshelf.rs:48:10:ryot | [backend] called `Result::unwrap()` on an `Err` value: reqwest::Error { kind: Decode, source: Error("expected value", line: 1, column: 1) }ryot | [backend] note: run with `RUST_BACKTRACE=1` environment variable to display a backtraceryot | [backend] BACKEND_PORT=5000 /usr/local/bin/backend exited with code 101ryot | --> Sending SIGTERM to other processes..ryot | [proxy] {"level":"info","ts":1734535409.254885,"msg":"shutting down apps, then terminating","signal":"SIGTERM"}ryot | [proxy] {"level":"warn","ts":1734535409.2549305,"msg":"exiting; byeee!! 👋 ","signal":"SIGTERM"}ryot | [proxy] {"level":"info","ts":1734535409.2549531,"logger":"http","msg":"servers shutting down with eternal grace period"}ryot | [proxy] {"level":"info","ts":1734535409.2551138,"msg":"shutdown complete","signal":"SIGTERM","exit_code":0}ryot | [proxy] caddy run --config /etc/caddy/Caddyfile exited with code SIGTERMryot | --> Sending SIGTERM to other processes..ryot | [frontend] ryot | [frontend] PORT=3000 npx remix-serve ./build/server/index.js exited with code SIGTERM
docker-compose.yaml:
services:
ryot-db:
image: postgres:16-alpine # at-least version 15 is required
restart: always
volumes:
- ./postgres_storage:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=${PASS}
- POSTGRES_USER=postgres
- POSTGRES_DB=postgres
- TZ=America/Chicago
container_name: ryot-db
ryot:
image: ignisda/ryot:v7 # or ghcr.io/ignisda/ryot:v7
environment:
- ***@***.***:5432/postgres
- TZ=America/Chicago
- FRONTEND_URL=https://tld
#- SERVER_CORS_ORIGINS=https://tld
- SERVER_OIDC_CLIENT_ID=${SERVER_OIDC_CLIENT_ID}
- SERVER_OIDC_CLIENT_SECRET=${SERVER_OIDC_CLIENT_SECRET}
- SERVER_ISSUER_URL=${SERVER_ISSUER_URL}
- FRONTEND_OUDC_BUTTON_LABEL=Authentik
#- USERS_DISABLE_LOCAL_AUTH=true
- RUST_LOG=ryot=trace
#- FRONTEND_INSECURE_COOKIES=true # if running on HTTP
ports:
- "3737:8000"
pull_policy: always
container_name: ryot
—
Reply to this email directly, view it on GitHub
<#1140>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AOQ5PNCB463I4DL6QYW67HT2GGIW5AVCNFSM6AAAAABT27EHF6VHI2DSMVQWIX3LMV43ASLTON2WKOZSG42DQMJTGM2DENY>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
yes, just did a <!doctype html>
<html lang="en" data-n-head="%7B%22lang%22:%7B%221%22:%22en%22%7D%7D">
<head>
<meta data-n-head="1" charset="utf-8"><meta data-n-head="1" name="viewport" content="width=device-width,initial-scale=1"><meta data-n-head="1" data-hid="description" name="description" content=""><meta data-n-head="1" data-hid="robots" name="robots" content="noindex"><meta data-n-head="1" data-hid="charset" charset="utf-8"><meta data-n-head="1" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"><meta data-n-head="1" data-hid="apple-mobile-web-app-capable" name="apple-mobile-web-app-capable" content="yes"><meta data-n-head="1" data-hid="apple-mobile-web-app-status-bar-style" name="apple-mobile-web-app-status-bar-style" content="black"><meta data-n-head="1" data-hid="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content="Audiobookshelf"><meta data-n-head="1" data-hid="theme-color" name="theme-color" content="#232323"><meta data-n-head="1" data-hid="og:type" name="og:type" property="og:type" content="website"><meta data-n-head="1" data-hid="og:title" name="og:title" property="og:title" content="Audiobookshelf"><meta data-n-head="1" data-hid="og:site_name" name="og:site_name" property="og:site_name" content="Audiobookshelf"><title>Audiobookshelf</title><link data-n-head="1" rel="icon" type="image/x-icon" href="/favicon.ico"><link data-n-head="1" rel="apple-touch-icon" href="/ios_icon.png"><link data-n-head="1" data-hid="shortcut-icon" rel="shortcut icon" href="/icon.svg"><link data-n-head="1" data-hid="apple-touch-icon" rel="apple-touch-icon" href="/icon192.png" sizes="any"><link data-n-head="1" rel="manifest" href="/_nuxt/manifest.aafd1341.json" data-hid="manifest"><base href="/"><link rel="preload" href="/_nuxt/53243b6.js" as="script"><link rel="preload" href="/_nuxt/18ecc46.js" as="script"><link rel="preload" href="/_nuxt/b017f37.js" as="script"><link rel="preload" href="/_nuxt/07bf0c3.js" as="script">
</head>
<body>
<div id="__nuxt"><style>#nuxt-loading{background:#fff;visibility:hidden;opacity:0;position:absolute;left:0;right:0;top:0;bottom:0;display:flex;justify-content:center;align-items:center;flex-direction:column;animation:nuxtLoadingIn 10s ease;-webkit-animation:nuxtLoadingIn 10s ease;animation-fill-mode:forwards;overflow:hidden}@keyframes nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}@-webkit-keyframes nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}#nuxt-loading>div,#nuxt-loading>div:after{border-radius:50%;width:5rem;height:5rem}#nuxt-loading>div{font-size:10px;position:relative;text-indent:-9999em;border:.5rem solid #f5f5f5;border-left:.5rem solid #000;-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);-webkit-animation:nuxtLoading 1.1s infinite linear;animation:nuxtLoading 1.1s infinite linear}#nuxt-loading.error>div{border-left:.5rem solid #ff4500;animation-duration:5s}@-webkit-keyframes nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}</style> <script>window.addEventListener("error",(function(){var e=document.getElementById("nuxt-loading");e&&(e.className+=" error")}))</script> <div id="nuxt-loading" aria-live="polite" role="status"><div>Loading...</div></div> </div><script>window.__NUXT__={config:{version:"2.17.5",routerBasePath:"",_app:{basePath:"/",assetsPath:"/_nuxt/",cdnURL:null}}}</script>
<script src="/_nuxt/53243b6.js"></script><script src="/_nuxt/18ecc46.js"></script><script src="/_nuxt/b017f37.js"></script><script src="/_nuxt/07bf0c3.js"></script><script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'8f410cd37e776342',t:'MTczNDU0NDgwMS4wMDAwMDA='};var a=document.createElement('script');a.nonce='';a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script></body>
</html> |
Can you spin up a new instance with `ghcr.io/ignisda/ryot:pr-1138` and see
if the issue is still there?
…On Wed, Dec 18, 2024, 11:35 PM Grim73 ***@***.***> wrote:
yes, just did a curl after sudo docker exec -it ryot bash to my baseurl (curl
https://audiobookshelf.tld) and got the following:
<!doctype html><html lang="en" data-n-head="%7B%22lang%22:%7B%221%22:%22en%22%7D%7D">
<head>
<meta data-n-head="1" charset="utf-8"><meta data-n-head="1" name="viewport" content="width=device-width,initial-scale=1"><meta data-n-head="1" data-hid="description" name="description" content=""><meta data-n-head="1" data-hid="robots" name="robots" content="noindex"><meta data-n-head="1" data-hid="charset" charset="utf-8"><meta data-n-head="1" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"><meta data-n-head="1" data-hid="apple-mobile-web-app-capable" name="apple-mobile-web-app-capable" content="yes"><meta data-n-head="1" data-hid="apple-mobile-web-app-status-bar-style" name="apple-mobile-web-app-status-bar-style" content="black"><meta data-n-head="1" data-hid="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content="Audiobookshelf"><meta data-n-head="1" data-hid="theme-color" name="theme-color" content="#232323"><meta data-n-head="1" data-hid="og:type" name="og:type" property="og:type" content="website"><meta data-n-head="1" data-hid="og:title" name="og:title" property="og:title" content="Audiobookshelf"><meta data-n-head="1" data-hid="og:site_name" name="og:site_name" property="og:site_name" content="Audiobookshelf"><title>Audiobookshelf</title><link data-n-head="1" rel="icon" type="image/x-icon" href="/favicon.ico"><link data-n-head="1" rel="apple-touch-icon" href="/ios_icon.png"><link data-n-head="1" data-hid="shortcut-icon" rel="shortcut icon" href="/icon.svg"><link data-n-head="1" data-hid="apple-touch-icon" rel="apple-touch-icon" href="/icon192.png" sizes="any"><link data-n-head="1" rel="manifest" href="/_nuxt/manifest.aafd1341.json" data-hid="manifest"><base href="/"><link rel="preload" href="/_nuxt/53243b6.js" as="script"><link rel="preload" href="/_nuxt/18ecc46.js" as="script"><link rel="preload" href="/_nuxt/b017f37.js" as="script"><link rel="preload" href="/_nuxt/07bf0c3.js" as="script">
</head>
<body>
<div id="__nuxt"><style>#nuxt-loading{background:#fff;visibility:hidden;opacity:0;position:absolute;left:0;right:0;top:0;bottom:0;display:flex;justify-content:center;align-items:center;flex-direction:column;animation:nuxtLoadingIn 10s ease;-webkit-animation:nuxtLoadingIn 10s ***@***.*** ***@***.*** nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}#nuxt-loading>div,#nuxt-loading>div:after{border-radius:50%;width:5rem;height:5rem}#nuxt-loading>div{font-size:10px;position:relative;text-indent:-9999em;border:.5rem solid #f5f5f5;border-left:.5rem solid #000;-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);-webkit-animation:nuxtLoading 1.1s infinite linear;animation:nuxtLoading 1.1s infinite linear}#nuxt-loading.error>div{border-left:.5rem solid ***@***.*** ***@***.*** nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}</style> <script>window.addEventListener("error",(function(){var e=document.getElementById("nuxt-loading");e&&(e.className+=" error")}))</script> <div id="nuxt-loading" aria-live="polite" role="status"><div>Loading...</div></div> </div><script>window.__NUXT__={config:{version:"2.17.5",routerBasePath:"",_app:{basePath:"/",assetsPath:"/_nuxt/",cdnURL:null}}}</script>
<script src="/_nuxt/53243b6.js"></script><script src="/_nuxt/18ecc46.js"></script><script src="/_nuxt/b017f37.js"></script><script src="/_nuxt/07bf0c3.js"></script><script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'8f410cd37e776342',t:'MTczNDU0NDgwMS4wMDAwMDA='};var a=document.createElement('script');a.nonce='';a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script></body></html>
—
Reply to this email directly, view it on GitHub
<#1140 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AOQ5PNFFANLXCLPCDYADBXL2GG2PRAVCNFSM6AAAAABT27EHF6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNJRHE3DEOBSGY>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
doesnt shut down anymore, but still getting the same error ryot | [frontend] GET /settings/imports-and-exports.data 200 - - 14.511 ms
ryot | [backend] 2024-12-18T20:59:51.308397Z DEBUG ryot: Deployed import job
ryot | [backend] 2024-12-18T20:59:51.308425Z TRACE ryot: Started job ImportFromExternalSource("usr_TpddsodnIf2q", DeployImportJobInput { source: Audiobookshelf, mal: None, igdb: None, trakt: None, movary: None, generic_json: None, strong_app: None, url_and_key: Some(DeployUrlAndKeyImportInput { api_url: "https://ABS.TLD", api_key: "API" }), generic_csv: None, jellyfin: None })
ryot | [frontend] POST /settings/imports-and-exports.data?intent=deployImport 200 - - 12.683 ms
ryot | [backend] 2024-12-18T20:59:51.314760Z DEBUG ryot: Started import job with id imp_THTdqrVTKrXT
ryot | [frontend] GET /settings/imports-and-exports.data 200 - - 15.593 ms
ryot | [backend] thread 'main' panicked at /home/runner/work/ryot/ryot/crates/services/importer/src/audiobookshelf.rs:48:10:
ryot | [backend] called `Result::unwrap()` on an `Err` value: reqwest::Error { kind: Decode, source: Error("expected value", line: 1, column: 1) } Still able to |
Is your ABS instance exposed to the internet? Would it be possible for you to give me access to it so that I can debug the issue? |
let me set you a user up on my authentik, I will email you |
From what I have seen, this is related to #529. I cant sync via integration, nor import via manual importing. I use Authentik for Audiobookshelf, but haven't been able to set it up on Ryot yet (beside the point) Below are my logs, let me know if there is anything else I need to share:
log
:docker-compose.yaml
:The text was updated successfully, but these errors were encountered: