Thursday, December 23rd, 2021, 00:02 UTC | ||
[00:02:37] | troyt (troyt!troyt@2601:681:4100:d591:44dd:acff:fe85:9c8e) has quit (Ping timeout: 240 seconds) | |
[00:04:27] | troyt (troyt!troyt@2601:681:4100:d591:44dd:acff:fe85:9c8e) has joined #mythtv | |
[03:38:12] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has joined #mythtv | |
[03:38:13] | Mode for #mythtv by ChanServ!ChanServ@services.libera.chat : +v peterbennett | |
[03:42:37] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has quit (Client Quit) | |
[03:54:09] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has joined #mythtv | |
[03:54:09] | Mode for #mythtv by ChanServ!ChanServ@services.libera.chat : +v peterbennett | |
[03:58:44] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has quit (Client Quit) | |
[05:40:21] | Warped (Warped!~Warped@user/warped) has quit (Quit: We Gone! Bye Bye) | |
[07:12:41] | Steve-Goodey (Steve-Goodey!~steve@2a00:23c5:7d83:6501:6ea1:20d:5872:d872) has joined #mythtv | |
[10:19:26] | Steve-Goodey (Steve-Goodey!~steve@2a00:23c5:7d83:6501:6ea1:20d:5872:d872) has quit (Quit: Konversation terminated!) | |
[10:20:06] | Warped (Warped!~Warped@user/warped) has joined #mythtv | |
[11:09:44] | paul-h (paul-h!~paul@pres-25-b2-v4wan-161467-cust2666.vm29.cable.virginm.net) has joined #mythtv | |
[11:09:44] | paul-h (paul-h!~paul@mythtv/developer/paul-h) has joined #mythtv | |
[11:09:44] | paul-h (paul-h!~paul@pres-25-b2-v4wan-161467-cust2666.vm29.cable.virginm.net) has quit (Changing host) | |
[11:09:44] | Mode for #mythtv by ChanServ!ChanServ@services.libera.chat : +v paul-h | |
[11:11:11] | stuarta: | paul-h: answering last nights question. the same web app would be used for everything |
[11:11:35] | stuarta: | ideally i'd like it so the backend didn't have to be restarted after setting up the db |
[11:22:00] | stuarta: | and capture cards, etc etc |
[11:22:59] | paul-h: | That's more tricky because nearly everything requires the DB and the only way you can get it to start without a DB is to disable everything |
[11:23:50] | paul-h: | It might be possible to put the startup code in a loop that enables stuff based on the current status |
[11:24:37] | paul-h: | The BE also refuses to start up without any capture devices as well |
[11:26:12] | paul-h: | Without a DB most of the Services API is useless anyway |
[11:29:52] | paul-h: | The way I have it working at the moment is you start the backend with a special parameter (mythbackend --setup) that enables a setup mode that allows the BE to start without anything that requires the DB so basically runs only the http server and nothing else |
[11:31:30] | paul-h: | It was surprisingly easy to do don't know why it's taken us 10 years to get to this point :) |
[11:33:03] | paul-h: | I guess you could check if we have a valid DB connection when starting up and start in setup mode if we don't |
[11:33:21] | stuarta: | i was looking at the whole startup sequence, and really what we need is a state machine which represents the DB state. and depending on what state it's in, that controls what is activated |
[11:33:42] | stuarta: | there is a skeleton of it there, |
[11:33:55] | stuarta: | but also some stuff starts immediately that needs the db |
[11:34:19] | stuarta: | iirc |
[11:35:26] | paul-h: | Most things need settings to start up and guess where they are kept |
[11:35:52] | stuarta: | yup |
[11:36:33] | stuarta: | in my head the way you do it is have hard coded defaults. listen on port 6544 on all interfaces, bring up the bits of the api that can be used to configure the db, and progress from there |
[11:37:55] | stuarta: | i'll email you the analysis i did on the startup sequence |
[11:40:01] | paul-h: | The new web server seems to comes up on 6744 so there must be some defaults used for the port at least |
[11:40:28] | paul-h: | I know it's 4544 + 200 by default |
[11:40:59] | stuarta: | yes old one defaults to 6544, new one +200 (so 6744) |
[11:41:43] | stuarta: | on my dev instances i have that set to 7544 (and therefore 7744) |
[11:43:58] | stuarta: | which allows me to have dev and prod instances on the same box |
[11:45:54] | paul-h: | The logs seems to suggest the new server is listening on all interfaces by default so that isn't a problem |
[11:46:05] | stuarta: | yup |
[11:46:15] | stuarta: | a lot of the pieces are already there |
[11:46:53] | stuarta: | i was thinking stuff like emit signals once we have the db configured, which would allow those things that need the DB to then progress |
[11:47:21] | stuarta: | (like loading the rest of the API) |
[11:47:32] | stuarta: | etc etc |
[12:54:56] | paul-h: | Does Angular allow you to have an alternative top level page to replace the index.html something like setup.html |
[12:55:14] | stuarta: | the entire contents is generated on the fly |
[12:55:53] | stuarta: | basically the index.html file loads all the javascript, and the app is in there, everything else is done from the app |
[12:56:07] | stuarta: | ie. like how the home and status pages swap out |
[12:56:32] | paul-h: | that's what I thought |
[12:56:43] | stuarta: | the <router-outlet> is where the current route is mounted to in the output |
[12:59:24] | paul-h: | so for the initial setup we would have to detect we have no DB and redirect to the setup page? |
[12:59:50] | paul-h: | rather than showing the home page |
[13:00:42] | stuarta: | yes. in theory it could be a simple API endpoint, which is easy to query |
[13:00:57] | stuarta: | and then handle based on that |
[13:01:30] | stuarta: | a bit like how the status page handles having no jobs in the job queue |
[13:01:40] | stuarta: | or no planned recordings |
[13:02:00] | stuarta: | biab, lunch |
[13:22:50] | Steve-Goodey (Steve-Goodey!~steve@2a00:23c5:7d83:6501:6ea1:20d:5872:d872) has joined #mythtv | |
[13:46:02] | stuarta: | back |
[14:31:28] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has joined #mythtv | |
[14:31:28] | Mode for #mythtv by ChanServ!ChanServ@services.libera.chat : +v peterbennett | |
[14:45:47] | Steve-Goodey (Steve-Goodey!~steve@2a00:23c5:7d83:6501:6ea1:20d:5872:d872) has quit (Quit: Konversation terminated!) | |
[15:17:18] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has quit (Quit: Leaving.) | |
[16:14:28] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has joined #mythtv | |
[16:14:28] | Mode for #mythtv by ChanServ!ChanServ@services.libera.chat : +v peterbennett | |
[16:52:48] | Steve-Goodey (Steve-Goodey!~steve@2a00:23c5:7d83:6501:6ea1:20d:5872:d872) has joined #mythtv | |
[17:31:08] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has quit (Quit: Leaving.) | |
[18:04:16] | paul-h: | Added another part of the puzzle added a new SetConnectionInfo endpoint to mirror the existing GetConnectionInfo which will validate the passed database credentials before saving them to the config.xml |
[18:04:52] | mkbloke: | 2/lr |
[18:20:39] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has joined #mythtv | |
[18:20:39] | Mode for #mythtv by ChanServ!ChanServ@services.libera.chat : +v peterbennett | |
[18:32:27] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has quit (Quit: Leaving.) | |
[19:26:59] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has joined #mythtv | |
[19:27:00] | Mode for #mythtv by ChanServ!ChanServ@services.libera.chat : +v peterbennett | |
[19:53:43] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has quit (Quit: Leaving.) | |
[21:30:50] | Steve-Goodey (Steve-Goodey!~steve@2a00:23c5:7d83:6501:6ea1:20d:5872:d872) has quit (Quit: Konversation terminated!) | |
[22:18:24] | ulmus-scott (ulmus-scott!~ulmus-sco@user/ulmus-scott) has joined #mythtv | |
[22:19:39] | ulmus-scott: | stuarta: I had previously worked on the config caches, and will be opening a pull request with more details. |
[22:20:12] | ulmus-scott: | The configuration stuff in libmythupnp was never saved |
[22:50:10] | peterbennett (peterbennett!~peter@mythtv/developer/peterbennett) has joined #mythtv | |
[22:50:10] | Mode for #mythtv by ChanServ!ChanServ@services.libera.chat : +v peterbennett | |
[22:51:31] | DevMythNotifyBot: | pull_request opened by ulmus-scott, "Configuration caches": https://github.com/MythTV/mythtv/pull/435 |
[23:27:41] | paul-h (paul-h!~paul@mythtv/developer/paul-h) has quit (Quit: Konversation terminated!) |
IRC Logs collected by
BeirdoBot.
Please use the above link to report any bugs.