IRC logs for #farmOS, 2022-02-24 (GMT)

2022-02-23
2022-02-25
TimeNickMessage
[05:24:40]<skipper_is[m]>`v "${PWD}/sites:/opt/drupal/web/sites"` is the bind-mount command isnt it? Because I cannot seem to find /opt/drupal/web/sites...
[05:25:10]<skipper_is[m]>And is the module placement the same as FarmOS1.x?
[06:30:38]<skipper_is[m]>Am doing some additional field types, are they located in /modules/farm_modname/asset/land/ or /modules/asset/land/farm_modname/?
[06:31:03]<skipper_is[m]>I'm assuming it'd be modules/custom_module_name/
[06:54:19]<skipper_is[m]>...So some possible progress?
[06:54:19]<skipper_is[m]>I've tried to mimic the format of the /modules/asset/land/modules/types, but moved it to :
[06:54:19]<skipper_is[m]>/modules/farm_custom_land_types_vhf/ is this correct? Or does it still need to be in /modules/asset/land/modules/types/then the module name?
[06:59:49]<mstenta[m]>Yes that's correct. That "types" directory is just a deeply nested module directory
[07:00:23]<mstenta[m]>Did you put it in /modules or /sites/all/modules?
[07:00:51]<skipper_is[m]>/sites/all/modules/
[07:01:15]<skipper_is[m]>And bind-mount, I could only get to work somehow if I added the :shared tag after the directory
[07:01:32]<skipper_is[m]>https://github.com/Skipper-is/farm_vhffieldtypes/tree/master/FarmOS2/far...
[07:05:14]<skipper_is[m]>Is the bind-mount volune live in the container, or does it need refreshing? Will the changes propagate through immediately? (I'm doing Clear Cache every time, but still nothing on my module list)
[07:59:28]<mstenta[m]>That link 404s for me
[07:59:51]<skipper_is[m]>Oh, it's private, my ba
[07:59:53]<skipper_is[m]>*bad
[07:59:57]<mstenta[m]>Bringing kids to school back later
[08:01:14]<skipper_is[m]>I've updated it to public
[08:11:50]<mstenta[m]>at quick look - the config/install and config/optional filenames are a bit off...
[08:12:27]<mstenta[m]>should just be `farm_land.land_type.[id].yml`
[08:12:49]<mstenta[m]>and `farm_map.layer_style.land_type_[id].yml`
[08:13:05]<mstenta[m]>but you said the module isn't even showing up in `/admin/modules`?
[08:13:29]<skipper_is[m]>It is not
[08:13:32]<mstenta[m]>or are you looking in `/farm/settings/modules`? only certain groups of modules get displayed there... needs to be in the "farmOS Contrib" package
[08:13:51]<skipper_is[m]>Ah, wasn't sure whether it needed the module name itself in the file name
[08:13:53]<skipper_is[m]>looking in admin/modules
[08:13:54]<mstenta[m]>ok if it's not showing up in `/admin/modules` then maybe somethings up with the volume mount
[08:14:01]<mstenta[m]>are you using docker compose? can you share the `volumes` line?
[08:15:29]<skipper_is[m]>I've justed used `docker run --rm -p 8080:80 -e VIRTUAL_HOST=farmOS2.valeheadfarm.com -v "${pwd}/sites:/opt/drupal/web/sites:shared" farmos/farmos`
[08:16:09]<skipper_is[m]>From the farmos2 documentation
[08:16:16]<mstenta[m]>oh ok, and `./sites/all/modules` has your module in it? (inside the directory you're running that form)?
[08:16:27]<mstenta[m]>s/form/from/
[08:16:50]<skipper_is[m]>yup
[08:17:15]<mstenta[m]>hmm seems like it should work
[08:17:40]<mstenta[m]>can you ctrl+f search for "Vale" on `/admin/modules` just to make sure it isn't hiding somewhere?
[08:17:58]<mstenta[m]>looks like it's in the "farmOS Assets" group
[08:18:14]<mstenta[m]>(might want to change that to "farmOS Custom" - that's the pattern I use for custom modules)
[08:19:31]<skipper_is[m]>Yea, I was wondering about what group it should be in
[08:20:03]<skipper_is[m]>Nada on both
[08:20:29]<skipper_is[m]>I'm just wondering whether it is something off with my bind-mount settings
[08:35:32]<mstenta[m]>Yea not sure... Are you on Mac/Windows/Linux?
[08:35:35]<skipper_is[m]>Linux
[08:36:10]<mstenta[m]>I'm not familiar with how `:shared` works
[08:36:35]<mstenta[m]>I don't need to use that on my Linux
[08:37:04]<mstenta[m]>But I assume other stuff in your volume works? Like settings.php and uploading files?
[08:37:08]<skipper_is[m]>Don't know but without it there was no folder showing up in opt/drupal/web etc
[08:37:17]<skipper_is[m]>settings works, uploading files gives me a permissions error
[08:37:24]<mstenta[m]>Might be worth confirming that all works, and is actually persisting when you delete the container
[08:38:23]<mstenta[m]>Try deleting the container and see if your settings.PHP was persisted
[08:38:25]<mstenta[m]>Just to confirm
[08:38:28]<skipper_is[m]>...That is truly weird...
[08:38:32]<skipper_is[m]>It is persisting, somehow
[08:38:33]<mstenta[m]>(assuming you don't have anything to lose)
[08:38:45]<skipper_is[m]>But that folder isn't updating, and I just emptied hte settings.php so it shouldnt work
[08:38:56]<skipper_is[m]>It's a clean install
[08:39:41]<mstenta[m]>Ok yea so maybe it's not actually persisting
[08:39:56]<mstenta[m]>And just saving inside the container, so it will be lost after you delete the container
[08:40:39]<mstenta[m]>Sorry on my phone right now... Can type better when I get back
[08:40:47]<skipper_is[m]>let me just confirm with the -v command, it is "target inside the container":"where it'll be accessible on the file system"?
[08:40:55]<skipper_is[m]>Not the other way around
[08:54:45]<mstenta[m]>its is `[dir outside the container]:[dir inside the container]`
[08:55:24]<mstenta[m]>so `${pwd}/sites:/opt/drupal/web/sites` will basically take the directory `./sites` and make it available inside the container at `/opt/drupal/web/sites`
[08:56:21]<mstenta[m]>one thing you could test is put a blank `test.txt` file in `./sites/test.txt` and then see if it shows up at `https://[mydomain]/sites/test.txt` in the browser
[08:56:28]<mstenta[m]>if not, then the volume isn't working
[09:51:04]<skipper_is[m]>Various fiddlings, restarts and cleared caches later, it seems to be working!
[09:53:22]<skipper_is[m]>So I've got my custom field types added. Is there any examples for modifying the migration for custom land types
[09:53:27]<skipper_is[m]>* land types?
[09:58:24]<skipper_is[m]>I can see the bit in https://github.com/farmOS/farmOS/blob/2.x/modules/core/migrate/config/op... for the default 1.x fields, but can't quite see how they map to the 2.x fields, I assume they're of the same name
[10:26:15]<mstenta[m]>brb on the phone...
[10:32:52]<skipper_is[m]>No problem.
[10:32:52]<skipper_is[m]>I'm also wondering how to edit that file in the docker container, to add in my bits, is there another way of editing the contents of the container prior to it running? Or do I need to mount the main modules folder too?
[10:40:06]<skipper_is[m]>I'm assuming the migration module is in `/opts/drupal/web/profiles/farm/modules/core/migrate/`
[10:46:36]<skipper_is[m]>I'm running : `docker run --rm -p 8080:80 -e VIRTUAL_HOST=###### -v "${PWD}/sites:/opt/drupal/web/sites" -v "${PWD}/migrate:/opts/drupal/web/profiles/farm/modules/core/migrate/" farmos/farmos` And then hoping that I can edit the migration options through that, but the /migrate/ folder is empty, so I assume something isn't quite right there
[11:31:42]<paul121[m]>hey all, the dev call might be a bit quiet today - at least some of us are at the Hack@Organic hackathon! https://farmos.discourse.group/t/feb-24-26-hackathon-hack-organic/1140
[11:31:54]<mstenta[m]>oh yes! thanks paul121 - i won't be there
[11:32:00]<mstenta[m]>everyone should come to the hackathon!! :-D
[11:49:53]<symbioquine[m]>There are two Youtube links; https://www.youtube.com/watch?v=0PJ0fvJdGjU & https://www.youtube.com/watch?v=3ENUi_UpV2k Not sure if that's intentional
[11:52:47]<paul121[m]>yeah.... not sure...
[11:59:51]<paul121[m]>working here: https://www.youtube.com/watch?v=TTsaEsp5K-k
[12:00:00]<symbioquine[m]>Yeah
[12:12:15]<mstenta[m]>Ah yea - so are you trying to migrate custom land types?
[12:12:48]<mstenta[m]>eg: you have custom types in v1 that you want to migrate to v2?
[12:12:53]<mstenta[m]>Here is a pattern you can copy in your module:
[12:13:05]<mstenta[m]>https://github.com/farmOS/farm_forest/blob/2.x/config/optional/migrate_p...
[12:13:58]<mstenta[m]>you need to add a file to your module in `config/optional/migrate_plus.migration.farm_migrate_area_[mytype].yml`
[12:15:03]<mstenta[m]>(NOT in the farmOS core migration directory... fyi when you bind-mount a volume into a docker container it completely REPLACES that directory inside the container... that's why it made it empty for you ... so you don't want to do that in the farmOS core dirs... you just need to add migration config to YOUR module)
[12:15:56]<mstenta[m]>that example above migrates `stand` and `plantation` area types from v1 to `natural` and `plantation` land types in v2
[12:58:33]<symbioquine[m]>ACTION uploaded an image: (758KiB) < https://libera.ems.host/_matrix/media/r0/download/matrix.org/mXnMtGcaOgV... >
[13:00:50]<paul121[m]>woot woot who wants to hack on eco system service goals w/ farmOS ??
[13:01:03]<paul121[m]>maybe* :-)
[13:14:47]<skipper_is[m]>Is there a way of disabling the Warning message on FarmOS2, I know there is a security update available, stop telling me!
[13:17:00]<mstenta[m]>yes turn off the Update module
[13:18:14]<skipper_is[m]>Aha!
[13:18:34]<skipper_is[m]>And migration can only be called through Drush?
[13:18:54]<mstenta[m]>yea as far as i know
[13:19:02]<mstenta[m]>(there might be a ui way to do it, but untested...)
[13:19:25]<skipper_is[m]>And can Drush be called through docker?
[13:19:30]<mstenta[m]>yes!
[13:19:41]<mstenta[m]>it's already installed in the container in `vendor/bin/drush`
[13:19:49]<mstenta[m]>`/opt/drupal/vendor/bin/drush`
[13:20:01]<mstenta[m]>hold on there's something in the docs i can point to...
[13:20:23]<mstenta[m]>https://farmos.org/development/environment/drush/
[13:20:42]<mstenta[m]>`docker exec -it -u www-data [container name] drush`
[13:20:49]<mstenta[m]>i have a bash alias for it:
[13:21:16]<mstenta[m]>`alias fdrush='sudo docker exec -it -u www-data farmos_www_1 vendor/bin/drush'`
[13:21:39]<mstenta[m]>`fdrush` :-)
[13:21:40]<mstenta[m]>(just replace `farmos_www_1` with your container name)
[13:21:44]<skipper_is[m]>So then you can just call fdrush
[13:21:48]<skipper_is[m]>Nice
[13:21:49]<mstenta[m]>and put that in `~/.bash_aliases`
[13:21:53]<skipper_is[m]>farmos_www_1 is the container name?
[13:22:26]<symbioquine[m]>If you're using `docker-compose`, you can avoid the more complicated prefixed container names...
[13:22:36]<symbioquine[m]>e.g. `docker-compose exec www whoami`
[13:22:43]<mstenta[m]>`farmos_www_1` is the container name if you use docker compose and your folder is called "farmOS"
[13:22:49]<mstenta[m]>so no... yours would be different
[13:22:57]<mstenta[m]>run `docker ps` to find out
[13:22:57]<skipper_is[m]>Ah, yea that's why mine is suspicious brown..
[13:23:04]<symbioquine[m]>But in that case, you need to run those commands from somewhere where `docker-compose` is aware of it.
[13:23:06]<skipper_is[m]>Which makes me suspect that Docker is racist
[13:23:25]<mstenta[m]>when you do `docker run` you can give it a specific name...
[13:23:43]<mstenta[m]>haha
[13:24:15]<mstenta[m]>> But in that case, you need to run those commands from somewhere where `docker-compose` is aware of it.
[13:24:15]<mstenta[m]>that's only if you use `docker-compose exec`... i use `docker exec` which works everywhere
[13:34:24]<skipper_is[m]>My FarmOS1.x doesn't seem to have a sites/default/private/files folder, is that ok?
[13:34:32]<skipper_is[m]>all of mine seem to be in default/files
[13:37:47]<skipper_is[m]>Nevermind, I moved it somewhere weird.. because of course I did...
[13:41:19]<mstenta[m]>Oh maybe you aren't using the private filesystem?
[13:41:53]<skipper_is[m]>For some reason it was set to /home/drupalFiles
[13:42:06]<skipper_is[m]>Moved them over, and now.. it's still not working...
[13:42:09]<mstenta[m]>I actually forget the details in v1 but I know that originally the default was not private
[13:42:36]<mstenta[m]>And you've had a v1 instance for a while so maybe you never used private?
[13:43:29]<mstenta[m]>I don't *think* it will matter though... You're following the migration docs right?
[13:43:36]<skipper_is[m]>It had 2 CSV files in it
[13:43:44]<skipper_is[m]>Yea, but it keeps failing on that step and not going further
[13:44:00]<skipper_is[m]>I was going to go through each group individually, but it failed immediately on the next one
[13:44:01]<mstenta[m]>What keeps failing? Migration? Or installation?
[13:44:08]<skipper_is[m]>Migration
[13:44:32]<mstenta[m]>You can get details with the drush migrate:messages command
[13:48:33]<mstenta[m]>here are some helpful commands...
[13:48:43]<mstenta[m]>`drush migrate:status --tag="farmOS 1.x"`
[13:48:50]<mstenta[m]>will show an overview of ALL farmOS v1->v2 migrations
[13:49:13]<mstenta[m]>`drush migrate:messages [migration name]` will show any messages/errors for a specific migration
[13:49:38]<skipper_is[m]>Most are idle, apart from taxonomy_animal_type, which is the one that gave me a warning, but when I do messages:taxonomy_aimal_type it says no messages
[13:49:44]<mstenta[m]>if you run into an issue on a migration, you should `drush migrate:rollback [migration name]` to roll it back before retrying
[13:49:45]<skipper_is[m]>So I stopped it, but now it's just sitting there saying "stopping"
[13:50:08]<mstenta[m]>ah ok - so sometimes if something break you need to "reset status"...
[13:50:30]<mstenta[m]>`drush migrate:reset-status farm_migrate_taxonomy_animal_type`
[13:50:30]<skipper_is[m]>Yea, just did that now, and it rolled back happily
[13:50:40]<mstenta[m]>ok cool
[13:50:55]<mstenta[m]>fyi the command for messages would be: `drush migrate:messages farm_migrate_taxonomy_animal_type`
[13:51:08]<skipper_is[m]>Yea, it just took ages to type out....
[13:51:50]<mstenta[m]>haha
[13:52:05]<mstenta[m]>just makin sure :-)
[13:52:16]<mstenta[m]>i'm headed back into the hackathon but will keep this chat open...
[13:52:48]<mstenta[m]>if you want to hop into one of the empty hackathon rooms with me i'd be happy to do some troubleshooting!
[13:53:13]<skipper_is[m]>Much appreciated!
[13:53:21]<skipper_is[m]>I'll see if it runs into any more issues!
[14:02:43]<skipper_is[m]>If an import fails, it is hateing one particular private file because I had deleted it ages ago (I assume....), can it be resumed from that point? Is there a skip function?
[14:04:27]<mstenta[m]>yes actually i think you can just re-run
[14:11:49]<skipper_is[m]>It doesn't mind if some of it is complete?
[14:12:04]<skipper_is[m]>ACTION sent a code block: https://libera.ems.host/_matrix/media/r0/download/libera.chat/ca2bb411c6...
[14:12:28]<skipper_is[m]>How does it not exist?!
[14:13:56]<skipper_is[m]> * ```... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/2421a52bcc...)
[14:27:21]<mstenta[m]>Huh when did that happen? Never saw that...
[14:28:49]<skipper_is[m]>Farm_migrate:import, was all happy, files had just completed, taxonomy started, and it threw that
[14:31:55]<mstenta[m]>sorry a bit distracted right now...
[14:32:35]<skipper_is[m]>No worries :)
[14:32:36]<skipper_is[m]>I'm just running and rolling back hoping that one time it'll get through
[15:04:35]<skipper_is[m]>Nope, no idea....
[15:06:15]<skipper_is[m]>Can I add the taxonomy manually (urgh)? Or will the ids need to match?
[15:32:15]<mstenta[m]>Hey skipper_is sorry it's afternoon time here picking up kids and such
[15:32:38]<mstenta[m]>Trying to think what the problem might be though...
[15:33:23]<skipper_is[m]>It seems that the revisions table is the issue though, as I've tried with the assets, and it is throwing the same error (wrong approach I know, as the dependencies aren't there)
[16:10:50]<mstenta[m]>hmm yea... i've never seen that error before `General error: 1093 You can't specify target table 'taxonomy_term_revision' for update in FROM clause`
[16:11:12]<mstenta[m]>are you using PostgreSQL?
[16:11:47]<mstenta[m]>i'm seeing some reports of that error but they seem to be mysql specific, eg: https://stackoverflow.com/questions/4429319/you-cant-specify-target-tabl...
[16:12:08]<skipper_is[m]>Went back to MySQL after the PostGreSQL issues years ago
[16:12:28]<mstenta[m]>WHAT! skipper_is you're one of the reasons I went with PostgreSQL! 😂
[16:12:35]<skipper_is[m]>Ha
[16:12:36]<mstenta[m]>lol
[16:12:47]<skipper_is[m]>I switched over to MySQL just because of all the issues in FarmOS1
[16:12:49]<mstenta[m]>well i guess now you've discovered a MySQL bug
[16:12:59]<mstenta[m]>congratulations
[16:13:00]<mstenta[m]>:-P
[16:13:02]<skipper_is[m]>That's my speciality
[16:13:14]<mstenta[m]>hahaha
[16:13:29]<skipper_is[m]>I think PostGreSQL is still running, I'll try it on that
[16:13:42]<mstenta[m]>so here's where that query is generated, if you want to try to fix it: https://github.com/farmOS/farmOS/blob/bd6499ecb52c52952c561f4017cf04a008...
[16:13:54]<mstenta[m]>it's part of farmOS code, so definitely a bug on us
[16:14:06]<mstenta[m]>i never tested migrations into mysql
[16:14:12]<skipper_is[m]>I am just going to switch over to PostGreSQL again I guess...
[16:14:16]<mstenta[m]>🤦
[16:14:38]<mstenta[m]>haha ok yes that's probably a good idea anyway
[16:15:02]<skipper_is[m]>Was nice having it all on the same db, but it's still running in the background
[16:16:25]<mstenta[m]>i suppose i should fix this mysql bug regardless...
[16:16:35]<skipper_is[m]>maybe I'll hang on until then....
[16:16:59]<skipper_is[m]>PostGreSQL is playing games and not making me a new db for FarmOS2..
[16:17:08]<skipper_is[m]>I think it's cranky I haven't opened it in 2 years
[16:23:58]<mstenta[m]>i honestly don't understand what's wrong with that query...
[16:24:11]<skipper_is[m]>Something about the inner join joining with itself?
[16:24:17]<mstenta[m]>i might not have a chance to debug this... but would you open a bug report?
[16:24:21]<mstenta[m]>so i don't forget
[16:24:21]<skipper_is[m]>https://stackoverflow.com/questions/45494/mysql-error-1093-cant-specify-...
[16:25:32]<mstenta[m]>it makes me wonder if other queries in the migration code are also affected, eg: https://github.com/farmOS/farmOS/blob/bd6499ecb52c52952c561f4017cf04a008...
[16:25:47]<mstenta[m]>(that one, though, only runs if you are rolling back...)
[16:26:38]<skipper_is[m]>Quite possibly, but I only got so far. It would complete the first lot of migrations though, weirdly
[16:26:42]<skipper_is[m]>So the animal taxonomy was all imported, but it still failed
[16:26:51]<mstenta[m]>fwiw, if you just comment out this line it should allow you to migrate: https://github.com/farmOS/farmOS/blob/bd6499ecb52c52952c561f4017cf04a008...
[16:27:19]<mstenta[m]>the only downside is you won't get the nifty revision messages on your entities that says "Migrated on [date]"
[16:28:23]<skipper_is[m]>I can probably live with that
[16:28:32]<skipper_is[m]>Got to figure out how to bind that volume now too...
[16:28:46]<mstenta[m]>oh to make the edit?
[16:29:06]<skipper_is[m]>yea
[16:29:30]<mstenta[m]>you can just edit directly in the container...
[16:29:30]<mstenta[m]>`docker exec ... -it [container-name] bash`
[16:29:36]<mstenta[m]>that will drop you into a bash shell inside the container
[16:29:40]<mstenta[m]>then you can use `vi`
[16:29:43]<skipper_is[m]>Oooh
[16:29:56]<skipper_is[m]>That is handy
[16:34:48]<skipper_is[m]>vi?
[16:35:29]<mstenta[m]>https://en.wikipedia.org/wiki/Vim_(text_editor)
[16:35:36]<skipper_is[m]>Ohh, like Nano
[16:35:55]<mstenta[m]>yea - if you're coming from nano/emacs it might be a bit tricky
[16:36:07]<mstenta[m]>but you can `apt-get install nano` if you want (i believe)
[16:36:56]<mstenta[m]>just note: any changes you make inside the container (like editing this file, or installing `nano`) will be LOST as soon as you destroy the container... but that's fine in this case, because you're just making a temporary change to fix your migration
[16:37:13]<skipper_is[m]>Yea, perfect
[16:37:30]<mstenta[m]>(unless of course you make changes in your mounted volumes... in which case it WILL persist)
[16:39:21]<skipper_is[m]>Alright, here goes V2
[16:40:38]<skipper_is[m]>Oh, I had another error message that was an asset failing to import, as Notes.0.format= was set to an invalid value
[16:40:46]<skipper_is[m]>Only on 2 animals
[16:41:25]<skipper_is[m]>I thought maybe it was the notes/description setting being something weird, but it was farm_format
[16:44:15]<skipper_is[m]>[error] Migration failed with source plugin exception: SQLSTATE[23000]: Integrity constraint violation: 1052 Column &#039;id&#039; in on clause is ambiguous: SELECT DISTINCT &quot;fa&quot;.*, &quot;fs&quot;.&quot;type&quot; AS &quot;sensor_type&quot;, &quot;fs&quot;.&quot;settings&quot; AS &quot;sensor_settings&quot;... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/3eb0b0a97c...)
[16:44:19]<skipper_is[m]>Another one for you....
[16:45:41]<skipper_is[m]>Failed on the sensor_listeners this time
[16:54:03]<mstenta[m]>> Oh, I had another error message that was an asset failing to import, as Notes.0.format= was set to an invalid value
[16:54:03]<mstenta[m]>oh did you figure this one out? or not?
[16:56:34]<skipper_is[m]>I think it was set to plain_text
[16:56:56]<mstenta[m]>oh ok - did you change it in the v1 database to `farm_format`?
[16:59:46]<skipper_is[m]>Yea
[16:59:56]<skipper_is[m]>It went through perfectly
[17:00:04]<skipper_is[m]>Just sensors that snagged now
[17:00:49]<mstenta[m]>ok great
[17:00:58]<mstenta[m]>i wonder if that's a mysql-specific query issue too
[17:01:23]<mstenta[m]>(so bizarre because usually postgresql is the "stricter" one...)
[17:01:53]<mstenta[m]>i believe this is the code you're snagging on: https://github.com/farmOS/farmOS/blob/2.x/modules/core/migrate/src/Plugi...
[17:02:24]<mstenta[m]>`Column id in on clause is ambiguous`
[17:04:30]<mstenta[m]>i don't understand why though
[17:05:25]<skipper_is[m]> `$query->join('farm_sensor', 'fs', 'fa.id = fs.id');` This?
[17:05:44]<mstenta[m]>ah actually... yea that's what i thought... but looking at the error more it looks like there's another join happening...
[17:06:13]<mstenta[m]>`LEFT OUTER JOIN farm2_vhf.migrate_map_farm_migrate_asset_sensor &quot;map&quot; ON id = map.sourceid1`
[17:06:35]<skipper_is[m]>And id is ambiguous
[17:06:46]<mstenta[m]>yea...
[17:07:34]<mstenta[m]>ah... on the trail...
[17:08:36]<mstenta[m]>wait nevermind :-(
[17:09:03]<mstenta[m]>i think that join might be added deeper down by the Drupal Migrate module itself (??)
[17:09:29]<mstenta[m]>and it probably isn't aliasing the table... but we are adding our own join WITH aliases...
[17:11:26]<mstenta[m]>ok i'm confused... i'm not actually sure where this query is coming from
[17:12:43]<skipper_is[m]>ACTION uploaded an image: (7KiB) < https://libera.ems.host/_matrix/media/r0/download/matrix.org/eckXoZooYhj... >
[17:12:50]<skipper_is[m]>I imagine this being a string of expletives
[17:13:06]<mstenta[m]>:-P
[17:13:24]<mstenta[m]>well i can only assume this TOO is a mysql issue...
[17:14:02]<mstenta[m]>but wait hold on........ the old database IS mysql...
[17:14:08]<mstenta[m]>(right??)
[17:14:24]<skipper_is[m]>They both are
[17:14:38]<mstenta[m]>ok - so then maybe it's not a mysql syntax issue...
[17:15:05]<mstenta[m]>because that query is being run on the v1 database... and we DID test that because all v1 databases are mysql
[17:15:50]<mstenta[m]>(i'd still be curious to see if a mysql->postgresql works fine for you...)
[17:16:18]<skipper_is[m]>Yea, I'll give that one a spin tomorrow, just trying to iron out my custom area type module before that
[17:16:39]<skipper_is[m]>`The "pasture" plugin does not exist. Valid plugin IDs for Drupal\farm_entity\AssetTypeManager are: animal, compost, equipment, group, land, material, plant, seed, sensor, structure, water (/opt/drupal/web/core/lib/Drupal/Component/Plugin/Discovery/DiscoveryTrait.php:53)`
[17:16:40]<mstenta[m]>cool - yea i'd definitely recommend migrating to postgresql if at all possible
[17:16:43]<skipper_is[m]>It's now going swimmingly
[17:16:47]<skipper_is[m]>*not
[17:16:56]<mstenta[m]>ok THAT i can help with :-)
[17:17:06]<mstenta[m]>do you have the code on github to look at?
[17:17:34]<mstenta[m]>oh wait... are you creating a new asset type?
[17:17:40]<skipper_is[m]>No
[17:17:42]<skipper_is[m]>New land type
[17:17:51]<mstenta[m]>what is your `config/install/..` file named?
[17:18:28]<mstenta[m]>https://farmos.org/development/module/fields/#land-type
[17:18:28]<skipper_is[m]>farm_land.land_type.garden.yml
[17:18:29]<mstenta[m]>ps we have some docs for this exact thing... but they are a bit hidden
[17:18:30]<skipper_is[m]>https://github.com/Skipper-is/farm_vhffieldtypes/blob/master/FarmOS2/far...
[17:18:35]<mstenta[m]>ok what's "pasture"?
[17:18:45]<skipper_is[m]>one of the land types
[17:18:56]<mstenta[m]>ok what is that file named?
[17:19:13]<skipper_is[m]>migrate_plus.migration.farm_migrate_area_vhf.yml
[17:19:13]<mstenta[m]>`farm_land.land_type.pasture?.yml`
[17:19:16]<mstenta[m]>s/?././, s/`/`?/
[17:19:24]<skipper_is[m]>Oh
[17:19:28]<skipper_is[m]>Yea
[17:19:39]<mstenta[m]>are you SURE it's named that? copy and paste?
[17:19:39]<skipper_is[m]>farm_land.land_type.pasture.yml
[17:19:46]<mstenta[m]>because it sounds like it's trying to create an asset type
[17:19:51]<skipper_is[m]>That is copied and pasted from github
[17:20:08]<mstenta[m]>`Valid plugin IDs for Drupal\farm_entity\AssetTypeManager are: animal, compost, equipment, group, land, material, plant, seed, sensor, structure, water`
[17:20:09]<mstenta[m]>`AssetTypeManager`
[17:20:14]<mstenta[m]> * "`AssetTypeManager`"
[17:21:27]<mstenta[m]>oh ... you said you're not sure if the volume mount is working?
[17:21:32]<skipper_is[m]>Which I assumed it was refering to this: process:... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/be4916c85d...)
[17:21:40]<mstenta[m]>so the code on github might NOT be what's running in your container?
[17:21:53]<skipper_is[m]>I just pushed it now from my container
[17:22:06]<skipper_is[m]>(well, from my -v volume
[17:22:11]<mstenta[m]>oh wait... sorry... what's actually going wrong? CREATING the land types? or MIGRATING them?
[17:22:12]<mstenta[m]>i was assuming "creating"
[17:22:12]<skipper_is[m]>Migrating
[17:22:17]<mstenta[m]>ahh oh sorry
[17:22:28]<skipper_is[m]>Creating seems to be ok, I can see it on the list of land types
[17:22:35]<mstenta[m]>ok ok gotcha
[17:22:40]<mstenta[m]>sorry i was going down the wrong path :-)
[17:22:43]<mstenta[m]>one sec...
[17:26:33]<mstenta[m]>> ok THAT i can help with :-)
[17:26:33]<mstenta[m]>i may have been overzealous
[17:26:44]<skipper_is[m]>Oh :(
[17:27:43]<mstenta[m]>your migration yml LOOKS good
[17:27:53]<skipper_is[m]>From the forest example you sent me, I've only changed the area_types at the top/middle, and where it said "forest_type" I assumed it meant land_type
[17:27:54]<mstenta[m]>OH WAIT! question: did you install the module and then make changes to the YML?
[17:28:00]<skipper_is[m]>I did....
[17:28:04]<mstenta[m]>AHHH HAAA
[17:28:06]<mstenta[m]>:-)
[17:28:06]<skipper_is[m]>I cleared CC
[17:28:17]<skipper_is[m]>Drupal 8 doesn't work like that does it?
[17:28:19]<mstenta[m]>ahhhh yeaaaa you would THINK that would make a difference... it does not.
[17:28:30]<mstenta[m]>in this case, "config" only gets created on initial module install
[17:28:43]<mstenta[m]>so it only reads that YML file on first install
[17:28:44]<skipper_is[m]>ah
[17:28:51]<mstenta[m]>ok ok,.... here's what to do...
[17:29:10]<mstenta[m]>drush en config_update_ui
[17:29:10]<skipper_is[m]>Uninstall and reinstall?
[17:29:15]<skipper_is[m]>Ooh ok
[17:29:16]<mstenta[m]>or that
[17:29:42]<mstenta[m]>you could just do that... i think in this case that would be harmless
[17:30:06]<mstenta[m]>i was going to show you the "config comparison UI" :-)
[17:30:08]<skipper_is[m]>Not good with more complex modules?
[17:30:18]<skipper_is[m]>I'll go with config comparison
[17:30:47]<mstenta[m]>well... i was just thinking... if your module provided an asset type (for instance), and you had migrated assets, then uninstalling that module wouldn't be possible
[17:31:04]<mstenta[m]>but in this case you're just dealing with land types, so that wouldn't matter i don't think
[17:31:14]<mstenta[m]>and they haven't been migrated (that's the whole point haha)
[17:31:26]<skipper_is[m]>So I've enabled config_update_ui
[17:31:59]<mstenta[m]>in the UI go to Administration > Configuration > Development > Configuration Synchronization
[17:32:25]<skipper_is[m]>There are no changes?
[17:32:44]<mstenta[m]>Then click the "Updates Report" tab - and click the "Everything" button
[17:33:05]<mstenta[m]>That will show a summary of ALL config that doesn't match what's in modules (essentially)
[17:33:17]<mstenta[m]>search for "vhf"
[17:33:23]<skipper_is[m]>Ooh look at that
[17:33:24]<mstenta[m]>it should show your migration config - revert that
[17:33:41]<mstenta[m]>"revert" will basically revert it to the module YML
[17:34:26]<mstenta[m]>just to explain: "config" is used for a LOT of things in Drupal - and basically Drupal maintains it in the database... so when a module is installed it reads from `config/install` and creates all those as "config entities" in Drupal
[17:34:29]<skipper_is[m]>I don't have the migration for the VHF area types
[17:34:59]<mstenta[m]>this `config_update_ui` module is an add-on module that helps to visualize the differences
[17:35:01]<mstenta[m]>oh? you don't see that config item in the "Everything" report?
[17:35:12]<skipper_is[m]>I do not...
[17:35:31]<skipper_is[m]>If they didn't exist when it was installed, would they still be there?
[17:35:38]<mstenta[m]>uhhh... but you were able to run the migration?
[17:35:58]<mstenta[m]>(i assume you did - to get the error)
[17:36:07]<skipper_is[m]>Yea, the migration option is there
[17:36:28]<mstenta[m]>alright - well if it doesn't appear in the "Everything" report, that suggests that it's NOT overridden
[17:36:36]<skipper_is[m]>(and I checked it was being updated by adding a V2 to the title)
[17:36:40]<mstenta[m]>and the YML in the file IS the config being used
[17:37:08]<mstenta[m]>> If they didn't exist when it was installed, would they still be there?
[17:37:08]<mstenta[m]>they would show under "missing config" i believe
[17:37:21]<mstenta[m]>but the fact that you ran the migration means it's not missing
[17:37:48]<mstenta[m]>and the fact it's not showing under "changed config" means that it matches the module
[17:37:56]<mstenta[m]>did you uninstall and reinstall? after that error occurred?
[17:38:01]<skipper_is[m]>Giving that a try now
[17:39:26]<mstenta[m]>ok - worth a shot
[17:40:04]<mstenta[m]>i would be curious to have you `bash` into the container, navigate to your module, and confirm that the YML matches what's in GitHub
[17:40:27]<mstenta[m]>eg: if something funky happened with the volume mount, and the code was NOT updated... that could explain all this
[17:40:48]<mstenta[m]>and `bash`ing into the container to look at what's *actually* in there would tell you that
[17:40:57]<skipper_is[m]>Yea, though when I added V2 to the title, it appeared in the migration window
[17:41:04]<mstenta[m]>oh ok that's what you meant
[17:41:09]<mstenta[m]>well that's good
[17:41:31]<mstenta[m]>i still suspect overridden config...
[17:41:57]<mstenta[m]>but reinstalling the module should resolve that
[17:42:15]<mstenta[m]>ooh wait... you might run into an issue when you try to re-install...
[17:42:36]<mstenta[m]>your module needs to be in this list: https://github.com/farmOS/farmOS/blob/bd6499ecb52c52952c561f4017cf04a008...
[17:42:49]<skipper_is[m]>The bash version matches
[17:43:14]<skipper_is[m]>oh that list, one second
[17:43:28]<mstenta[m]>unfortunately i don't think that config is going to be deleted when your module gets uninstalled
[17:43:46]<mstenta[m]>so when you try to reinstall it's going to complain that it already exists
[17:44:01]<mstenta[m]>i have to sign off soon for dinner...
[17:44:33]<mstenta[m]>here are some helpful drush commands:
[17:44:51]<mstenta[m]>`drush config:revert migrate_plus.migration.farm_migrate_area_structure`
[17:45:03]<mstenta[m]>^ will revert the config to whatever is in your module
[17:45:28]<mstenta[m]>`drush config:delete ...` will delete it
[17:45:38]<skipper_is[m]>structure?
[17:45:38]<mstenta[m]>(in case you run into the issue i just described, where you can't reinstall the module)
[17:45:47]<mstenta[m]>oh oops sorry
[17:45:51]<mstenta[m]>copied the wrong name
[17:46:02]<mstenta[m]>`migrate_plus.migration.farm_migrate_area_vhf`
[17:46:24]<mstenta[m]>s/farm_migrate_area_structure/farm_migrate_area_vhf/
[17:46:50]<skipper_is[m]>oh, in the sites modules folder
[17:47:29]<skipper_is[m]>That all matches
[18:10:06]<skipper_is[m]>Went for the complete wipe approach... Gone for PostGreSQL
[18:42:54]<mstenta[m]>oh nice :-)
[18:43:10]<skipper_is[m]>For the sensors, no graphs anymore?
[18:43:21]<mstenta[m]>no... not yet :-(
[18:43:26]<skipper_is[m]>Ah ok, but planned?
[18:43:39]<skipper_is[m]>As much as I like looking at a sheet of data :)
[18:44:03]<skipper_is[m]>It is late o' clock... But I really want to see this migration done
[18:44:42]<mstenta[m]>yea just one of the things that didn't make it to v2 yet
[18:44:42]<mstenta[m]>https://www.drupal.org/project/farm/issues/3203015
[18:44:43]<skipper_is[m]>Doing the 2656 logs now..
[18:44:58]<mstenta[m]>oh man yea it's late for me it must be very late for you
[18:45:15]<skipper_is[m]>23:45...
[18:45:45]<skipper_is[m]>I've got my goat shed live camera on as well, and I'm really hoping I don't see one giving birth as I don't want to have to deal with that tonight...
[18:46:00]<mstenta[m]>haha
[18:46:12]<skipper_is[m]>https://fb.watch/bnQAP_uJ_p/ If anyone wants to see some goats...
[18:46:42]<mstenta[m]>i came across this the other day - ever heard of it? https://github.com/ZoneMinder/ZoneMinder
[18:47:10]<skipper_is[m]>Oh nice!
[18:47:41]<skipper_is[m]>Can it do some nice object recognition too? That'd be cool
[18:47:51]<mstenta[m]>https://zoneminder.com/
[18:48:18]<mstenta[m]>> Amazing 3rd party integrations - ALPR, Object/Person Detection, Event Blending and more
[18:48:26]<mstenta[m]>maybe!
[18:48:33]<skipper_is[m]>Very cool
[18:48:53]<mstenta[m]>oh fyi, re sensor graphs, might be something you can use jupyterlite for!
[18:49:05]<mstenta[m]>https://farmos.discourse.group/t/share-your-jupyterlite-examples/1134
[18:49:23]<skipper_is[m]>Oh nice!
[18:49:25]<mstenta[m]>at least to mock something up
[18:49:31]<skipper_is[m]>Right, I'm going to bed!
[18:49:46]<mstenta[m]>gnight!
[18:49:51]<skipper_is[m]>Goodnight and thank you for all your help!